Страница 1 из 3
Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 18:14
vgo
Centos 6 64-разрядный, Asterisk 11, установленный за RPM, все за файерволом DLink DFL-260E, снаружи провайдер.
Исходящие звонки проходят криво и без голоса.
Анализ дампа протокола и лога маршрутизатора наводит на мысль, что причина заключается в параметре Allow пакета INVITE,
Asterisk формирует ее с пробелами после запятой, DFL от этого сходит с ума, он любит список, разделенный одними запятыми.
Вопрос: можно ли уговорить Asterisk формировать строку методов без пробелов и, если можно, то как?
Re: Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 18:29
awsswa
ваш d-link не должен даже знать какой там клиент за NAT - его дело пропускать пакеты и роутинг
выключите sip-alg если есть такое на d-link и всё
Re: Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 18:34
vgo
Это, конечно, тоже путь. Если окажется, что другого варианта нет, я пойду по нему.
Но пока DLink довольно хорошо разрешает SIPовские трудности с NAT, вот только первая проблема.
До сих пор у меня SIP из-под NAT ходил именно такими решениями, правда, с другим оборудованием.
Поэтому я не спрашиваю, как настроить преодоление NAT средствами Asterisk'а, я спрашиваю, можно ли добиться от Asterisk'а
строчки без пробелов.
Re: Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 18:35
Glukinho
+1, какого хрена какой-то холопский дэ-линк лезет внутрь сообщений Царственного Астериска Всея Телефонии?!
Re: Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 18:40
ded
Установите Астериск 1.8.32.3
Re: Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 18:59
vgo
Спасибо, качаю уже. А какая к нему положена версия DAHDI?
Ой, тогда же ooh323 надо будет компилировать...
Re: Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 19:02
Glukinho
В
RFC 3261 пример метода Allow с пробелами:
20.5 Allow
The Allow header field lists the set of methods supported by the UA
generating the message.
All methods, including ACK and CANCEL, understood by the UA MUST be
included in the list of methods in the Allow header field, when
present. The absence of an Allow header field MUST NOT be
interpreted to mean that the UA sending the message supports no
methods. Rather, it implies that the UA is not providing any
information on what methods it supports.
Supplying an Allow header field in responses to methods other than
OPTIONS reduces the number of messages needed.
Example:
Allow: INVITE, ACK, OPTIONS, CANCEL, BYE
Поэтому ковырять астериск плохая идея, ковырять надо Дэ-Линк на предмет обновления прошивки, где эта проблема устранена.
Re: Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 19:27
vgo
Ищут обычно под фонарем, а не там, где теряли.
В саппорте DLink я сделал соответствующий запрос. Там есть неприятные проблемы с прошивкой, поэтому, возможно,
ковырнуть исходник Астериска проще, чем прошивку DLink менять. Хотя тоже хлопот выше крыши.
В конце концов, в астериске есть настройки на случай "не вполне правильных устройств", почему же бы не быть и такой настройки?
Я просто спросил, есть ли она.
Re: Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 20:35
ded
в астериске есть настройки на случай "отправления не вполне правильных SIP headers не вполне правильным устройствам"
http://asterisk.ru/knowledgebase/Asteri ... sip_header
Re: Убрать пробелы из Allow:
Добавлено: 23 апр 2015, 21:04
Glukinho
Интересно, что вы будете делать, когда следующее за Дэ-Линком оборудование откажется воспринимать заголовок уже без пробелов?)