VoIP SIP registration issue on router reboot

Discussion in 'Tomato Firmware' started by venk25, May 30, 2007.

  1. venk25

    venk25 Network Guru Member


    I have a problem whenever my WRT54G V3 router reboots - my Sipura VoIP box can't register anymore. I sniffed packets and can see that Sipura sends registration requests but never gets a response back from SIP server. I checked with my VSP (VoIP Service provider - FWIW, its VoicePulse) as this was happening and they confirm their servers are sending the response back; but it never reaches my Sipura.

    I've tried forwarding UDP 5060-5061 to Sipura's IP, enabled port-triggering, DMZ - nothing helps.

    VoicePulse support tells the router is blocking the SIP traffic going to my Sipura. And, I think that is true. My best guess is its SPI or something.

    How do I fix this problem ?

    I've been running OpenWRT before I switched to Tomato 2 weeks ago and never had this issue.

    Rebooting Sipura doesn't help either - again, sniffing packets tells that the Sipura successfully gets DHCP address from router, successfully gets DNS responses, and sends registration request - but never gets a response back.

    To get Sipura working, I need to do one of the following:
    - power down Sipura, reboot router, then power-up Sipura.
    - force a IP change for Sipura (via static IP or diff static DHCP address or any other methods)
    - power down Sipura for a min or so and then power-up again.

    The last one above makes me think that the router mistakes responses from my VSP's servers as bad-traffic and blocks it (I may not have the terminologies here ...).

    I love the features in Tomato and want to use it - but only if I can find a solution to this problem. Please help.

    Misc. info:
    - I have static DHCP and Sipura always gets the same LAN IP.
    - VoicePulse Sipura uses outbound SIP proxy; no STUN
    - My other SIP box (PAP2) isn't effected by this issue. It uses STUN and I forward ports on router
    - I noticed that when I hard-reset Sipura, it doensn't NTP-update its time (when this issue happens)
    - FWIW, I've seen this behavior with one other firmware when I was firmware-hopping - don't remember which exactly - think it was some HyperWRT flavor.
  2. nsumner

    nsumner LI Guru Member

    Interesting. I noticed after first updated to 1.07 (and for the first time). My Sipura 2100 failed to register. I resed my sipura and got the same results. I called support who said they had no outages at the time.

    I restarted my router followed by my sipura and haven't had a problem again. Maybe tommorow I will try to test in more details but it sound to me like we were hitting the same problem.
  3. Roimeister

    Roimeister LI Guru Member

    I've had similar issues with my SIP not registering except that power reset actually fixes my problem. It happens pretty infrequently when I make changes to my tomato (has happened with v1.06, 1.05, and 1.04) and it's so infrequent, I don't even remember which config mods make it happen. Reboot doesn't fix it, only a power reset.

    I just live with it LOL
  4. affer

    affer LI Guru Member

    I don't have the problem you are describing with my Azatel voip adapter. Using Tomato, DDWRT, Alchemy or various other firmware flavours.

    Anyway, three possibilities spring to mind. VP may be sending the response back on a different port (check with support or log with ethereal, etc.). Your port forwarding rule may not be working as expected (test). Or a feature may be unexpectedly (to you) blocking the reply. Did you try increasing the UDP timeout on the Advanced menu? Also check the H.323 radio button. If the problem is repeatable, perhaps try temporarily forwarding a large range of ports to the Sipura e.g. 1000-20000 & see if that resolves the problem or not.

  5. ljohnson15

    ljohnson15 LI Guru Member

    I had this exact same issue and solved it by changing the following UDP Timeout parameter:

    Under Advanced --> Conntrack / Netfilter --> UDP Timeout
    Change Unreplied from 30 seconds to 10

    In my case the NAT mapping would change to Unreplied when the router was restarted and would refresh(30 seconds before timeout) everytime the Sipura would send a NAT keepalive(default is every 15 seconds). So basically this mapping would always stay in a unreplied state until I made the above change or restarted everything as you mentioned.

    I also changed the UDP Assured timeout to 300 seconds(default is 180) and changed the Sipura's NAT keepalive setting to 120 seconds. I have been running with these settings for 6 months without issues. The Sipura keepalive change alone probably would have solved it even with the default Tomato settings but I just kept my changes as is since this was driving me crazy.

    Basically the Sipura NAT keepalive value should be greater than the Tomato UDP Unreplied Timeout value but less than the UDP Assured Timeout value. Hope this helps..
  6. venk25

    venk25 Network Guru Member

    UDP Timeout seems to be working :)

    ljohnson15: thanks for the tips - changing the UDP timeout value from 30 to 10 seconds seems to be working. My Sipura can register after the router reboots. Anyways will monitor it for a few days.

    I didn't change the UDP assured timeout values. Nor Sipura's NAT Keepalive settings. I anyway can't change Sipura's setting since its locked by VoicePulse.

    affer: thanks for your suggestions too. Just thought of letting you know:
    - VP sends response back on the same port - I have seen it when I sniffed packets, when everything was working.
    - port forwarding - I have tried forwarding other ports (like the web interface of Sipura) and all those work.
    - I've tried forwarding a large range of ports to Sipura - even tried DMZ. It didn't work.
    Anyways, thanks for the suggestions and maybe I'll try them if the problem re-occurs.
  7. njeske

    njeske Network Guru Member

    anytime i reboot my router i've had to reset my sipura. not sure of the cause. FWIW, this also happened on stock linksys firmware, and with Thibor's firmware. it may just be the nature of SIP and how it's incredibly picky with NAT traversal.
  8. -RT-

    -RT- Network Guru Member

    Thank you! :)

    This has been my only gripe with Tomato and the above change seems to have fixed it. It was a pain to have to power cycle my pap2 after every router reboot.
  9. njeske

    njeske Network Guru Member

    i've also made the setting change. will update next time i need to reboot my router.
  10. bigl2

    bigl2 Network Guru Member

    Thanks for your solution - I also had this problem and now with your propossed values everything works OK. My settings:

    On VoIP adapter:
    Line registration: 120 s
    NAT Keep Alive Intvl: 15 s (default value in my VoIP adapter)

    On router:
    UDP Timeout Unreplied: 10 s
    UDP Timeout Assured: 300 s
  11. luckman212

    luckman212 LI Guru Member

    Wow! :halo:
    Thank God I found this thread. I use VoicePulse too and was frustrated after my SIP stopped working. I think I upgraded from 1.07 to 1.11 and that's when it started but I don't use my VoIP that often so not sure exactly. Either way, emails to VoicePulse tech support were not too helpful (they suggested port triggering, forwarding directly to the VoIP adapter, but of course I had already done that!)

    I made only the 2 changes to the Conntrack settings mentioned here:

    UDP Timeout- Unreplied : 10 s
    Assured: 300

    And voila!! SIP started working almost immediately. I didn't have to reboot or unplug my Tomato nor my Linksys voip adapter. Magic!
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice