|
|
|
@meow
I spoke too soon, the problem with receiving incoming calls is still there.
It seemed that setting the Register Expires to a lower value made as difference in terms of how long the system remained stable, so I will continue to play around with that to see if there is a sweet spot
Register expires shouldn't need to be any lower. If you have a poorly configured router that doesn't keep the NAT pinhole open long enough for UDP it could result in the inbound calls not connecting.
sbiddle:
Register expires shouldn't need to be any lower. If you have a poorly configured router that doesn't keep the NAT pinhole open long enough for UDP it could result in the inbound calls not connecting.
Here here! This is precisely the cause of that problem (intermittent failure for inbound-call signalling to get through).
The fix is to either increase the NAT table timeout in the firewall, or reduce the keepalive interval in the ATA.
@Meow
I changed the following three settings:
Voice > Line1[2] > NAT Settings > NAT Keep Alive Enable: Yes
(This is suggested by a number of overseas providers and is relevant to the previous comments in this thread)
Voice > SIP > NAT Support Parameters > Insert VIA rport: Yes
and
Voice > SIP > NAT Support Parameters > Handle VIA rport: Yes
My connection has been stable for 24 hours.
----
I have also read a suggestion that
Voice > Line1[2] > Proxy and Registration > Use DNS SRV: Yes
can also help in certain circumstances
----
I will also dial the Register Expires back up to minimise my impact on the ISP.
I hope this helps
My apologies for offering incorrect suggestions which negatively impact service providers or break the 'fair use of resources' rule that we should all abide by.
I joined up because I stumbled across a question from somebody who - like me - just wanted their phone to work and for whom there is very little concrete information available from their ISP or anyone else. As I had had some (incomplete) success I thought it appropriate to share.
I am not a network engineer, and have very little knowledge of VOIP or CISCO SPA configs. I also use a simple home router which gives no control over things like NAT tables, resources or timeouts. I completely understand why IT Professionals cringe when they see some of the things people suggest in their ignorance, but I hadn't realised that input from amateurs is not appropriate for these particular forums, I'll make sure I don't add any more to the pile.
@happynut
Your previous post indicated you've had 24+ hrs of stability now. My guess is that this is because you enabled the NAT keepalives on the ATA.
Once the OP gets his registration issue resolved then I suspect he'll need the same keep-alive setting enabled. So your input is valuable to him I would have thought!
Thanks to the config help here I was able to get it registered!
Hi All,
I'm revisiting this thread because I've lost my config after I factory reset my devices and didnt have a backup for the spa122.
I'm having an issue with inbound calls and get the "the person at extension 64XXXXXXXX isnt available". I can make outbound calls. I've enabled the NAT keepalives and followed the advice in this thread again, but I'm not able to get it working.
Are there any reasons why it isnt working this time around?
I thought it was the DND Serv which was on, so I turned all but call waiting off.
Now I'm getting "the number you have dialed is temporarily out of service if you feel this is in error please ..." and it cycles between this message in a male voice to the other mentioned above in a females voice.
Help appreciated!
Settings images:
@happynut if you're still available to help, I'd love to hear back from you.
I think it might be the edgerouter I've placed in between:
UFB ONT <> EdgeRouter X <> SPA 122
I did perform the following on the Edgerouter CLI (no help):
configure
set system conntrack timeout udp stream 180
set system conntrack timeout udp other 30
set system conntrack modules sip disable
commit
save
exit
And I set the NAT Keep Alive Intvl: 15 on the ATA (no help). Can call out, cant accept calls.
Okay I solved my problem by:
1. Setting up port forwarding for sip signalling and sip rtp packets
2. Using a Stun server
I've just spoken with a Slingshot rep on the phone. He told me that the SIP registration is hardware based, ie. MAC addresss, so a 3rd party ATA won't get connected based on the way they operate.
Does that mean a stun server would be needed for anyone going down the ATA path, or there is a way where we can "duplicate" Mac address to connect?
Thanks for the shared wisdom here.
The only MAC address Slingshot gets to see from your network is the router WAN port one. You only get MAC addresses on Ethernet packets. Your router's WAN port makes an Ethernet connection to the Slingshot router it connects to. So Slingshot can tell if the router they sent you is what is connecting to them. Of course, many good routers offer the option of spoofing the MAC addresses on their Ethernet ports. So you can replace the Slingshot router with your own preferred router and spoof its WAN port to the MAC address of the router they supplied. Then your new router can do whatever it wants with the SIP packets, and Slingshot can not tell the difference.
I did this with my FritzBox on 2Degrees back when 2Degrees did not support doing VOIP to anything except a FritzBox. I set up my Ubiquiti EdgeRouter Lite (ERL) as my main router, spoofed with my FritzBox MAC address, then set up the FritzBox behind a second ERL that spoofed being the 2Degrees router. All the VOIP traffic was forwarded to the FritzBox, along with the TR-069 protocol traffic that 2Degrees uses to provision and control the FritzBoxes. By using the second ERL to provide the FritzBox with my external (static) IPv4 address, that made the FritzBox completely unable to detect that it was not directly connecting to 2Degrees and actually had two other routers in between. The net result was that I could use VOIP on the FritzBox and use my main ERL for all the other routing. Now this is unnecessary as 2Degrees changed their policy to allow any router to be used, as long as you do not expect them to support your chosen router. But I have not bothered to change my setup as it means that if they need to change how the VOIP works, they can do that via TR-069 to the FritzBox and it will keep working without my ever needing to know about it.
I think the real problem will be Slingshot not giving out the SIP username & password. Those will be assigned to the device via auto-provisioning which in turn it based on the MAC address that the device requests the config for. Hence it's "MAC-locked" without Slingshot ever needing to see the MAC address in any packet headers (only in an auto-provisioning packet body).
I recommend the OP votes with their feet and change to a more open provider that doesn't attempt to block such things. The comment on 2Degrees' change of heart is promising. Maybe consider them instead.
I've run the Slingshot router for voice only behind a Mikrotik with no MAC spoofing and not had an issue.
|
|
|