Страница 1 из 1

Не проходит вызов на мобильный клиент

Добавлено: 24 сен 2014, 15:48
drug591
Скорее всего проблема всем давно известная, но я ее решения пока так и не нашел.
Есть машина сCentOS 6.5 с Asterisk'ом 11 + FreePBX с белым ip. Iptables настроены следующим образом
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER: iptables

Код: Выделить всё

*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -m conntrack --ctstate INVALID -j DROP 
-A INPUT -p icmp -m icmp --icmp-type 8 -m conntrack --ctstate NEW -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m conntrack --ctstate NEW -j ACCEPT 
-A INPUT -p udp -m udp --dport 5060 -j ACCEPT 
-A INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 5038 -j ACCEPT 
-A INPUT -p tcp -j REJECT --reject-with tcp-reset 
-A INPUT -p udp -j REJECT --reject-with icmp-port-unreachable 
-A INPUT -j REJECT --reject-with icmp-proto-unreachable 
-A FORWARD -s 10.0.1.0/24 -i eth5 -o eth1 -j ACCEPT 
-A FORWARD -d 10.0.1.0/24 -i eth1 -o eth5 -j ACCEPT 
COMMIT
В настройках экстеншенов указано:

Код: Выделить всё

canreinvite=no
host=dynamic
nat=yes
qualify=yes
qualifyfreq=60
На этой же машине установлен Zoiper, на смартфон установлена мобильная версия Zoiper. Если звонок совершается с смартфона на машину, то вызов проходит и соединение не рвется. Если же пытаться позвонить с машины на смартфон, то буквально через секунду соединение рвется, в логах попытка переадресации на голосовую почту, но так ее нет - Asterisk рвет соединение. При этом смартфон находится в онлайне, сервер непрерывно шлет ему OPTIONS, но смартфон на них не отвечает, в логах появляется запись

Код: Выделить всё

Peer '999' is now UNREACHABLE! Last qualify: 0
Подскажите в какую сторону смотреть по поводу решения.

Re: Не проходит вызов на мобильный клиент

Добавлено: 24 сен 2014, 16:12
awsswa
смартфон подсоединен по фиговому каналу

Re: Не проходит вызов на мобильный клиент

Добавлено: 24 сен 2014, 16:22
drug591
Но почему тогда проходит вызов с смартфона? Или вызов проходит, так как в данном случае смартфон является инициатором соединения, а вызываемый абонент корректно отвечает на OPTIONS? Но тогда все равно соединение должно было бы разорваться когда-нибудь, т.к. на OPTIONS смартфон также не отвечает.

Re: Не проходит вызов на мобильный клиент

Добавлено: 24 сен 2014, 17:58
ded
drug591 писал(а):На этой же машине установлен Zoiper,
То есть порт 5060 на этой мащине пытаются использовать И Астериск, и Zoiper? Тогда неудивительно, что
Peer '999' is now UNREACHABLE!

Re: Не проходит вызов на мобильный клиент

Добавлено: 25 сен 2014, 08:12
drug591
ded, peer 999 это смартфон.
На машине в настройках Zoiper'a указано использовать случайный порт выше 32000 и в логах у него все нормально:

Код: Выделить всё

Peer '777' is now Reachable. (1ms / 2000ms)

Re: Не проходит вызов на мобильный клиент

Добавлено: 25 сен 2014, 09:03
virus_net
drug591, помоему вы все запутали:
Правильно вам ded написал на ваш:
drug591 писал(а):На этой же машине установлен Zoiper
тогда поясните что есть "эта же" машина. мы поняли что это машина с Asterisk.
Далее:
drug591 писал(а):999 это смартфон
далее:
drug591 писал(а):в логах у него все нормально:
Peer '777' is now Reachable. (1ms / 2000ms)
так вы уж определитесь 999 или 777
drug591 писал(а):Подскажите в какую сторону смотреть по поводу решения.
sip debug || tcpdump
смотрите что уходит, что приходит

Re: Не проходит вызов на мобильный клиент

Добавлено: 25 сен 2014, 09:07
drug591
virus_net, есть два экстеншена 999 и 777.
777 это Zoiper на той же машине, на которой установлен Asterisk.
999 это Zoiper на смартфоне.
Вызов с смартфона (с 999) на машину (777) проходит, а обратно нет.
virus_net писал(а):
drug591 писал(а):в логах у него все нормально:
Я хотел сказать, что Zoiper и Asterisk никак не конфликтуют на одной машине.

Re: Не проходит вызов на мобильный клиент

Добавлено: 25 сен 2014, 10:26
ded
drug591 писал(а): вызываемый абонент корректно отвечает на OPTIONS?
Вызываемый абонент находится там же, где Астериск, верно? С чего бы ему не отвечать на OPTIONS?
drug591 писал(а): Но тогда все равно соединение должно было бы разорваться когда-нибудь, т.к. на OPTIONS смартфон также не отвечает.
Это не влияет на исходящие, ничего не должно разрываться. Состояние ОК или Unreachable влияет только на входящий к этому клиенту, а не на исходящий.

Астериск - на белом адресе, смартфон - скорее всего нет, за НАТом. Вот это НАТ/firewall устройство и запирает. Из-за него исходящий всегда выйдет в мир и добегает до Астериска, а возможность входящего туда назад должна поддерживаться посылками пакетов OPTIONS (qualify=yes). Ну и эти пакеты Zoiper тоже должен принимать и обрабатывать, отвечать ОК.
Ищите!

Re: Не проходит вызов на мобильный клиент

Добавлено: 25 сен 2014, 11:33
drug591
ded, смартфон использует Мегафон интернет, так что скорее всего с этим ничего не сделаешь.

Re: Не проходит вызов на мобильный клиент

Добавлено: 25 сен 2014, 13:13
ded
А я ничего и не делаю!