Я приобрел антисиповую учетную запись и установил звездочку (скажем, PBX-A) для регистрации. Работало нормально. Однако я попытался сделать это с другой звездочкой (PBX-B). На этот раз не повезло. PBX-A и PBX-B находятся в одной локальной сети за NAT.
Вот результат нескольких команд на PBX-B
localhost*CLI> sip show registry
Host dnsmgr Username Refresh State Reg.Time
sip.antisip.com:5060 N username 120 Request Sent
1 SIP registrations.
localhost*CLI> sip show peers
Name/username Host Dyn Forcerport Comedia ACL Port Status Description
username/username 91.121.78.130 Yes Yes 5060 UNREACHABLE
Я сделал tcpdump, чтобы проверить сигнал регистрации. PBX-B отправляет сигнал на sip-сервер, но без возврата.
[root@localhost sysconfig]# tcpdump port 5060
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
16:15:00.074161 IP 192.168.1.207.sip > sip.antisip.com.sip: SIP, length: 390
16:15:04.074820 IP 192.168.1.207.sip > sip.antisip.com.sip: SIP, length: 390
16:15:06.438076 IP 192.168.1.207.sip > sip.antisip.com.sip: SIP, length: 549
Я могу пинговать sip-сервер.
[root@localhost sysconfig]# ping sip.antisip.com
PING sip.antisip.com (91.121.78.130) 56(84) bytes of data.
64 bytes from sip.antisip.com (91.121.78.130): icmp_seq=1 ttl=47 time=169 ms
64 bytes from sip.antisip.com (91.121.78.130): icmp_seq=2 ttl=47 time=169 ms
Я проверяю, работает ли он, перенаправляя порты UDP 5060,10000-2000, но все равно не повезло. Кстати, PBX-A нормально работает без переадресации портов. Затем я заметил, что PBX-B включает iptables, поэтому я проверял конфигурацию межсетевого экрана и включил несколько портов, например:
[root@localhost sysconfig]# service iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpts:10000:20000
2 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:5060
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Возможно, это не работает, т.к. изначально весь ВХОД был ПРИНЯТ ... И, конечно, это ничего не меняет.
Я использую тот же файл conf в / etc / asterisk для локальных АТС. Они находятся в одной сети. Так что я могу только придумать настройку межсетевого экрана PBX-B. Но все же должна быть другая проблема. Я очень признателен, если вы дадите мне совет по этому поводу.
Вот настройка sip.conf.
[general]
register => username:pass@sip.antisip.com/username
[vivinavi]
nat=yes
insecure=port,invite
canreinvite=no
username=username
host=sip.antisip.com
fromdomain=sip.antisip.com
fromuser=username
type=friend
context=antisip
secret=pass
qualify=yes
Ниже приведены версии программного обеспечения обеих коробок. PBX-A: Asterisk 11.10.2, SHMZ release 6.5 (FreePBX 2.11.0.38) PBX-B: Asterisk 11.7.0, Ubuntu 14.04.1 LTS