Правило SNAT не применяется для SIP-траффика
Добрый день.
Помогите разобраться с такой проблемой:
Есть FreePBX (192.168.0.150). На нем есть два sip-транка (один на sipnet.ru, второй - на синтеру). В качестве файервола выступает Debian 6(iptables v1.4.8,kernel v2.6.32-5).
Таблица nat:
iptables -L -n -t nat
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpts:10000:20000 to:192.168.0.150
DNAT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:5060 to:192.168.0.150
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
SNAT all -- 192.168.0.0/24 0.0.0.0/0 to:WAN_IP
Проблема в том, что пакеты, идущие в синтеру уходят в сеть с серым адресом - то-есть почему-то не попадают под действие SNAT.
eth2 - внешний интерфейс
Sipnet.ru:
$tcpdump -i eth2 net 212.53.40.0/24 and port 5060 -n
IP WAN_IP.5060 > 212.53.40.40.5060: SIP, length: 371
IP 212.53.40.40.5060 > WAN_IP.5060: SIP, length: 430
IP WAN_IP.5060 > 212.53.40.40.5060: SIP, length: 606
IP 212.53.40.40.5060 > WAN_IP.5060: SIP, length: 541
Синтера:
$tcpdump -i eth2 -n host 93.91.232.222 and port 5060 -n
IP 192.168.0.150.5060 > 93.91.232.222.5060: SIP, length: 532
IP 192.168.0.150.5060 > 93.91.232.222.5060: SIP, length: 532
Что можно с этим сделать? Если для диагностики нужны какие-нть дополнительные данные - пишите в комментариях.