Asterisk 서버에 약간의 문제가 있어서 해결하려고 애쓰고 있습니다. 저보다 더 많은 지식을 가진 분이 도와주셨으면 좋겠습니다.
우리는 Centos 6.4에서 Asterisk 1.8.23.0을 실행하고 있으며 전화와 별표 서버는 방화벽 내부에 있고 VoIP 서비스 제공업체는 외부에 있습니다. 방화벽은 외부 회사에서 설정하고 관리합니다.
A
현재 우리는 대부분의 인바운드 트래픽과 모든 아웃바운드 트래픽을 처리하고 B
외부 IVR을 통해 콜센터로 라우팅되는 일부 인바운드 트래픽을 처리하는 두 개의 VoIP 서비스 제공업체를 보유하고 있습니다 .
최근 보안 감사에서 우리는 모든 VoIP 트래픽이 방화벽을 통과해야 한다는 말을 들었고 이를 두 단계에 걸쳐 수행해야 한다고 결정했습니다.
첫 번째 단계에서는 방화벽을 통해 수신하는 인바운드 트래픽을 배치하고 B
, 두 번째 단계에서는 방화벽을 통해 인바운드 및 아웃바운드 트래픽 A
도 보냅니다. 우리는 현재 1단계에 머물고 있습니다.
처음에는 파일 의 섹션 에서 externip
및 설정을 시도했지만 이로 인해 기본 VoIP 서비스 제공업체의 VoIP 트래픽이 중단되었으므로 다음과 같이 보조 VoIP 서비스 제공업체에 대한 파일 의 특정 항목에 설정하려고 했습니다. :localnet
[general]
sip.conf
A
sip.conf
B
[A]
type=friend
disallow=all
allow=alaw
allow=g729
context=fromneotel
host=aaa.aaaa.aaa.aaa
insecure=port,invite
nat=no
directmedia=no
[B]
type=friend
disallow=all
allow=g711
allow=g729
allow=alaw
context=fromis1
host=bbb.bbb.bbb.bbb
insecure=port,invite
nat=yes
directmedia=no
externip=ccc.ccc.ccc.ccc
localnet=192.68.20.0/255.255.252.0
aaa.aaa.aaa.aaa
의 IP는 어디에 A
있고 bbb.bbb.bbb.bbb
는 방화벽의 외부 IP입니다 B
.ccc.ccc.ccc.ccc
이러한 설정을 적용하면 콜센터는 IVR을 통해 전화를 받을 수 있지만 일단 통화가 연결되면 외부 발신자는 콜센터 상담원의 말을 들을 수 있지만 콜센터 상담원은 발신자의 말을 들을 수 없습니다.
VoIP 서비스 제공업체는 SDP 부분 200 OK SIP
의 응답 에서 미디어를 보낼 IP 주소를 제공한다고 말합니다 .ccc.ccc.ccc.ccc
ddd.ddd.ddd.ddd
ddd.ddd.ddd.ddd
B
방화벽을 통해 트래픽을 전달하려고 하지 않을 때 일반적으로 연결되는 별표 서버의 IP입니다 . 우리가 그들로부터 받은 정보는 다음과 같습니다.
Via: SIP/2.0/UDP bbb.bbb.bbb.bbb:5060;branch=z9hG4bKmm63qe00d8ogcio100k0.1;received=bbb.bbb.bbb.bbb
From: "Anonymous"<sip:<originating number from IVR>@bbb.bbb.bbb.bbb:5060;user=phone>;tag=1641833502-1377756054727-
To: "<call centre number>"<sip:<call centre number>@ccc.ccc.ccc.ccc:5060>;tag=as43201e45
Call-ID: [email protected]
CSeq: 609518180 INVITE
Server: Asterisk PBX 1.8.23.0
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH
Supported: replaces, timer
Contact: <sip:<call centre number>@ccc.ccc.ccc.ccc>
Content-Type: application/sdp
Content-Length: 260
v=0
o=root 1148542603 1148542603 IN IP4 ddd.ddd.ddd.ddd
s=Asterisk PBX 1.8.23.0
c=IN IP4 ddd.ddd.ddd.ddd
t=0 0
m=audio 11064 RTP/AVP 18 101
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20
a=sendrecv
보조 VoIP 서비스 제공업체인 에 따르면 B
문제를 일으키는 회선은 다음과 같습니다.o=root 1148542603 1148542603 IN IP4 ddd.ddd.ddd.ddd
eee.eee.eee.eee
내가 인식하지도 못하고 아무것도 모르는 IP 주소입니다.
어떤 도움이라도 대단히 감사하겠습니다.
답변1
VOIP NAT를 사용할 때 오디오가 없거나 단방향 오디오가 없는 통화는 일반적인 문제입니다. 분명히 문제의 원인을 이미 찾았습니다. 음성을 전달하는 패킷이 잘못된 주소로 전송되고 있다는 것입니다.
먼저, 방화벽을 유지 관리하는 사람들에게 확인하겠습니다. 방화벽이 그만한 가치가 있다면 의심할 여지 없이 문제를 해결하거나 추가 진단을 더 쉽게 하기 위해 할 수 있는 일이 있습니다.
실패하면 공급자에게 IAX2 트렁크를 지원하는지 문의하세요. IAX2는 SIP의 NAT 문제를 겪지 않습니다.
행운을 빌어요.