Вот , кто-то наконец-то показал наглядно , что SIP циской прекрасно контролится.
zzuz ( 2014-09-21 13:18:34 +0400 )редактироватьДобрый день.
Тема старая, рассмотренная со всех сторон, но я все равно нашел в ней свои "грабли". В процессе выяснения даже пришел к выводу почему так происходит, но не могу понять как это исправить. В общем суть проблемы:
Asterisk находится за NAT, провайдер на котором регится Asterisk на белом IP. Исходящая связь с Asteriska работает нормально, а вот при входящей проблема, звонок рвется через 6 секунд (после шести ретрансляций Asteriskом сообщения 200 OK/SDP). Эти 6 секунд можно вполне нормально разговаривать.
Как я уже говорил после установления соединения Asterisk 6 раз посылает сообщение 200 OK/SDP и не получив ответа рвет соединение, но вышестоящая АТС всетаки отвечает ASK на 200 OK/SDP но почему то оно никогда не доходит до Asteriska.
Собственно конфиг и трейсы в прикрепленном файле.
Ссылка на Яндекс Диске. https://yadi.sk/d/_W5FxAAQbTTK8
Файлы достаточно большие не хочу засорять форум.
Заранее благодарен за помощь. Я уже совсем в тупик зашел.
Ошибка происходит из-за sip-alg который по умолчанию работает на роутере cisco. Для отключения наберите
enable
conf t
no ip nat service sip udp port 5060
Вот , кто-то наконец-то показал наглядно , что SIP циской прекрасно контролится.
zzuz ( 2014-09-21 13:18:34 +0400 )редактироватьВозможно поможет команда traffic-export на киске.
И вот здесь еще почитай
циска мега старая, 871 модель, такой команды нет:(((
Только если зеркалить
StereoRu ( 2014-09-13 18:54:07 +0400 )редактироватьв астере - rtp set debug on - посмотрите куда астер шлет rtp пакеты
awsswa ( 2014-09-13 20:56:30 +0400 )редактироватьДа причем тут RTP?
Звук отлично проходит, проброс не нужен. Эти 6 секунд что удается поговорить слышемость отличная.
А шлет он их по нужному адресу
Got RTP packet from YYYY.YYY.YYY.130:28238 (type 00, seq 032765, ts 2075968927, len 000160)
Sent RTP packet to YYY.YYY.YYY.130:28238 (type 00, seq 042600, ts 046080, len 000160)
StereoRu ( 2014-09-14 13:23:26 +0400 )редактироватьколлеги, есть идея.
Думается мне что дело в вышестоящей АТС, но для проверки надо зарегистрироваться и прозвониться с другой АТС, а ее нет, также не получится softphone зарегить, т.к. для чистоты эксперимента нужен белый IP а его нет.
Может ктонибудь сможет мне помочь дав позвонить через свою атс которая на белом IP стоит???
пишите в почту demin.ds@mail.ru
StereoRu ( 2014-09-14 13:43:19 +0400 )редактироватьПодключитесь к любому публичному провайдеру на общих основаниях и пробуйте (например, к Comtube.ru)
yks ( 2014-09-15 09:31:53 +0400 )редактироватьТипичная проблема..
звонок рвется через 6 секунд (после шести ретрансляций Asteriskом сообщения 200 OK/SDP).
Нужно:
установить externip= и localnet= в general у sip.conf
у пира поставить nat=yes и directmedia=no
Всем привет!
Коллеги прошу прощения, задержался я с результатами моих "деяний"... Всего на пол года, но лучше поздно чем никогда :-)
Вобщем решение проблемы выглядело банально, в качестве вышестоящей АТС использовался Eltex SMG 1016M. На нем то и была проблема, в tcpdump SMG был видел этот злополучный ASK на 200 OK/SDP от астера, но с интерфейса он не улетал!!! Производители отказывались в это верить, но после недели споров всетаки решили подебажить свою прошивку и нашелся баг.
В итоге перепрошивка вышестоящей АТС решила все вопросы, а я стал ярым противником SIP за NAT :-)
StereoRu ( 2015-02-26 15:38:47 +0400 )редактироватьSIP за NAT думаю тут совсем непричем - просто есть Элтекс)))
Zavr2008 ( 2015-02-27 19:31:19 +0400 )редактироватьхотя в последнее время вроде (тьфу-тьфу) поисправились, а то у нас есть SIP-транк от одного из местных провов, там тоже они на дешивизну "софтсвич-всё-в-одном" клюнули и у всех регистрации дохли раз в неделю..
Zavr2008 ( 2015-02-27 19:33:25 +0400 )редактироватьЗадан: 2014-09-13 15:28:30 +0400
Просмотрен: 1,612 раз
Обновлен: Sep 21 '14
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
А у вас сколько сетевых интерфейсов?
litnimax ( 2014-09-13 15:30:44 +0400 )редактироватьна астере один.
StereoRu ( 2014-09-13 15:39:06 +0400 )редактироватьNAT твой? Можешь на нем ip_contrack посмотреть?
litnimax ( 2014-09-13 15:48:19 +0400 )редактироватьУ меня в качестве НАТ используется Циска. Я тоже сначала думал, что дело в маршрутизации, но тогда бы не проходили другие пакеты... Собственно вот вырезка из конфига Циски. Вроде ошибаться негде.
https://yadi.sk/i/PZWhTYYabTUqX
StereoRu ( 2014-09-13 16:09:49 +0400 )редактироватьСорри что логи не смотрю а вопросы задаю. На Астериске если tcpdump запустить видны пакеты прошедшие через cisco?
litnimax ( 2014-09-13 16:17:12 +0400 )редактироватьконечно, видны пакеты прошедшие из интернета через нат циски и попавшие на астериск
StereoRu ( 2014-09-13 16:21:44 +0400 )редактироватьЗдесь tcpdump на астериске не поможет. Нужно смотреть на самой циске .
zzuz ( 2014-09-13 16:59:28 +0400 )редактироватьясно, давно хотел линуксовый шлюз поставить, видно придется ускорить процесс...
StereoRu ( 2014-09-13 17:16:34 +0400 )редактироватьно вот вопрос, как тогда другие пакеты проходят??
StereoRu ( 2014-09-13 17:17:17 +0400 )редактироватьНадо внимательно смотреть на датаграмму. Понять, почему Asterisk ее не кушает. Не ждет видимо. Порты видимо не те. А дебаг максимальный на sip включал? SIP стек по идее должен выматериться на неопознанную датаграмму.
litnimax ( 2014-09-13 17:46:19 +0400 )редактироватьМожно поставить pjsip, посмотреть разницу...
litnimax ( 2014-09-13 17:46:33 +0400 )редактироватьвопрос: как включить максимальный дебаг SIP?
StereoRu ( 2014-09-13 18:12:17 +0400 )редактироватьПроверить в logger.conf что debug выводится хоть куда-то, далее
core set debug 99
core set verbose 99
sip set debug peer xxxx
Ну и разгребать :-)
litnimax ( 2014-09-13 18:19:44 +0400 )редактироватьа где к конфиге циски проброс портов для RTP ?
https://www.google.ru/search?q=asterisk+cisco+nat+configuration
virus_net ( 2014-09-14 09:02:18 +0400 )редактироватьДа причем тут RTP?
Звук отлично проходит, проброс не нужен. Эти 6 секунд что удается поговорить слышемость отличная.
StereoRu ( 2014-09-14 13:21:47 +0400 )редактировать