Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Проблемы с телефонами yealink [закрыт]

4

Добрый день всем Столкнулся с неизвестной ранее для себя проблемкой. Есть два офиса, соединены туннелем, в офисах разные подсети с маской 24 из разряда 192.168.х.х В одном из офисов стоит настроенный *. Внутри первого офиса все работает, а вот из второго офиса голос не идет. При этом странная ситуация - из первого и из второго офиса я легко хожу на разные устройства, с обеих сторон и в разные стороны они пингуются. И даже телефоны yealink (SIP-T20) - регистрируются! (протокол UDP) на сервере. Но при звонках - голос идет только из первого офиса (где стоит *) во второй. Наоборот - даже намека нет на передачу голосовых UDP пакетов. Стоят маршрутизаторы Mikrotik, ими же и контролирую, что даже намека нет передачи голоса от телефонов в сторону сервера, на фаирволе полностью открыта передача внутри туннелей. На самом сервере вижу только исходящий голосовой трафик (через tcpdump). Телефоны прошивал как русской, так и зарубежными прошивками, проблема остается. Так вот вопрос - наблюдается ли такая же проблема у общества? Еще добавлю - сетевые маски, шлюзы и т.п. указаны нормально, разные сетевые устройства работают как в одной сети, так и в другой в обе стороны. На телефонах во втором офисе тоже на три раза изменено и проверены сетевые настройки. И ведь что странно - регистрация идет на сервере, а голос не идет. Куда еще можно посмотреть? На какие значения настроек самого астериска и настроек внутренних номеров еще раз внимательно посмотреть?

удалить переоткрыть спам изменить тег редактировать

спросил 2013-02-12 00:14:51 +0400

clev Gravatar clev
51 13 2 9

обновил 2013-02-12 00:18:34 +0400

Comments

Ну проблема решилась, так что отвечу сам себе же в этой теме. Вдруг и другим пригодится. В первой сети Asterisk стоит за натом, также имеет внутренний адрес (адрес 192.168.1.x/24), соответственно - чтобы звонить наружу - в настройках прописан внешний IP. Так вот - регистрация идет нормально, т.к. в пакете все IP адреса прописаны нормально. Но когда начинается голос - то телефон видит, что надо слать голосовые пакеты на внешний адрес! И соответственно ничего не долетает. Решение оказалось простое - прописать Вторую внутреннюю сеть в добавок к сети 192.168.1.x/24 добавил сеть 192.168.2.x/24 ! И все, голос пошел в нужном направлении, а именно пошел в туннель, как и надо по маршрутизации! Если у вас FreePBX, Elastix, Trixbox - см. - Asterisk SIP Setting, раздел Local Networks

> надеюсь стоит canreinvite=no nat=yes - Да, эти параметры и были установлены

Так что господа - оказалось, mikrotikи были настроены верно и все остальное. Дело в настройках Asterisk У кого кармы хватает, поставьте + за решение:)

