ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

проблема с астериском за натом

Проблемы и их решения Asterisk как такового

Модераторы: april22, Zavr2008

проблема с астериском за натом

Сообщение simka » 14 янв 2017, 14:48

Проблема в том, что клиент может подключиться к серверу, но когда осуществляешь набор - не слышно голоса, т.е. насколько я понимаю проблема с RTP из-за ната. Причем пробовал настроить Echo-сервис чтобы проверить что будет работать хотя бы с сервером, без второго клиента - тоже ничего не слышно.

пробовал настройки и directmedia разные и nat - не помогает ничего.

есть следующая конфигурация - asterisk на виртуальной машине за фаерволом который просто все пробрасывает ему не меняя внешних ip. внутренний IP - 10.0.201.60
[Показать] Спойлер: sip.conf
[general]
realm=PBX Server
useragent=PBX Server
sdpsession=PBX Server

externaddr=79.x.x.x:5060
externhost=external.host.com

udpbindaddr=10.0.201.60:5060
tlsenable=yes
tlsbindaddr=10.0.201.60:5061
tcpenable=yes
tcpbindaddr=10.0.201.60:5060

localnet=192.168.0.0/255.255.0.0
localnet=10.0.0.0/255.0.0.0

language=en
context=default
allowoverlap=no
transport=tls,tcp,udp
srvlookup=yes
allowguest=no
alwaysauthreject=yes
limitonpeers=yes

tlscertfile=/usr/asterisk/etc/certs/asterisk.pem
tlscafile=/usr/asterisk/etc/certs/cacert.pem
tlsclientmethod=tlsv12
;tlsciphers=EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
tlscipher=ECDH:!3DES:!RC4:!ADH:!AECDH:!NULL:!eNULL
encryption=yes

[clients]
context=clients
type=friend
host=dynamic
qualify=100
;callgroup=1
;pickupgroup=1
call-limit=1
dtmfmode=auto
allow=opus,alaw,ulaw,g729,g723,g722,gsm

[100](clients)
callerid=100
secret=12345678
directmedia=nonat
nat=force_rport,comedia

[101](clients)
callerid="Number 101" <101>
secret=87654321
nat = comedia


[Показать] Спойлер: extensions.conf
[general]
static=yes
writeprotect=yes

[globals]
[default]

[clients]
;Звонок на внутренний номер
exten => _XXX,1,Playback(beep,noanswer)
exten => _XXX,n,Dial(SIP/${EXTEN})
exten => _XXX,n,HangUp()

exten => 1720,1,NoOp(Starting playback service)
exten => 1720,n,Playback(beep) ; Let them know what's going on
exten => 1720,n,Echo ; Do the echo test
exten => 1720,n,Playback(beep) ; Let them know it's over
exten => 1720,n,HangUp()


дебаг сипа
[Показать] Спойлер: SIP debug
<--- SIP read from TLS:188.x.x.x:54109 --->
INVITE sip:1720@79.x.x.x;transport=tls SIP/2.0
Via: SIP/2.0/TLS 192.168.66.187:54109;rport;branch=z9hG4bKPj492269f553af4a5d8db97a733ef01708;alias
Max-Forwards: 70
From: <sip:100@79.x.x.x>;tag=3a869dfdda524708b555228c9b49dcb3
To: <sip:1720@79.x.x.x>
Contact: <sip:100@192.168.66.187:54109;transport=TLS;ob>
Call-ID: 267ff9344fd14e3e8200575a0882be05
CSeq: 890 INVITE
Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
Supported: replaces, 100rel, timer, norefersub
Session-Expires: 1800
Min-SE: 90
User-Agent: MicroSIP/3.14.5
Content-Type: application/sdp
Content-Length: 369

v=0
o=- 3693386778 3693386778 IN IP4 192.168.66.187
s=pjmedia
b=AS:84
t=0 0
a=X-nat:0
m=audio 4000 RTP/AVP 123 8 0 101
c=IN IP4 192.168.66.187
b=TIAS:64000
a=rtcp:4001 IN IP4 192.168.66.187
a=sendrecv
a=rtpmap:123 opus/48000/2
a=fmtp:123 maxplaybackrate=16000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
<------------->
--- (15 headers 17 lines) ---
Sending to 188.x.x.x:54109 (NAT)
Sending to 188.x.x.x:54109 (NAT)
Using INVITE request as basis request - 267ff9344fd14e3e8200575a0882be05
Found peer '100' for '100' from 188.x.x.x:54109

