The problem was already discussed in http://lists.iptel.org/pipermail/serusers/2003-November/003461.html and the suggested solution was the same as your solution.
Klaus
-----Original Message----- From: dhiraj.2.bhuyan@bt.com [mailto:dhiraj.2.bhuyan@bt.com] Sent: Friday, December 12, 2003 6:39 PM To: jiri@iptel.org; sobomax@portaone.com Cc: serusers@lists.iptel.org Subject: [Serusers] nat + multiple RTP proxy
Greetings list, I spent some time looking into the rtpproxy and nathelper code. Currently, nathelper + rtpproxy will work ONLY if there is "one" RTP proxy on the path. In a scenario like -
UA1 ---- NAT ---- SER/RTP1 ----- SER/RTP2 ---- NAT --- UA2
where UA1 and UA2 are subscribed to two different SERs and are also behind NAT, RTP proxy 1 never forwards the RTP traffic from UA1 to RTP proxy 2 (because of the way it is designed) since RTP1 is waiting for at least one RTP packet from RTP proxy 2 and vice versa - hence the deadlock.
This can be fixed if the RTP proxy waits for one UDP packet from the device behind NAT, but does not wait for any packets from the device it thinks is not behind NAT before forwarding it the RTP traffic (coming from the other end). Thus in the above scenario, RTP 1 waits for at least one packet from UA1
- but does not wait for any packet from RTP2.
I am writing a patch for nathelper and rtpproxy to add this functionality (should be available by next week). Anyone - any thoughts on this?
Dhiraj Bhuyan Network Security Specialist, BT Exact Business Assurance Solutions
Tel: +44 1473 643932 Mob: +44 7962 012145 Email: dhiraj.2.bhuyan@bt.com
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers