Hello,
I have done some more detailed testing today and am still seeing the problem. I am using Kamailio 3.1.3.
I added the following to the beginning of my route{ } section:
if (nat_uac_test(flags)) xlog("NAT'd\n");
I then tested the following scenarios using X-Lite 4:
* Flags = 1, TCP: NAT detected, UDP: NAT not detected * Flags = 2, TCP: NAT detected, UDP: NAT not detected * Flags = 4, TCP: NAT detected, UDP: NAT not detected * Flags = 8, TCP: NAT not detected, UDP: NAT not detected * Flags = 16, TCP: NAT detected, UDP: NAT not detected * Flags = 32, TCP: NAT not detected, UDP: NAT not detected
The REGISTERs (for TCP and UDP) sent by X-Lite were (with domain and user name obscured here):
REGISTER sip:example.com SIP/2.0 Via: SIP/2.0/TCP 192.168.0.187:15854;branch=z9hG4bK-d8754z-1c8ee3e957b12a9b-1---d8754z-;rport Max-Forwards: 70 Contact: sip:user@192.168.0.187:15854;rinstance=80c5894ae6e2ce6f;transport=TCP To: "User"sip:user@example.com From: "User"sip:user@example.com;tag=da2c294e Call-ID: NjA3YjNiNDdjZTgwNWVkYzZlOGRkZTU0NTkxNDlkZWQ. CSeq: 1 REGISTER Expires: 25 Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO User-Agent: X-Lite 4 release 4.0 stamp 58832 Content-Length: 0
REGISTER sip:example.com SIP/2.0 Via: SIP/2.0/UDP 192.168.0.187:53264;branch=z9hG4bK-d8754z-a959b8f7e5f1e349-1---d8754z-;rport Max-Forwards: 70 Contact: sip:user@192.168.0.187:53264;rinstance=d601b2ea0398567c;transport=udp To: "Peter Dunkley"sip:user@example.com From: "Peter Dunkley"sip:user@example.com;tag=753afc8a Call-ID: NjBmZmFhNjEzNTFkZGZlMWQwNzdlZjlkYTE1OTc4ZGU. CSeq: 1 REGISTER Expires: 25 Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO User-Agent: X-Lite 4 release 4.0 stamp 58832 Content-Length: 0
Regards,
Peter
On Mon, 2011-04-11 at 10:32 +0100, Peter Dunkley wrote:
I tried 63 (all), 55 (all but SDP), and 19 (from the sample configuration file).
I will try it again today.
Peter
On Sat, 2011-04-09 at 08:10 +0300, Juha Heinanen wrote:
Peter Dunkley writes:
nat_uac_test() doesn't seem to work for requests that arrive over UDP.
i don't know which param you tried, but nat_uac_test("2") and nat_uac_test("1") works for me.
-- juha