<--- Reliably Transmitting (NAT) to 188.x.x.x:54109 --->
SIP/2.0 401 Unauthorized
Via: SIP/2.0/TLS 192.168.66.187:54109;branch=z9hG4bKPj492269f553af4a5d8db97a733ef01708;alias;received=188.x.x.x;rport=54109
From: <sip:100@79.x.x.x>;tag=3a869dfdda524708b555228c9b49dcb3
To: <sip:1720@79.x.x.x>;tag=as2cbbd8ae
Call-ID: 267ff9344fd14e3e8200575a0882be05
CSeq: 890 INVITE
Server: PBX Server
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm="PBX Server", nonce="22120715"
Content-Length: 0


<------------>
Scheduling destruction of SIP dialog '267ff9344fd14e3e8200575a0882be05' in 6400 ms (Method: INVITE)

<--- SIP read from TLS:188.x.x.x:54109 --->
ACK sip:1720@79.x.x.x;transport=tls SIP/2.0
Via: SIP/2.0/TLS 192.168.66.187:54109;rport;branch=z9hG4bKPj492269f553af4a5d8db97a733ef01708;alias
Max-Forwards: 70
From: <sip:100@79.x.x.x>;tag=3a869dfdda524708b555228c9b49dcb3
To: <sip:1720@79.x.x.x>;tag=as2cbbd8ae
Call-ID: 267ff9344fd14e3e8200575a0882be05
CSeq: 890 ACK
Content-Length: 0

<------------->
--- (8 headers 0 lines) ---

<--- SIP read from TLS:188.x.x.x:54109 --->
INVITE sip:1720@79.x.x.x;transport=tls SIP/2.0
Via: SIP/2.0/TLS 192.168.66.187:54109;rport;branch=z9hG4bKPj8326923ee8d8447684433adc03a29982;alias
Max-Forwards: 70
From: <sip:100@79.x.x.x>;tag=3a869dfdda524708b555228c9b49dcb3
To: <sip:1720@79.x.x.x>
Contact: <sip:100@192.168.66.187:54109;transport=TLS;ob>
Call-ID: 267ff9344fd14e3e8200575a0882be05
CSeq: 891 INVITE
Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
Supported: replaces, 100rel, timer, norefersub
Session-Expires: 1800
Min-SE: 90
User-Agent: MicroSIP/3.14.5
Authorization: Digest username="100", realm="PBX Server", nonce="22120715", uri="sip:1720@79.x.x.x;transport=tls", response="fe89aa3e581434a4764ea3d44595bd94", algorithm=MD5
Content-Type: application/sdp
Content-Length: 369

v=0
o=- 3693386778 3693386778 IN IP4 192.168.66.187
s=pjmedia
b=AS:84
t=0 0
a=X-nat:0
m=audio 4000 RTP/AVP 123 8 0 101
c=IN IP4 192.168.66.187
b=TIAS:64000
a=rtcp:4001 IN IP4 192.168.66.187
a=sendrecv
a=rtpmap:123 opus/48000/2
a=fmtp:123 maxplaybackrate=16000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
<------------->
--- (16 headers 17 lines) ---
Sending to 188.x.x.x:54109 (NAT)
Using INVITE request as basis request - 267ff9344fd14e3e8200575a0882be05
Found peer '100' for '100' from 188.x.x.x:54109
== Using SIP RTP CoS mark 5
Found RTP audio format 123
Found RTP audio format 8
Found RTP audio format 0
Found RTP audio format 101
Found audio description format opus for ID 123
Found audio description format PCMA for ID 8
Found audio description format PCMU for ID 0
Found audio description format telephone-event for ID 101
Capabilities: us - (ulaw|alaw|gsm|h263|opus|g729|g723|g722), peer - audio=(ulaw|alaw|opus)/video=(nothing)/text=(nothing), combined - (ulaw|alaw|opus)
Non-codec capabilities (dtmf): us - 0x1 (telephone-event|), peer - 0x1 (telephone-event|), combined - 0x1 (telephone-event|)
Peer audio RTP is at port 192.168.66.187:4000
Looking for 1720 in clients (domain 79.x.x.x)
sip_route_dump: route/path hop: <sip:100@192.168.66.187:54109;transport=TLS;ob>

<--- Transmitting (NAT) to 188.x.x.x:54109 --->
SIP/2.0 100 Trying
Via: SIP/2.0/TLS 192.168.66.187:54109;branch=z9hG4bKPj8326923ee8d8447684433adc03a29982;alias;received=188.x.x.x;rport=54109
From: <sip:100@79.x.x.x>;tag=3a869dfdda524708b555228c9b49dcb3
To: <sip:1720@79.x.x.x>
Call-ID: 267ff9344fd14e3e8200575a0882be05
CSeq: 891 INVITE
Server: PBX Server
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
Session-Expires: 1800;refresher=uas
Contact: <sip:1720@10.0.201.60:5061;transport=TLS>
Content-Length: 0


