What determines the interface that SIP RTP streams over ...
-
We recently updated to new WAN interfaces at two of our locations. We use @Skyetel SIP trunks at both sites. From the Skyetel portal, I added the IP addresses of the new interfaces to the appropriate IP groups, and the health in the Skyetel portal is showing ok for both.
I disabled the old WAN port at location 1 and all SIP trunks continued to work as before with no issues.
I disabled the old WAN port at location 2 and SIP is not working. The calls are completing, both inbound and outbound, but there is no audio from either direction. I re-enabled the old WAN port and call audio immediately resumed.
My takeaway from that is that the SIP messages are correctly using the new interface, but the RTP streams are not. They seem to still be using the old interface. Is there a setting in either Skyetel or FreePBX that sets what interface the RTP streams use? I always thought that they would use the same interface that the SIP messages were using and I don't remember having to set anything specific for RTP when these sites were set up other than firewall rules for the associated port range.
-
@BraswellJay
Do you mean which physical interface in your router?
Not exactly sure what you mean by "new WAN interfaces"The SIP traffic will use the interface assigned to the gateway address your are providing the phones, either static or DHCP.
No Audio is almost ALWAYS a NAT issue. Look at your NAT settings on the old interface and compare them to the new interface.
What make and model router are you using?
-
@JasGot said in What determines the interface that SIP RTP streams over ...:
@BraswellJay
Do you mean which physical interface in your router?Yes
Not exactly sure what you mean by "new WAN interfaces"
We have new external WAN service from a different provider. We had service and our public IP was w.x.y.z
We now have a new service on a different port on the router that has public IP of a.b.c.d
The SIP trunks work fine over the original interface (w.x.y.z) but have no audio when that interface is disabled.
The SIP traffic will use the interface assigned to the gateway address your are providing the phones, either static or DHCP.
The phones are all connected to a FreePBX instance. The SIP trunks are configured from the FreePBX machine.
No Audio is almost ALWAYS a NAT issue. Look at your NAT settings on the old interface and compare them to the new interface.
What make and model router are you using?
The router is a Meraki MX67-C. I have double checked the settings here and believe that all of the port rules that apply to the original interface (w.x.y.z) also apply to the new interface (a.b.c.d)
There is something I need to update on either the Meraki, FreePBX or Skyetel that is set for the old interface but not the new but I can't seem to find it.
-
I did a asterisk message trace for each case, once with an incoming call using the original interface and then again using the new interface. The traces appear the same until I get to the following line in the asterisk dump:
ORIGINAL (working audio): (I replaced the actual IP address with w.x.y.z but the actual IP address shown is the same in both sampels)
-- Executing [s@ivr-2:5] Answer("PJSIP/Skyetel_Outbound-000030f0", "") in new stack > 0x7f516013c880 -- Strict RTP learning after remote address set to: w.x.y.z:28586 > 0x7f516013c880 -- Strict RTP switching to RTP target address w.x.y.z:28586 as source
NEW (no audio):
-- Executing [s@ivr-2:5] Answer("PJSIP/Skyetel_Outbound-000030f1", "") in new stack > 0x7f515c07ba80 -- Strict RTP learning after remote address set to: w.x.y.z:25804
When using the original interface, I see that second message about switching to RTP target address ... as source message that is not present on the new interface. This appears to be repeatable results from the samples I have run.
I'm not sure what asterisk is trying to do but the fact that it appears related to RTP suggests to me that his is the source of my problem. Does anyone know what "Strict RTP learning" and "Strict RTP switching" is? Does this pertain to any configuration parameter on the trunks maybe??
-
I finally figured out what was causing my issue.
In FreePBX under Settings->Asterisk SIP Settings there is a parameter to set the External Address used. I had this still set to the public IP of the original interface. Once I changed that parameter to the public IP of the new interface then all started to work over the new interface as expected.
-
@BraswellJay said in What determines the interface that SIP RTP streams over ...:
I finally figured out what was causing my issue.
In FreePBX under Settings->Asterisk SIP Settings there is a parameter to set the External Address used. I had this still set to the public IP of the original interface. Once I changed that parameter to the public IP of the new interface then all started to work over the new interface as expected.
Glad you sorted it out. Good work!