Сетевая настройка Asterisk. NAT. Intercross. 3cx Phone
Уверен что многим мой вопрос покажется глупым, но уж извините. Приходится просить помощи.
Ситуация такова: в локальной сети на 192.168.1.34 стоит астериск(с FreePbx), сетевые настройки в нем прописаны(шлюз 192.169.1.99), ставил модули... репозитории астер видит. внутренние номера прописанные статичными IP работают без вопросов. Шлюзом является adsl-модем Intercross(192.168.1.199). Внешнего статичного адреса нет! И не будет в ближайшее время. В связи с этим настроил на модеме DynDNS. Учетка работает - по ней захожу на веб-морду модема. Пытался пробросить порты 5060:5065 на адрес астера (1.34) в модеме. 3сх не цепляется.
Помогите пожалуйста. Правильно ли я понимаю, что externhost и externtip в файле sip.conf это немного из другой оперы?
Externhost - это то что вам надо настроить
externtip - не трогать.
Там еще есть рефреш - настройте на 180
Что сделано(http://asterisk-pbx.ru/wiki/doku.php/nat):
Прописал в sip.conf(general):
externhost=учетке dyndns
externrefresh=180
localnet=192.168.1.0/255.255.255.0
Прописал в rtp.conf порты с 10000 по 10100
пробросил порты(10000:10100 и 5060) внутри * командой iptables на ip *.
ребутнул
Всё так же.
Зашел в FreePbx - Sip settings.
В красной рамочке показывает:
ОШИБКИ
Файл /etc/asterisk/sip.conf не имеет каких либо значений. Такие параметры должны быть удалены.
Пробовал убрать всё в поле externip - не даёт сохранить и применить.
Пробовал вписать там XXXXX.dyndns.org сохранить и применить дает, но ошибка остается.
Пробовал звонить к каждого на каждый. Во всех вариантах вызовы не начинаются. Одно отличие только у Нокии - при наборе любого из номеров железная леди говорит на инглише что набор не правильный.
Потому как сейчас давать советы бесполезно, если у вас внутри сети даже не звонит.
Для NAT - когда сервер и клиенты за NAT
Схема:
Сервер->Роутер->Интернет
Клиенты как из внутренней сети так и интернета
externip=Внешний адрес роутера - вид 212.33.234.44 - он может быть только один
или exterhost при динамическои ip адресе
Их должно быть один и два и три и еще дофига, это то что вы прописываете на регистрации на клиентах
domain=Внутренний адрес 192.168.0.22
domain=Внешний адрес роутера - вид 212.33.234.44
domain=sip.domain.ru
domain=sip.domain.local
Схема вида (может быть несколько):
localnet = 192.168.0.0/16
localnet = 10.10.0.0/16
NAT пишеться глобальный в [default] sip.conf
nat=yes ; Старый вариант
nat=force_rport ; Новый вариант
directmedia=no - пишите везде, глобально и на клиентов
На клиентов из внутренней сети nat=no, из внешней nat=force_rport (или nat=yes)
qualify=yes пишите туда где надо потдерживать соединения за nat
Влючаете dubug
sip set debug peer имя
И смотрите чтоб при звонке небыло упоминаний внутренего адреса
[3002]
deny=0.0.0.0/0.0.0.0
secret=xxx
dtmfmode=rfc2833
canreinvite=no
context=from-internal
host=dynamic
directmedia=no
trustrpid=yes
sendrpid=no
type=friend
nat=force_rport
port=5060
qualify=yes
qualifyfreq=60
transport=udp
encryption=no
callgroup=
pickupgroup=
dial=SIP/3002
mailbox=3002@device
permit=0.0.0.0/0.0.0.0
callerid=device
callcounter=yes
faxdetect=no
cc_monitor_policy=generic
3003 - 3cx в локалке
[3003]
deny=0.0.0.0/0.0.0.0
secret=xxx
dtmfmode=rfc2833
canreinvite=no
context=from-internal
host=dynamic
directmedia=no
trustrpid=yes
sendrpid=no
type=friend
nat=no
port=5060
qualify=yes
qualifyfreq=60
transport=udp
encryption=no
callgroup=
pickupgroup=
dial=SIP/3003
mailbox=3003@device
permit=0.0.0.0/0.0.0.0
callerid=device
callcounter=yes
faxdetect=no
cc_monitor_policy=generic
3004 - планшет за натом
[3004]
deny=0.0.0.0/0.0.0.0
secret=xxx
dtmfmode=rfc2833
canreinvite=no
context=from-internal
host=dynamic
directmedia=no
trustrpid=yes
sendrpid=no
type=friend
nat=force_rport
port=5060
qualify=yes
qualifyfreq=60
transport=udp
encryption=no
callgroup=
pickupgroup=
dial=SIP/3004
mailbox=3004@device
permit=0.0.0.0/0.0.0.0
callerid=device
callcounter=yes
faxdetect=no
cc_monitor_policy=generic
3005 - мобильник за натом
[3005]
deny=0.0.0.0/0.0.0.0
secret=xxx
dtmfmode=rfc2833
canreinvite=no
context=from-internal
host=dynamic
directmedia=no
trustrpid=yes
sendrpid=no
type=friend
nat=force_rport
port=5060
qualify=yes
qualifyfreq=60
transport=udp
encryption=no
callgroup=
pickupgroup=
dial=SIP/3005
mailbox=3005@device
permit=0.0.0.0/0.0.0.0
callerid=device
callcounter=yes
faxdetect=no
cc_monitor_policy=generic
А вот с дебагом пока застрял. Рою в инете подробности.
Sip Peers
Name/username Host Dyn Forcerport ACL Port Status
3000 (Unspecified) D A 0 UNKNOWN
3001 (Unspecified) D A 0 UNKNOWN
3002/3002 78.85.48.119 D N A 52803 OK (51 ms)
3003/3003 78.85.109.1 D A 3035 UNREACHABLE
3004/3004 ( Unspecified) D N A 0 UNKNOWN
3005/3005 78.85.48.119 D N A 1024 OK (187 ms)
6 sip peers [Monitored: 2 online, 4 offline Unmonitored: 0 online, 0 offline]
Последний раз редактировалось: aalexx (Вс Дек 23, 2012 18:15)
и делайте звонок, все что на экране сюда
потом выключаете sip set debug off и по новой sip set debug peer 3004 ( номер-НЕ-удачного-звонка )
и делайте звонок, все что на экране сюда
глянем в чем разница
[root@FreePbx asterisk]# sip set debug 3002 on
-bash: sip: command not found
[root@FreePbx asterisk]# sip set debug peer 3005
-bash: sip: command not found
Что-то похоже не так делаю... Понял уже, что с путями что-то не то. Но пока не разобрался. Что и где прописывать.
Работа над ошибками - yum install sip - установился.
[root@FreePbx var]# yum install sip
Loaded plugins: fastestmirror, kmod, security
Loading mirror speeds from cached hostfile
* base: mirror.majorhost.net
* extras: mirror.majorhost.net
* updates: mirror.majorhost.net
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package sip.i386 0:4.4.5-3 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
==============================================================================================================================
Package Arch Version Repository Size
==============================================================================================================================
Installing:
sip i386 4.4.5-3 base 216 k
Transaction Summary
==============================================================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 216 k
Is this ok [y/N]: y
Downloading Packages:
sip-4.4.5-3.i386.rpm | 216 kB 00:01
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : sip 1/1
Installed:
sip.i386 0:4.4.5-3
Complete!
[root@FreePbx var]# sip set debug peer 3005 on
sip: Usage: sip [-h] [-V] [-a file] [-b file] [-c dir] [-d file] [-e] [-g] [-I dir] [-j #] [-r] [-s suffix] [-t tag] [-w] [-x feature] [-z file] [file]
[root@FreePbx var]# sip set debug peer 3005
sip: Usage: sip [-h] [-V] [-a file] [-b file] [-c dir] [-d file] [-e] [-g] [-I dir] [-j #] [-r] [-s suffix] [-t tag] [-w] [-x feature] [-z file] [file]
Чёй-та опять в тупике...
Все команды вводятся через консоль asterisk.
Консоль вызывается через команду rasterisk
И регистрации смотрятся через sip show peer , а потом sip set debug peer номер (номер получите с предедущей команды )
SP У нас еще раздел бизнес существует, для тех кому книгу читать лень