<------------>
-- Executing [1720@clients:1] NoOp("SIP/100-00000011", "Starting playback service") in new stack
-- Executing [1720@clients:2] Playback("SIP/100-00000011", "beep") in new stack
Audio is at 15486
Adding codec ulaw to SDP
Adding codec alaw to SDP
Adding codec opus to SDP
Adding non-codec 0x1 (telephone-event) to SDP

<--- Reliably Transmitting (NAT) to 188.x.x.x:54109 --->
SIP/2.0 200 OK
Via: SIP/2.0/TLS 192.168.66.187:54109;branch=z9hG4bKPj8326923ee8d8447684433adc03a29982;alias;received=188.x.x.x;rport=54109
From: <sip:100@79.x.x.x>;tag=3a869dfdda524708b555228c9b49dcb3
To: <sip:1720@79.x.x.x>;tag=as4fadf006
Call-ID: 267ff9344fd14e3e8200575a0882be05
CSeq: 891 INVITE
Server: PBX Server
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
Session-Expires: 1800;refresher=uas
Contact: <sip:1720@10.0.201.60:5061;transport=TLS>
Content-Type: application/sdp
Require: timer
Content-Length: 320

v=0
o=root 978756088 978756088 IN IP4 10.0.201.60
s=PBX Server
c=IN IP4 10.0.201.60
t=0 0
m=audio 15486 RTP/AVP 0 8 123 101
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:123 opus/48000/2
a=fmtp:123 maxplaybackrate=16000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=maxptime:60
a=sendrecv

<------------>
-- <SIP/100-00000011> Playing 'beep.gsm' (language 'en')
-- Executing [1720@clients:3] Echo("SIP/100-00000011", "") in new stack
[Jan 14 12:46:23] WARNING[8375]: chan_sip.c:4061 retrans_pkt: Retransmission timeout reached on transmission 267ff9344fd14e3e8200575a0882be05 for seqno 891 (Critical Response) -- See https://wiki.asterisk.org/wiki/display/ ... nsmissions
Packet timed out after 6400ms with no response
[Jan 14 12:46:23] WARNING[8375]: chan_sip.c:4085 retrans_pkt: Hanging up call 267ff9344fd14e3e8200575a0882be05 - no reply to our critical packet (see https://wiki.asterisk.org/wiki/display/ ... sions&#41;.
== Spawn extension (clients, 1720, 3) exited non-zero on 'SIP/100-00000011'
Scheduling destruction of SIP dialog '267ff9344fd14e3e8200575a0882be05' in 6400 ms (Method: INVITE)
Reliably Transmitting (NAT) to 188.x.x.x:54109:
BYE sip:100@192.168.66.187:54109;transport=TLS;ob SIP/2.0
Via: SIP/2.0/TLS 10.0.201.60:5061;branch=z9hG4bK679f33cf;rport
Max-Forwards: 70
From: <sip:1720@79.x.x.x>;tag=as4fadf006
To: <sip:100@79.x.x.x>;tag=3a869dfdda524708b555228c9b49dcb3
Call-ID: 267ff9344fd14e3e8200575a0882be05
CSeq: 102 BYE
User-Agent: PBX Server
Proxy-Authorization: Digest username="100", realm="PBX Server", algorithm=MD5, uri="sips:79.x.x.x", nonce="22120715", response="0d7301e8dad7c001b29078ae03296a54"
X-Asterisk-HangupCause: No user responding
X-Asterisk-HangupCauseCode: 18
Content-Length: 0


Подскажите, пожалуйста, что может быть не так или хотя бы в какую сторону копать - второй день головой бьюсь.
Спасибо!
simka
 
Сообщений: 2
Зарегистрирован: 14 янв 2017, 14:38

Re: проблема с астериском за натом

Сообщение simka » 14 янв 2017, 16:46

небольшое уточнение, оказалось что не работает только по TLS (что требуется). без TLS все работает
simka
 
Сообщений: 2
Зарегистрирован: 14 янв 2017, 14:38

Re: проблема с астериском за натом

Сообщение ded » 15 янв 2017, 03:05

Изображение
Изображение
ded
 
Сообщений: 15821
Зарегистрирован: 26 авг 2010, 19:00


Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH