Столкнулся с такой проблемой:
В iptables закрыл порт 5060, открыл другой 50600.
| Код: |
| -A PREROUTING -d XX.XX.XX.XX/32 -p udp -m udp --dport 50600 -j DNAT --to-destination XX.XX.XX.XX:5060 -A INPUT -m conntrack --ctstate DNAT -j ACCEPT -A INPUT -d XX.XX.XX.XX/32 -p udp -m udp --dport 5060 -j DROP |
при подключении к порту 50600 все работает нормально регистрация проходит, вызов идет, голос есть но при нажатии на сброс звонок не заканчивается.
Записал дамп из него видно, что сервер шлет INVITE (Contact: ) и пакеты начинают идти на порт 5060 который закрыт.
Кто-нибудь знает как это исправить?
Заранее благодарен. [/code]
Хотите маскировать:
Всех внешних клиентов с динамическими адресами на TLS - TCP 5061
Всех остальных (провайдеры) открываете по IP адресам порт UDP 5060
_________________
платный суппорт по мере возможностей
Большое спасибо.
Так что вопрос еще актуален.
Как сделать так что бы в INVITE порт не менялся?
Помечаем ip как ext_sip
и разрешаем с этим именем пакеты на все порты.
iptables -t mangle -A PREROUTING -p udp --dport 50600 -m recent --set --name ext_sip
iptables -A SIP -m recent --rcheck --seconds 7200 --name ext_sip -j ACCEPT