Первым вариантом должен быть SIP Express Router или SER. Сайт будет отличным местом для начала.В противном случае (по какой-то причине вы не можете установить его), вам, вероятно, придется перейти на старое обучение.
Проблема, с которой вы, вероятно, сталкиваетесь, заключается в том, что входящие соединения с телефоном исходят извнесеть, поэтому нет порта "сохранен" для входящего трафика.Вы можете преодолеть некоторые из них, регулярно регистрируясь, или вы можете настроить свой брандмауэр и конфигурации NAT для передачи трафика от вашего провайдера на конкретный телефон, но это оставляет вас только с одним телефоном, устанавливающим соединение.Вам необходимо настроить своего вышестоящего провайдера так, чтобы он отправлял соединения каждого телефона через отдельный порт и связывал этот порт с определенным IP-адресом и портом.Например:
rdr rtk0 123.123.123.123/32 port 5061 -> 192.168.100.11 port 5061 udp
rdr rtk0 123.123.123.123/32 port 5062 -> 192.168.100.12 port 5062 udp
etc.
, где 123.123.123.123 - адрес хоста SIP вашего провайдера.Настройте свои телефоны таким образом, чтобы они общались через порт 5060 + также с некоторым смещением.
Даже если это поможет вам с вашими подключениями, вы все равно можете столкнуться с проблемами RTP.STUN поможет в этом, но вам может понадобиться ограничить SIP-телефоны, чтобы их RTP-порты были уникальными (чтобы трафик с одного телефона внезапно не начал появляться на другом).Диапазоны портов для SIP и RTP смехотворно огромны - вы можете ограничить свои телефоны, скажем, до 10 на телефон и покрыть большую площадь без особых проблем.Это выглядело бы примерно так:
rdr rtk0 123.123.123.123/32 port 10000-10009 -> 192.168.100.11 port 10000 udp
rdr rtk0 123.123.123.123/32 port 10010-10019 -> 192.168.100.12 port 10010 udp
Установите диапазоны RTP вашего телефона на их уникальные диапазоны, и вы должны быть относительно хороши.
Обратите внимание, что использование адреса сервера SIP в RDRделает это гораздо менее рискованным, чем перенаправление общего 0.0.0.0/0 адреса.