[Serusers] nat_ping problems

Jev jev at ecad.org
Fri Jun 25 18:15:54 CEST 2004


I just verified this again at work just to be sure, I ran with 
natping_interval set to 5 seconds, and I see the udp packets every five 
seconds on both sides, 3 minutes and 8 seconds after the register and 
the nat router starts dropping packets. :(

Thanks for your help!
-Jev

Jev wrote:
> Hi Zeus,
> 
> I'm afraid I have even tested with the nat ping interval set at 5 
> seconds, and I have had the same results.
> 
> Do you have this, or a similar set up implemented and working?
> 
> Thanks,
> -Jev
> 
> Zeus Ng wrote:
> 
>> Some (but not all) NAT devices have a UDP timeout of 60s. So, if nothing
>> comes through the port mapping within that 60s, the association will be
>> deleted from the NAT device memory. After that, any packet from the 
>> WAN side
>> with this association will be dropped.
>>
>> I notice that your nat ping interval is exactly 60s. Maybe you can try
>> something smaller than that, say 55s. I have a good result with 50s 
>> for most
>> residential ADSL routers.
>>
>> Like Andres said, the best way to deal with NAT is to turn on 
>> keep-live on
>> the UA.
>>
>> Zeus
>>
>>
>>> -----Original Message-----
>>> From: serusers-bounces at iptel.org [mailto:serusers-bounces at lists.iptel.org] 
>>> On Behalf Of Jev
>>> Sent: Friday, 25 June 2004 4:12 AM
>>> To: serusers at lists.iptel.org
>>> Subject: [Serusers] nat_ping problems
>>>
>>>
>>> Hi all,
>>>
>>> Following up on my post a couple days ago; 
>>> http://lists.iptel.org/pipermail/serusers/2004-June/008936.html
>>>
>>> I have now tested with rtpproxy/nathelper and mediaproxy and I seem 
>>> to be having the same results.
>>>
>>> As of now my test environment is as follows;
>>>
>>> I have two networks,
>>> 192.168.123.0/24    SER server
>>> 192.168.100.0/24    UAC (Grandstream HardPhone)
>>>
>>> Currently I have a D-Link NAT router separating both networks. I have 
>>> SER (CVS checkout from HEAD as of ~22nd June) running on FreeBSD 5.2.1-R
>>>
>>> I have had the same issue with both Maxims nathelper/rtproxy and 
>>> Adrians mediaproxy. The below traces are from mediaproxy, as my most 
>>> recent testing has been done here. I would like to have done the same 
>>> analysis with nathelper/rtpproxy but I live under time constraints...
>>>
>>>
>>> 09:48:06 Register From UAC through NAT to ser Completed 09:48:44 UDP 
>>> Ping Ser -> Nat Firewall -> UAC 09:49:44 UDP Ping Ser -> Nat Firewall 
>>> -> UAC 09:50:45 UDP Ping Ser -> Nat Firewall -> UAC 09:51:45 UDP Ping 
>>> Ser -> Nat Firewall -> XXXXX 09:52:46 UDP Ping Ser -> Nat Firewall -> 
>>> XXXXX 09:53:47 UDP Ping Ser -> Nat Firewall -> XXXXX 09:54:47 UDP 
>>> Ping Ser -> Nat Firewall -> XXXXX . . . . . 10:12:58 UDP Ping Ser -> 
>>> Nat Firewall -> XXXXX
>>>
>>>
>>> Example of two UDP packet from SER to Nat Firewall:
>>>
>>>
>>> 09:48:44.151998 bottom.example.com.5060 > dlinknat.example.com.60408: 
>>> udp 4 [tos 0x10]
>>> 0x0000   4510 0020 7c7d 0000 4011 8627 c0a8 7b65        E...|}.. at ..'..{e
>>> 0x0010   c0a8 7b62 13c4 ebf8 000c 8800 0000 0000        ..{b............
>>> 0x0020   0000 0000 0000 0000 0000 0000 0000             ..............
>>> 09:49:44.752972 bottom.example.com.5060 > dlinknat.example.com.60408: 
>>> udp 4 [tos 0x10]
>>> 0x0000   4510 0020 7c83 0000 4011 8621 c0a8 7b65        E...|... at ..!..{e
>>> 0x0010   c0a8 7b62 13c4 ebf8 000c 8800 0000 0000        ..{b............
>>> 0x0020   0000 0000 0000 0000 0000 0000 0000             ..............
>>>
>>> Example of the two corresponding UDP packets inside
>>> the NAT Firewall from NAT Firewall to the UAC
>>>
>>> 09:48:44.199818 bottom.example.com.5060 > 192.168.0.101.5060: udp 4 
>>> [tos 0x10]
>>> 0x0000   4510 0020 7c7d 0000 3f11 0225 c0a8 7b65        E...|}..?..%..{e
>>> 0x0010   c0a8 0065 13c4 13c4 000c db32 0000 0000        ...e.......2....
>>> 0x0020   0000 0000 0000 0000 0000 0000 0000             ..............
>>> 09:49:44.807148 bottom.example.com.5060 > 192.168.0.101.5060: udp 4 
>>> [tos 0x10]
>>> 0x0000   4510 0020 7c83 0000 3f11 021f c0a8 7b65        E...|...?.....{e
>>> 0x0010   c0a8 0065 13c4 13c4 000c db32 0000 0000        ...e.......2....
>>> 0x0020   0000 0000 0000 0000 0000 0000 0000             ..............
>>>
>>>
>>> Here is an example of two packets that get sent from
>>> SER to the NAT Firewall but never get past the NAT firewall.
>>>
>>> 10:18:01.579051 bottom.example.com.5060 > dlinknat.example.com.60408: 
>>> udp 4 [tos 0x10]
>>> 0x0000   4510 0020 8193 0000 4011 8111 c0a8 7b65        E....... at .....{e
>>> 0x0010   c0a8 7b62 13c4 ebf8 000c 8800 0000 0000        ..{b............
>>> 0x0020   0000 0000 0000 0000 0000 0000 0000             ..............
>>> 10:19:02.179829 bottom.example.com.5060 > dlinknat.example.com.60408: 
>>> udp 4 [tos 0x10]
>>> 0x0000   4510 0020 8198 0000 4011 810c c0a8 7b65        E....... at .....{e
>>> 0x0010   c0a8 7b62 13c4 ebf8 000c 8800 0000 0000        ..{b............
>>> 0x0020   0000 0000 0000 0000 0000 0000 0000             ..............
>>>
>>>
>>> It appears that the NAT firewall stops transmitting the packets, nor 
>>> does it reject them, they just silently get dropped, and ser just 
>>> continues to send them with no idea if they are getting through or 
>>> not. If I set the phone to a very low register time then everything 
>>> works fine, as it keeps the nat mapping current, and I can make calls 
>>> from outside the nat to the UAC on the inside.
>>>
>>> I have attached my current config (mediaproxy) file.
>>>
>>> Finally, I have had the same problems while Cisco IOS, and a cheap 
>>> U.S. Robotics (Lucent based I think) for natting, which makes me 
>>> assume that this is not a nat router specific issue.
>>>
>>> Is there something basic I'm missing here? How have people made this 
>>> configuration work? Is there anyone actual using nathelper/rtpproxy 
>>> or mediaproxy in production?
>>>
>>> If anyone wants more specific debug information then just let me 
>>> know! :)
>>>
>>> Thanks for your help,
>>> -Jev
>>>
>>> _______________________________________________
>>> Serusers mailing list
>>> serusers at lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
>>>
>>
>>
>>
> 
> _______________________________________________
> Serusers mailing list
> serusers at lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers




More information about the sr-users mailing list