Summary: | ASTERISK-07939: Critical - No audio issue with re-invite (wrong media address) | ||
Reporter: | Hoa Thai Duy (hoathai) | Labels: | |
Date Opened: | 2006-10-17 04:27:29 | Date Closed: | 2006-10-23 12:26:34 |
Priority: | Major | Regression? | No |
Status: | Closed/Complete | Components: | Channels/chan_sip/General |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | Hi Masters I faced the issue with canreinvite=yes in Asterisk (both 1.2.9.1 and 1.2.1.12). My diagram UA1(RFC1918) ----- ADSL1 (NAT) -------------- Asterisk (Public IP) ------------ (NAT)ADSL2 --- UA2 (RFC1918) When canreinvite=no in sip.conf for both UAs, everything is fine, RTP from both UAs are sent to Asterisk (can see using ?rtp debug?) and both UAs can talk. When canreinvite=yes and nat=yes, I faced no audio issue. After debug, I found that, when Asterisk send re-invite to both UAs, both UAs reply their OK with c=their RFC1918 address, and Asterisk send that OK parameters to other UAs Initial INVITE .... .... RE-INVITE Asterisk send re-invite to UA1 with c=Public NATed IP of ADSL2 Asterisk send re-invite to UA2 with c=Public NATed IP of ADSL1 UA1 reply OK to Asterisk with c=RFC1918 of UA1 UA2 reply OK to Asterisk with c=RFC1918 of UA2 Asterisk send OK to UA2 with c= RFC1918 of UA1 (because it received the newer c= RFC1918 of UA1) Asterisk send OK to UA1 with c= RFC1918 of UA2 (because it received the newer c= RFC1918 of UA2) MEDIA UA1 send RTP directly to c= RFC1918 of UA2 (it must be c=Public NATed IP of ADSL2 for correct audio flow) UA2 send RTP directly to c= RFC1918 of UA1 (it must be c=Public NATed IP of ADSL1 for correct audio flow) ? no audio at all ? | ||
Comments: | By: Olle Johansson (oej) 2006-10-17 07:02:00 If you have nat, you shold *not* enable re-invites! By: Hoa Thai Duy (hoathai) 2006-10-17 07:16:48 Can you point out, in my case what Asterisk is doing wrong? Or it's nature behavior of Asterisk and we can not change this behavior? By: Olle Johansson (oej) 2006-10-17 10:36:02 re-invites and NAT is a combination we do *not* support. If you have nat, you need the audio to go through Asterisk. Asterisk follows your instructions, which we might have to change so you can not enable re-invites if you have NAT support. Disable re-invites and test again. By: Hoa Thai Duy (hoathai) 2006-10-17 12:04:17 My case is exact this case. http://bugs.digium.com/view.php?id=6651 I wonder why we don't let Asterisk handle reinvite with NAT as nature behavior? I mean officially support REINVITE with NATed UAs. Follow up case ID 6551, with rtp.c patched, I can make UAs behind NAT talk directly with each other without RTP going via Asterisk. By: Olle Johansson (oej) 2006-10-17 12:29:54 hoathai: Give it a try. Many have tried and failed. Good luck. Meanwhile, I'm closing this since it's not a bug report any more. By: Serge Vecher (serge-v) 2006-10-23 12:26:33 as oej pointed out, this is not a bug, but feature request. Please assist with testing any patches in ASTERISK-6475. |