clev ( 2013-02-12 14:49:11 +0400 )редактировать
__________________1111111 
______________11¶¶¶¶¶¶¶¶¶¶¶¶11 
___________1¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶1 
_________¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶ 
_______¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶11 
______¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶1 
____1¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶11 
___1¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶_11 
__1¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶1 
__¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶11111¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶_11
__¶¶¶¶¶¶¶¶¶¶¶¶111¶1____1¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶11
_¶¶¶¶¶¶¶¶¶¶¶1___1_1¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶11
1¶¶¶¶¶¶¶¶¶1____11¶¶¶¶¶_¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶
¶¶¶¶¶¶¶¶¶1____1¶¶¶1____1¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶¶
¶¶¶¶¶¶¶1______111¶¶1____¶¶¶¶¶¶¶¶¶¶1_1¶¶¶¶¶¶¶¶
¶¶¶¶¶1_________11¶1_____¶¶¶¶¶¶111¶¶_1¶¶11¶¶¶¶
1¶¶1_________1¶¶¶_________1111___¶¶1_1¶11¶1 
_____________1¶¶_________11__11__1¶¶_1¶11¶ 
_________________________1¶1__¶¶¶1¶¶__111¶ 
__________________________1¶1__¶¶¶¶¶1__11¶ 
___________________________1¶___1¶¶¶1__¶¶¶ 
__________________1_________¶¶1__1¶1__¶¶¶ 
________________1¶¶¶¶___11_1¶¶¶__1¶___¶¶ 
____11__________¶¶_1¶¶¶¶1__¶¶¶¶__¶¶1_1¶1 
____1¶1________11¶¶1__¶¶¶¶¶¶¶¶¶__1¶1_¶¶ 
______1¶¶¶_____1__1¶¶1___1¶¶¶¶1¶__¶¶_¶¶ 
________¶¶¶____111__111¶¶_________1¶¶¶¶ 
________11¶¶___1111_111¶¶¶1_______1¶¶¶ 
__________1¶¶1_111¶¶¶¶¶¶¶¶¶1_1¶¶¶¶¶¶¶¶ 
_______1____¶¶¶11¶¶¶¶¶¶11¶¶1_1¶¶¶¶¶¶¶1 
¶1_____1_____¶¶¶¶¶¶¶¶¶1__¶¶__1_1¶¶¶¶¶ 
¶¶__________¶¶¶¶¶¶¶11____¶¶1__1¶¶¶¶¶¶ 
_11_______1¶¶¶¶¶¶¶¶11____¶¶¶_1¶¶¶¶¶¶¶ 
__1¶¶____¶¶¶¶¶¶¶¶¶¶¶¶1___1¶¶¶¶¶¶¶¶¶¶¶ 
___¶¶¶_1¶¶¶¶¶¶¶¶¶¶¶¶¶¶____¶¶¶¶¶¶¶¶¶¶¶1 
____1¶1¶¶111¶¶¶¶¶¶¶¶¶¶¶____1¶¶¶¶¶¶¶¶¶1 
______11_1111¶¶¶¶¶¶¶¶¶¶1____¶¶¶¶¶¶¶¶¶¶ 
__________111¶11¶¶¶¶¶¶¶¶1___¶¶¶¶¶¶¶¶¶¶1 
__________1_11¶1¶¶¶¶¶¶¶¶¶¶__1¶¶¶¶¶¶¶¶¶¶ 
____________11¶¶1¶¶¶¶¶¶¶¶¶1__¶¶¶¶¶¶¶¶¶¶¶ 
_____________1_¶11¶¶¶¶¶¶¶¶¶1_¶¶¶¶¶¶¶¶¶¶¶¶

вам говорили же что микротик неверно настроен, не верили.

switch ( 2013-02-12 15:36:07 +0400 )редактировать

3 Ответа

2

Астериск тут ни при чем: неправильно настроили микротик и он пропускает через NAT трафик в другую сеть. Возможно пропускает два раза, потому и не ходит голос. Нужно настроить маршрутизацию.

ссылка удалить спам редактировать

ответил 2013-02-12 08:11:53 +0400

switch Gravatar switch
8334 11 7 92
http://lynks.ru/

Comments

1

Полностью согласен, ни * ни телефоны тут ни при чём. Вопрос настройки маршрутизвторов. Кроме того не все маршрутизаторы правильно завернут голосовой траффик в тунель. Сталкивался с этой проблемой, доточил настройка маршрутизаторов, проблема ушла.

amonra ( 2013-02-12 11:35:04 +0400 )редактировать

Тоже кидал тунель из Африки в Украину, так и не поборол, расшарил порты и пустил трафик по внешке.

Serg ( 2013-02-12 11:39:39 +0400 )редактировать

надо просто разбираться в том что делаете, покупать то оборудование, которое предназначено для поставленных задач. А то купят домашние роутеры и думают что не так. Ну а на микротиках у нас полно сетей, все нормально работает.

switch ( 2013-02-12 11:49:32 +0400 )редактировать

Думаю, что проблема на уровне IP-маршрутизации. В студию информацию о сетях более подробную с адресами и конфиги RouterOS.

rad ( 2013-02-12 13:58:50 +0400 )редактировать
1

надеюсь стоит canreinvite=no nat=yes

ссылка удалить спам редактировать

ответил 2013-02-12 14:05:21 +0400

Vasya Gravatar Vasya
71 1
0

Справедливости ради отмечу что с микротиками тоже иногда попадаются такие глюки что только держись.

