[asterisk-users] Weird NAT issue ...

Anselm Martin Hoffmeister anselm at hoffmeister-online.de
Mon Mar 17 09:40:12 CDT 2008


Am Montag, den 17.03.2008, 13:59 +0000 schrieb Alan Williamson:
> Afternoon one and all.
> 
> I am having some interesting fun with our Asterisk setup.
> 
> We have two CISCO handsets (7960) sitting on the same network (NAT).
> 
> Each phone can successfully originate calls.
> 
> Each phone can be called successfully from outside
> 
> Each phone can be directly called by other extensions OUTSIDE the network
> 
> 
> HOWEVER -- when those 2 phones try to call each other; the connection is 
> made, but no voice is heard.
> 
> Any advice as to where i need to look?

Hi Alan,

my guess is this has to do with the Audio path. As long as audio only
traverses the NAT router on the Cisco site, that device seems to handle
data paths quite well (you probably enabled different SIP ports for
those two devices? At least that helped me to a stable reachable phone,
which would just not work with more than one SIP 5060 phone behind a
single NAT).

The tricky part seems to be the "turnaround". One of the ciscos tries to
send audio data to the external ip address of the nat router, for the
other phone, and this might be something that the router does not
handle.

You could try to disallow direct audio between those two cisco phones by
forcing Astrisk to "stay in the audio path" (e.g. let all audio packets
go to asterisk, turnaround there and go to the other phone). This is
surely not optimal in bandwidth terms etc., but may solve such NAT
issues.

You can force Asterisk to stay in the audio path by specifying a Dial
option that requires Asterisk participation: Then it will not allow
direct connection automatically. Options requiring key presses (allow *
transfer or something, see Asterisk docs) should do.

Somehow the "reinvite" could have to do with that as well, but don't ask
me there :-)

BR,
Anselm




More information about the asterisk-users mailing list