That where u need to use flags
Example:
If register -
if (nat_uac_test("4")) {
setflag(4);
force_rport();
};
if (nat_uac_test("1")) {
setflag(4);
fix_nated_contact();
};
Now you will have flag set in location
database.
Now when u have INVITE regardless of from
nat to non nat or from non nat to nat client you wil do lookup("location")
And then if any contact has flag set it
will do _OR_ for it.. and then
you can do:
if (isflagset(4))
do
rtp proxy
do not forget do rtp proxy in onreplay and
do all usual stuff flike: fix_nated_contact();fix_nated_sdp
From:
serusers-bounces@iptel.org [mailto:serusers-bounces@lists.iptel.org] On Behalf Of Tina
Sent: Wednesday, February 23, 2005
3:00 PM
To: serusers@lists.iptel.org
Subject: [Serusers] User
ser+nathelper+rtppoxy as outbound server
========================================================
----Original Message-----
From: Jiang zhou [mailto:zjiang at sipod.com]
Sent: Thursday, September 02, 2004 6:06 PM
To: Richard; serusers
at iptel.org
Subject: Re: [Serusers] User ser+nathelper+rtppoxy as outbound server
I think the normal Nathelper+rtpproxy will have a bug for public ua call a
nated ua.
ua1(pblic ip) ------->ser(nathelper+rtpproxy)----->nat----->ua2
ua2 can call ua1.
The ua2's invite sdp can be modified by nathelper and rewrite the ip/port to
rtpproxy's ip/port . So ua1 send voice to rtpproxy to ua1
Ua1 can't call ua2.
Ua1's Invite message will fail in nat_uac_test("3") test. So
ser dos't
setflag for this invite and don't use the rtpproxy.
Ua2's reply can't be modified by nathelper. So Ua1 find the reply with a
private ip.
So ua2 can't send voice to ua1, only ua1 send voice to ua2.
Is it right?
If use a ser+rtppoxy as a outbound server, I can resovle this issue.
===========================================================
I encountered into exactly the same problem:
UA1 ->SER->NAT->UA2
nathelper does not forces RTP relay upon INVITE (because there is no
need), and 200 OK SDP won't be rewrited (lookup mode). Help me
please whether I can resolve this problem in configuration file.
Thanks a lot,
Tina
Do you Yahoo!?
Take
Yahoo! Mail with you! Get it on your mobile phone.