AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Сетевая настройка Asterisk. NAT. Intercross. 3cx Phone

Newbies/FAQ Forum 17 сообщений -
#1

Сетевая настройка 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 это немного из другой оперы?
#2

Делайте DMZ на роутере
#3

ИЗВИНИТЕ, А МОЖНО ЧУТЬ ПОДРОБНЕЕ...
#4

На роутере, проще включить DMZ чем пробрасывать кучу портов - DMZ указывает на сервер с *.
Externhost - это то что вам надо настроить

externtip - не трогать.

Там еще есть рефреш - настройте на 180
#5

еще раз извиняюсь за простые вопросы. ничего нигде не меняя пошла регистрация абонентов за NAT-ом. Картина такая: софтфон в локалке с * SIP:3003, планшет с 3сх SIP:3004; Нокия е65 с встроенным SIP: 3005; 3cx на компе(тоже за натом - дома):3002. Все зарегались. Но вызовы не идут. Везде стоит NAT=нет-RFC3581. Нужно ли на данный момент определить входящую и исходящую маршрутизацию? Вроде как все абоненты пока внутренние...
Что сделано(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 сохранить и применить дает, но ошибка остается.

Пробовал звонить к каждого на каждый. Во всех вариантах вызовы не начинаются. Одно отличие только у Нокии - при наборе любого из номеров железная леди говорит на инглише что набор не правильный.
#6

Я смотрю вы путь настоящего джедая выбрали - у вас еще нечего в одной локалке не работает, вы уже за настройку NAT взялись.
#7

Увы именно в такой конфигурации и нужно поднимать *. Причем, если я правильно понимаю, то NAT-ов у меня в этом случае два. Один - ADSL-модем на работе, второй - рутер дома. внутренние номера в локалке работают.
#8

Вот честно, мне на ваше тех задание пофиг. Давайте вы пошагово пойдете начиная со звонков внутри одной локалки, а потом пойдем далее.
Потому как сейчас давать советы бесполезно, если у вас внутри сети даже не звонит.
#9

внутри локалки всё звонит и голос есть в обе стороны. внутренние номера за натом не звонят. регистрируются, но не звонят.
#10

Что по новой не расписывать:
Для 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 имя
И смотрите чтоб при звонке небыло упоминаний внутренего адреса
#11

сделал всё как вы сказали. Этакая картинка вырисовывается.
#12

Мне картинка нечего не говорит - вы настроки лучше с каждого клиента показали бы - ну и в придачу debug звонка выложили.
#13

3002 - 3cx за натом

[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)
#14

sip set debug peer 3005 ( номер-удачного-звонка )

и делайте звонок, все что на экране сюда

потом выключаете sip set debug off и по новой sip set debug peer 3004 ( номер-НЕ-удачного-звонка )

и делайте звонок, все что на экране сюда

глянем в чем разница
#15

попробую.

[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]

Чёй-та опять в тупике...
#16

Похоже пора читать книгу - Будещее телефонии - ссылка в библиотеке.
Все команды вводятся через консоль asterisk.
Консоль вызывается через команду rasterisk
И регистрации смотрятся через sip show peer , а потом sip set debug peer номер (номер получите с предедущей команды )

SP У нас еще раздел бизнес существует, для тех кому книгу читать лень
#17

спасибо за наводку - копаю глубже.