Я использую SIP между двумя подсетями (192.168.3.0/24
и 192.168.30.0/24
) каждый подключен через VPN.
У меня есть сервер звонков на 192.168.3.100
, и два телефона 192.168.30.118 (Ext. 3128)
и 192.168.30.119 (Ext. 3126)
в удаленной подсети.
IP-адрес WAN в подсети, в которой расположен сервер вызовов: 77.0.0.81
.
Существует проблема с качеством обслуживания ISP с пакетами SIP, поэтому вместо того, чтобы телефоны обменивались данными через Интернет, мы хотим, чтобы они обменивались данными через VPN типа «сеть-сеть» (ни в коем случае пакеты SIP и RTP не должны покидать сеть) VPN).
Для пакета приглашения № 10 внутри заголовка, захваченного с помощью WireShark (источник -> пункт назначения), я вижу следующее:
Source: 192.168.3.100
Destination: 192.168.30.119
INVITE sip:3126@192.168.30.119:5062 SIP/2.0
+ Via: SIP/2.0/UDP 77.0.0.81:5060;branch=z9hG4bK1ddb1569;rport
+ From: <sip:3128@77.0.0.81>;tag=as5c1d47d0
+ To: <sip:3126@192.168.30.119:5062>
+ Contact <sip:3128@77.0.0.81:5060>
+ Call-ID: 132184eda2535423432dde2343243252@77.0.0.81:5060
Насколько я понимаю, как только вызов будет установлен, диспетчер вызовов будет передавать разговор между телефонами напрямую с помощью пакетов RTP.
Когда это происходит, пакеты RTP пытаются выйти из подсети rmeote через WAN (а не VPN) и пытаются подключиться к адресу маршрутизатора WAN 77.0.0.81:5060.
Что здесь происходит и почему телефоны не продолжают разговаривать друг с другом по VPN через диспетчер вызовов (192.168.30.119 -> 192.168.3.100 <- 192.168.30.118
) или даже напрямую (192.168.30.119 <-> 192.168.30.118
)?
Почему 77.0.0.81
упомянутый в пакете INVITE?
No. Time Source Destination Protocol Length Info
1 0 192.168.30.119 192.168.3.100 SIP 504 Request: NOTIFY sip:192.168.3.100 |
2 0.219589 192.168.3.100 192.168.30.119 SIP 464 Status: 200 OK |
3 15.006336 192.168.3.100 192.168.30.118 SIP 578 Request: OPTIONS sip:3128@192.168.30.118:5062 |
4 15.041422 192.168.30.118 192.168.3.100 SIP 383 Status: 200 OK |
5 20.043149 192.168.30.118 192.168.3.100 SIP 508 Request: NOTIFY sip:192.168.3.100 |
6 20.263419 192.168.3.100 192.168.30.118 SIP 468 Status: 200 OK |
7 25.212516 192.168.30.118 192.168.3.100 SIP 313 Request: ACK sip:3126@192.168.3.100 |
8 25.299476 192.168.30.118 192.168.3.100 SIP/SDP 1134 Request: INVITE sip:3126@192.168.3.100 |
9 25.522622 192.168.3.100 192.168.30.118 SIP 496 Status: 100 Trying |
10 25.874887 192.168.3.100 192.168.30.119 SIP/SDP 925 Request: INVITE sip:3126@192.168.30.119:5062 |
11 25.876331 192.168.3.100 192.168.30.118 SIP 512 Status: 180 Ringing |
12 25.892092 192.168.30.119 192.168.3.100 SIP 366 Status: 100 Trying |
13 26.01489 192.168.30.119 192.168.3.100 SIP 592 Status: 180 Ringing |
14 26.234984 192.168.3.100 192.168.30.118 SIP 512 Status: 180 Ringing |
15 27.900866 192.168.30.119 192.168.3.100 SIP/SDP 782 Status: 200 OK |
16 28.066616 192.168.30.119 77.0.0.81 RTP 214 "PT=ITU-T G.711 PCMU, SSRC=0x2EB141F2, Seq=7931, Time=0, Mark"
Вы используете
localnet=192.168.3.0/255.255.255.0
localnet=192.168.30.0/255.255.255.0
в sip.conf в общем разделе.
Также вам необходимо убедиться, что нат