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

Asterisk 11.11+Nat

0

Здравствуйте, Знаю что тема заезжена до невозможности, но просто мыслей уже нет. В первые 30 секунд рвется звонок, в логах ошибка: chan_sip.c: Retransmission timeout reached on transmission hm6EESYOLhFeoM2zIWLFZ-D.Nrs9nJc3 for seqno 31140 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions Packet timed out after 6400ms with no response

В sip.conf следующее:

allowguest=no
language=ru
alwaysauthreject=yes
localnet=172.17.10.0/255.255.254.0
externaddr=79.XXX.XXX.XXX
nat=force_rport,comedia
canreinvite=no
media_address=79.XXX.XXX.XXX
directrtpsetup=no
qualify=yes
directmedia=no

У пользователя (внешнего):

[5160]
deny=0.0.0.0/0.0.0.0
disallow=all
secret=secret
dtmfmode=rfc2833
canreinvite=no
context=from-internal
host=dynamic
type=friend
nat=force_rport,comedia
port=5060
qualify=yes
callgroup=
pickupgroup=
allow=g729
allow=alaw
dial=SIP/5160
mailbox=5160@device
permit=0.0.0.0/0.0.0.0
callerid=device <5160>
callcounter=yes
faxdetect=no

в качестве шлюза - отдельная машина Centos. конфиг фаирвола:

$NAT -A PREROUTING -p udp --dport 55000:65000 -j DNAT --to 172.17.10.40
$IPF -A FORWARD -i $WAN1_IF -o $LAN_IF -d 172.17.10.40 -p udp --dport 55000:65000 -j ACCEPT
$NAT -A POSTROUTING -p udp --dst 172.17.10.40 --dport 55000:65000 -j SNAT --to 172.17.10.1

$NAT -A PREROUTING -p udp --dport 5060 -j DNAT --to 172.17.10.40:5060
$IPF -A FORWARD -i $WAN1_IF -o $LAN_IF -d 172.17.10.40 -p udp --dport 5060 -j ACCEPT
$NAT -A POSTROUTING -p udp --dst 172.17.10.40 --dport 5060 -j SNAT --to 172.17.10.1

rtp.conf

; RTP Configuration
;
[general]
;
; RTP start and RTP end configure start and end addresses
; These are the addresses where your system will RECEIVE audio and video streams.
; If you have connections across a firewall, make sure that these are open.
;
rtpstart=55000
rtpend=65000
;strictrtp=no
удалить закрыть спам изменить тег редактировать

спросил 2014-07-23 18:14:14 +0400

goshran Gravatar goshran
65 3 3

обновил 2014-07-24 09:14:41 +0400

Comments

Голосовые пакеты не ходят, поэтому рвется связь через 30 секунд.

Сигнализация ходит. dump поможет.

Почитайте в каком диапазоне должны быть открыты RTP порты.

Out ( 2014-07-23 18:44:57 +0400 )редактировать

rtp порты: 55000 - 65000. В rtp.conf так и прописано. Да и пакеты вроде как ходят, абоненты друг друга слышат. Кстати, соединение рвется только при исходящем звонке с телефона. При входящем все хорошо. Еще заметил, при нормально звонке "sip show channels" показывает статус соединения "ASK", а при сбоящем статус "INVITE". Может каких то опций в sip.conf не достает?

goshran ( 2014-07-23 21:43:21 +0400 )редактировать

посмотрел лог wireshark на клиенте в какой то момент, клиент начинает обращаться не через шлюз 79.XXX.XXX.XXX. А напрямую отправляет SIP REQUEST к asterisk на внутренний ип - 172.17.10.40.

goshran ( 2014-07-23 22:14:45 +0400 )редактировать

rtp.conf покажите

awsswa ( 2014-07-24 07:22:49 +0400 )редактировать

rtp.conf добавил в вопрос

goshran ( 2014-07-24 09:11:01 +0400 )редактировать

за 5 минут не разобраться - советов будет на пару дней переборов параметров - решайте вопрос с платной поддержкой - может кто захочет шабашнуть.

awsswa ( 2014-07-24 12:33:40 +0400 )редактировать

параметры можно по перебирать, это не такая большая проблема. Просто у меня уже идей нет, что не так. Еще маленький аспект: без media_address=79.XXX.XXX.XXX, звука нет при звонках на *60... У кого нибудь получилось заставить нормально работать 11 астер через нат?

goshran ( 2014-07-24 13:27:24 +0400 )редактировать

правила в таблице POSTROUTING не нужны. Плюс надо определить чей нат мешает работе, тот за которым Asterisk или тот за которым телефон.

eyt5297 ( 2014-07-25 15:19:04 +0400 )редактировать

1 Ответ

0

версия астера здесь не при чем, читайте и анализируйте дамп звонка, в частности содержимое sdp в процессе установки связи - какие порты должны быть открыты.. Обычно диапазон rtp для устройств - 10 - 40тыс, а не тот который вам захотелось указать..

да и для описания пользователя достаточно 5 строчек в шаблоне и 2-х в пользователе, остальное - лишнее. достаточно простого nat=yes..

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

ответил 2014-07-24 16:10:42 +0400

svoy Gravatar svoy
1603 1 4 20
http://svoy.in.ua/

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

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

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

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

Статистика

Задан: 2014-07-23 18:14:14 +0400

Просмотрен: 853 раз

Обновлен: Jul 24 '14

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