서로 다른 네트워크에 두 개의 별표 서버가 Fedora에 설정되어 있습니다. 내 목표는 소프트폰(Windows Lite의 경우 IP: 192.168.20.3)에서 다른 네트워크의 Asterisk Server 2(IP: 192.168.10.2)로 전화를 거는 것입니다.
그러나 문제는 NAT 뒤의 두 별표 서버 간의 등록입니다.
별표 서버 1의 NAT IP: 100.100.100.100 별표 서버 2의 NAT IP: 200.200.200.200
건축학:
별표 서버 1의 IAX.conf:
[general]
autokill=yes
externip=100.100.100.100
localnet=192.168.10.0/255.255.255.0
nat=yes
register => zone1:[email protected]
[zone2]
type=friend
host=200.200.200.200
trunk=yes
nat=yes
qualify=yes
secret=welcome
context=incoming_zone2
permit=0.0.0.0/0.0.0.0
별표 서버 2의 IAX.conf:
[general]
externip=200.200.200.200
localnet=192.168.20.0/255.255.255.0
nat=yes
autokill=yes
register => zone1:[email protected]
[zone1]
type=friend
host=100.100.100.100
trunk=yes
nat=yes
qualify=yes
secret=welcome
context=incoming_zone1
permit=0.0.0.0/0.0.0.0
별표 서버 1의 Extensions.conf
[general]
autofallthrough=yes
[phones]
include => internal
include => remote
[internal]
exten => _5XXX,1,NoOp()
exten => _5XXX,n,Playback(hello-world)
exten => _5XXX,n,Dial(SIP/${EXTEN})
exten => _5XXX,n,Hangup()
[remote]
exten => _6XXX,1,NoOp()
exten => _6XXX,n,Playback(hello-world)
exten => _6XXX,n,Dial(IAX2/zone2/${EXTEN})
exten => _6XXX,n,Hangup()
[incoming_zone2]
include => internal
Asterisk 서버 2의 Extensions.conf
[general]
autofallthrough=yes
[phones]
include => internal
include => remote
[internal]
exten => _6XXX,1,NoOp()
exten => _6XXX,n,Playback(hello-world)
exten => _6XXX,n,Dial(SIP/${EXTEN})
exten => _6XXX,n,Hangup()
[remote]
exten => _5XXX,1,NoOp()
exten => _5XXX,n,Playback(hello-world)
exten => _5XXX,n,Dial(IAX2/zone1/${EXTEN})
exten => _5XXX,n,Hangup()
[incoming_zone1]
include => internal
등록 상태: 거부됨
노트:
- 두 네트워크 모두의 PING은 정상입니다.
- 서버의 방화벽이 꺼져 있습니다