Последний случай. У клиента в локалке стоит астериск. Интернет заходит двумя каналами, реальные фиксированные айпишники. Каждую минуту скрипт проверяет доступность основного канала, если не доступен - переключает шлюз по умолчанию на второй канал. В какой-то момент при переключении на запасной канал перестает работать телефония - транк не регистрируется на провайдере, не доходят запросы. Ковыряние в течении пары дней с включением снифера на всех промежуточных точках показывает следующий глюк - в пакетах, которые уходят на провайдера в качестве обратного адреса почему-то стоит айпишник прикрученный к интерфейсу основного канала а не запасного. При этом все остальное (веб, скайп, почта и т.д) работает нормально, проблема только с SIP. В результате проблема решается просто передергиванием питания микротика - после этого все пакеты формируются правильно.

P.S. SIP ALG на микротике при этом отключен был.

ссылка удалить спам редактировать

ответил 2013-02-14 16:08:07 +0400

SolarW Gravatar SolarW
356 2 10

обновил 2013-02-14 16:08:40 +0400

Comments

Никто не заявляет что микротик идеален и без глюков. Другое дело что их относительно мало. Кстати, какая версия в этом случае фигурировала?

Касательно маршрутизации: у микротика нет понятия "шлюз по умолчанию", для переключения на резевный канал никаких скриптов не нужно. Нужно просто создать два маршрута в 0.0.0.0/0 с разной метрикой. У которого меньше метрика - тот и основной. Как откажет, пакеты пойдут по маршруту с меньшей метрикой. SIP ALG нужно включать если маскарадинг/NAT используется.

switch ( 2013-02-14 17:35:08 +0400 )редактировать

Версия 5.20 (да, я в курсе что текущая уже 5.23).

Насчет нету шлюза по умолчанию - как так нету? А маршрут на 0.0.0.0/0? :-)

Я в курсе что можно метрикой играться но мне не совсем подходит в большинстве случаев этот вариант - кроме смены шлюза по умолчанию у меня еще DNS'ы переключаются на другие и еще пачка телодвижений совершается. Поэтому приходится использовать скрипт который каждую минуту посылает на тестовый айпишник (обычно DNS провайдера) пяток пингов и если ни один из них не вернулся (само собой в файрволе правило выпускающее такие пинги только через один интерфейс) то маршрут с ремаркой "Default Gateway" дисейблится а "Backup Gateway" активируется. Ну и мыло шлется о том, что непорядки мол.

Я последнее время SIP ALG отключаю. С ним получаются какие-то маловоспроизводимые глюки в конфигурациях с VPN'ом. Похоже что начинает срабатывать на лишних интерфейсах. Потому обхожусь portmap + externip/localnet

SolarW ( 2013-02-14 20:31:56 +0400 )редактировать

Дык маршрут на 0.0.0.0/0 это и есть маршрут, а не шлюз по-умолчанию. В общем это риторика.

DNS я указываю всегда 8.8.8.8, и ничего переключать не нужно. А пинговальный скрипт удобнее запускать через tools->netwatch, микротик будет сам пинговать и выполнять нужные действия если вдруг пинг пропадет или появится. У меня вообще было сделано: в лифте еду, телефон цепляется к домашнему вайфаю, микротик пасет мой айпишник, включает свет в тамбуре ;).

а вам при смене гейтвея скорее всего нужно прибивать все соединения, так как таблица NAT хранит некоторое время старые значения, возможно метрикой будет правильно отрабатывать. Глюков SIP ALG с VPN не заметил, в почти в каждом проекте есть и то и другое. А portmap + externip/localnet не поможет так как бывает по два различных подключения к VoIP провайдерам, каждый из которых свою физическую сеть дает. И еще 5.20 немного глючна как мне показалось. Лучше 5.19 или 5.21

switch ( 2013-02-14 21:12:41 +0400 )редактировать

Согласен что все описанное возможно к применению, все зависит от вкуса готовящего. Единственно в чем проблема у netwatch'а по сравнению со скриптом - возможность ложных срабатываний из-за того, что доступность хоста проверяется всего одним пингом. А он может потеряться. Потому и применяю скрипт который шлет пять пингов и если ни один не вернулся - то тогда начинаются действия.

SolarW ( 2013-02-18 22:51:21 +0400 )редактировать

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2013-02-12 00:14:51 +0400

Просмотрен: 12,831 раз

Обновлен: Feb 14 '13

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.