You need to have a seperate sofia profile handling your authenticated traffic outside the lan (your remote ip phones). We call it doublenat. It makes no difference if your switch has a private IP and public IP or just private IP, it works the same.

See:
http://wiki.freeswitch.org/wiki/Example_Offsite_phones

http://wiki.freeswitch.org/wiki/General_NAT_example_scenarios

It generally works well for us. We have an FS server tied to a private IP, one interface.

Thank you,

Brian Foster
Project Manager/Owner's Rep.
Davri Investments, Inc.
O: 317-787-2686 x2102
M: 317-600-9753
E: bdfoster@davri.com
Indianapolis, Indiana

Sent from a mobile device.

On Aug 7, 2013 11:17 PM, "Vincent Xia" <gmangudai@gmail.com> wrote:
im having my FS box behind NAT, the network topology is something like:

IP PHONE A(Public IP)<------->NAT<------>FS(Private IP, with a public IP)<------->IP PHONE B(Private IP)

i was trying to have IP PHONE B able to make call to IP PHONE A and have two-way talk.

with the default FS configuration when IP PHONE B calls IP PHONE A, there's only one-way talk, A can hear B but B cannot hear A.

then i decided to use stun by modifying:
vars.xml
<X-PRE-PROCESS cmd="set" data="external_rtp_ip=stun:stun.freeswitch.org"/>  // this is the default config
<X-PRE-PROCESS cmd="set" data="external_sip_ip=stun:stun.freeswitch.org"/>  // this is the default config

internal.xml
<param name="ext-rtp-ip" value="stun:stun.freeswtich.org"/>
<param name="ext-sip-ip" value="stun:stun.freeswtich.org"/>

external.xml
<param name="ext-rtp-ip" value="stun:stun.freeswtich.org"/>
<param name="ext-sip-ip" value="stun:stun.freeswtich.org"/>

but while restarting FS, there's error reporting:
2013-08-08 10:33:58.933096 [ERR] sofia_glue.c:1043 STUN Failed! stun.freeswitch.org:3478 [Bind Error!]
2013-08-08 10:33:58.933096 [ERR] sofia.c:4074 Failed to get external ip.
2013-08-08 10:33:58.934072 [NOTICE] sofia.c:4754 Started Profile external [sofia_reg_external]
...
2013-08-08 10:34:00.859927 [ERR] sofia_glue.c:1043 STUN Failed! stun.freeswitch.org:3478 [Bind Error!]
2013-08-08 10:34:00.859927 [ERR] sofia.c:4074 Failed to get external ip.
2013-08-08 10:34:00.860904 [NOTICE] sofia.c:4754 Started Profile internal [sofia_reg_internal]

so am i still missing some configuration or anything else was wrong?


_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
http://www.cudatel.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org