I am using the sipXtapi library in a user agent. When running behind NAT (with STUN and rport enabled)and register with ser 0.9.6(basic configuration).It appears that the library detects the external address correctly and registered successful. But I see in the
Register message, in Via and Contact field some strange things, hence when ser send Invite message for Calling, the user agent do not received Invite message because the port ser send Invite to user agent do not match with the port user agent listen to.
1. sipxtapi(sipxEzphone or CrossTalk): Received stun message from stun server (Vovida stun server): Attribute: MAPPED-ADDRESS Attribute Type: MAPPED-ADDRESS (0x0001) Port: 28766 IP: 222.255.15.252 (222.255.15.252)
Send Register message to ser: Via: SIP/2.0/UDP 222.255.15.252:28766;branch=z9hG4bK-bdec6870a8f0;rport
2. Ser reply trying message: Via: SIP/2.0/UDP 222.255.15.252:28766 ;branch=z9hG4bK-bdec6870a8f0;rport=37171 Warning: 392 xxx.xxx.xxx.xxx:5060 "Noisy feedback tells: pid=29560 req_src_ip= 222.255.15.252 req_src_port=37171 in_uri=sip:xxx.xxx.xxx.xxx out_uri=sip: xxx.xxx.xxx.xxx via_cnt==1"
3. sipxtapi send Register message with Authorization: Via: SIP/2.0/UDP 222.255.15.252:37171;branch=z9hG4bK-16af3dfa110f;rport
As above, ser will send Invite or Bye message to user agent in 222.255.15.252:37171 , of course user agent using sipxtapi can not receive these message. Can I make the change in ser config? plz help me. Thanks in advance, Phan Duc
If you are behind a symmetric NAT and your stun-server is not multiplexed on SER's 5060 port (which is not the case), you should NOT use the public IP and port found with STUN, as a new connection to your SER server will get a new port on your NAT. Or, use nat_uac_test("16") to test for a mismatch in received port and contact port, which it seems you already do, as SER is sending back to the correct (received) port. g-)
Phan Van Duc wrote:
I am using the sipXtapi library in a user agent. When running behind NAT (with STUN and rport enabled)and register with ser 0.9.6(basic configuration).It appears that the library detects the external address correctly and registered successful. But I see in the
Register message, in Via and Contact field some strange things, hence when ser send Invite message for Calling, the user agent do not received Invite message because the port ser send Invite to user agent do not match with the port user agent listen to.
- sipxtapi(sipxEzphone or CrossTalk):
Received stun message from stun server (Vovida stun server): Attribute: MAPPED-ADDRESS Attribute Type: MAPPED-ADDRESS (0x0001) Port: 28766 IP: 222.255.15.252 http://222.255.15.252 (222.255.15.252 http://222.255.15.252)
Send Register message to ser: Via: SIP/2.0/UDP 222.255.15.252:28766 http://222.255.15.252:28766;branch=z9hG4bK-bdec6870a8f0;rport
- Ser reply trying message:
Via: SIP/2.0/UDP 222.255.15.252:28766 http://222.255.15.252:28766;branch=z9hG4bK-bdec6870a8f0;rport=37171 Warning: 392 xxx.xxx.xxx.xxx :5060 "Noisy feedback tells: pid=29560 req_src_ip= 222.255.15.252 http://222.255.15.252 req_src_port=37171 in_uri=sip:xxx.xxx.xxx.xxx out_uri=sip:xxx.xxx.xxx.xxx via_cnt==1"
- sipxtapi send Register message with Authorization:
Via: SIP/2.0/UDP 222.255.15.252:37171 http://222.255.15.252:37171;branch=z9hG4bK-16af3dfa110f;rport
As above, ser will send Invite or Bye message to user agent in 222.255.15.252:37171 http://222.255.15.252:37171 , of course user agent using sipxtapi can not receive these message. Can I make the change in ser config? plz help me. Thanks in advance, Phan Duc
Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers