В данной статье будут представлены рабочие, испытанные конфигурации sip транков узбекских операторов. К сожалению, практически никто из них не выкладывают никаких инструкций и приходится заморачиваться самостоятельно. Некоторые из этих конфигураций я добыл у коллег, некоторые натыкал сам. Уверен, что кому-то они обязательно сэкономят время и нервы.
Настройка SIP транка Sarkor Telecom
Телефония от Sarkor предоставляется по tasix, что является как огромным плюсом, так и вносит некоторые коррективы в конфигурацию, привычную для подключения без NAT.
Создаём новый транк
Peer details:
host=sip.uz
context=from-trunk
insecure=port,invite
type=peer
username=122XXXX
defaultuser=122XXXX
secret=[пароль из раздела услуги в кабинете]
fromuser=122XXXX
port=5060
fromdomain=sip.uz
nat=auto_force_rport,auto_comedia
На момент написания статьи я знаю только о префиксе 122, по этому указал его в шаблоне как есть. Так или иначе, номер указывается без кода 78.
Для Incoming (входящих) прописывается только строка регистрации:
122XXXX:пароль@sip.uz/122XXXX
К сожалению, на данный момент Sarkor не поддерживает Early Media. По этой причине мне пришлось включить во входящем маршруте Force Answer, дабы звонящий слышал приветствие моей АТС вместо гудков.
Настройка SIP транка UZTELECOM
Данный оператор предоставляет транк через собственный маршрутизируемый транспорт. В некоторых случаях даже в виде тегированного VLAN. Ходят слухи, что кому-то предоставлялась возможность подключения по tasix, но мне в таком счастье отказали. Собственно, по этой же причине я решил сменить оператора. ;)
Прежде, чем приступить к настройке, необходимо выудить у оператора (а с uztelecom это достаточно сложно) информацию: Номер (вводить с кодом или без?), ваш ip, ваш шлюз, адрес софтсвитча (сервера) и возможно vlan (в частности, если подключение сделано по GPON).
Если вам нужен определитель номера (а кому он не нужен?) то нужно отдельно сообщить о намерении его подключить. Он не входит в услугу, а при подключении об этом никогда не предупреждают.
Ещё следует отметить, что разным клиентам Uztelecom может предоставлять услугу через разные софтсвитчи. В связи с этим, данная конфигурация в некотором случае может и не прокатить. Но у меня она работает для нескольких корп. клиентов с разницей лишь в указании номера (с кодом\без). И так, добавляем транк:
type=friend
port=5060
username=XXXXXXX
secret=XXXXXXX
fromuser=XXXXXXX
insecure=port,invite
host=[адрес сервера]
fromdomain= [адрес сервера]
context=from-trunk
disallow=all
allow=alaw&ulaw
Внимание! В зависимости от сотфсвитча, может потребоваться ввести ваш номер либо с кодом либо без него. Самое идиотское в этой ситуации то, что техподдержка зачастую не может ответить точно, в каком виде это должно работать именно в вашем случае. По этому, можно попробовать и так и сяк, пока не заработает. ;)
Со входящими аналогичная история:
ВАШ_НОМЕР:ПАРОЛЬ(обычно тоже номер)@адрес софтсвитча/НОМЕР
Но есть ещё один подводный камень, на который я наступил при подключении телефонии UZTELECOM.
Видимо их сотрудники уверены в том, что их шлюз вы будете использовать как дэфолтный и тогда, конечно, транк будет работать правильно. Но возникает справедливый вопрос: а как же тогда обновлять сервер? В моём случае наивная попытка прописать через их шлюз только маршрут до SIP сервера закончилась тем, что отвалились соединения RTP. Оказалось, что для правильной работы требуется маршрутизация до всех подсетей, на которых как постиранные носочки развешаны из узлы. А подсети у них разлеглись в самых неожиданных диапазонах. Выкручиваться пришлось довольно лихо, указав следующие маршруты:
10.0.0.0/8 via [ip шлюза] dev eth1
172.16.0.0/15 via [ip шлюза] dev eth1
192.168.0.0/16 via [ip шлюза] dev eth1
Однако у некоторых корп. клиентов достаточно было указать маршрут до сервера. Опять таки, тех.поддержка вряд-ли что-то подскажет, по этому проверяйте звук при звонках на другие префиксы, прежде чем закрывать консольку. ;)
Осталось лишь надеяться, что диапазон моей домашней сети не пересекается с какой-нибудь из их АТС, иначе с абонентами за ней поговорить не удастся. ;) Точных данных о том, какие сети они используют мне получить не удалось.
Настройка SIP транка EAST TELECOM
Подключение через маршрутизируемый выделенный транспорт. Если предлагают бросить vlan через LTE – лучше не соглашаться. Опыт показал, что работает такая связка отвратительно.
По аналогии с предыдущими шаблонами, вводим следующее:
host=[адрес сервера]
type=friend
dtmfmode=auto
disallow=all
allow=ulaw&alaw
insecure=no
port=5060
context=from-trunk
qualify=yes
fromdomain= [адрес сервера]
fromuser = [номер без кода]
в строку регистрации входящих:
[номер без кода]@[адрес сервера]/[номер без кода]
Маршрутизация нужна только до сип сервера. Всё остальное бегает через него.
На этом пока всё. :) Возможно, статья будет дополняться новыми шаблонами.