Странная проблема с register=>
Доброго времени суток!
Почему-то * не может осуществить более 2-х однонвременных регистраций на внешних сип-серверах.
Ситуация следующая:
- есть три записи "register=>", к трём разным серверам;
- если закомментировать любую одну из них (оставить две) - обе регистрации проходят (и внешние тестовые звонки, соответственно, тоже);
- по одной и по две одновременно - работают в любых сочетаниях;
- * находится за НАТ-ом (на гейте стоит opensips+rtpproxy, и всё это прекрасно работает на входящие звонки - но регистрации делаются напрямую, без проксирования, через opensips сигнализация не проходит в данном случае);
- если включить все три регистрации - по всем * думает что получает таймаут;
- при этом wireshark показывает, что ответы от всех серверов *-у приходят ( REGISTER ->, 100 Trying <-, 200 OK), но эти ответы воспринимаются только если регистраций не больше двух - а так - wireshark показывает, а в sip debug-е не видно;
Довольно странно ведёт себя сам * после попадания в такую ситуацию:
- изменяем sip.conf, добавляем третью регистрацию, делаем sip reload - отладочные сообщения выводятся
- начинаются таймауты, редактируем sip.conf, выключая регистрацию, делаем sip reload - выдаётся подсказка, и никаких других сообщений;
- делаем exit, потом подключаемся обратно - отладочные сообщения появляются (иногда - так и не появляются);
- далее * не реагирует уже ни на sip reload, ни на restart now (?!?), помогает только kiallall -9 asterisk
Куда и кого копать?
PS. Пробовал на 1.4.7, 1.4.25, 1.4.29 - одинаково всё.
|