Oct 23

Tomato firmware: Dynamic DNS with dynDNS.org

When you have a home server, you may not have the chance to be connected to the Internet using a static IP address, instead your IP address is a lease from your Internet Service Provider and may change every day depending on the setup.

So when you are in the outside world, it is not possible to guess the IP address of your computer, how could you connect to it if you wanted to?  The solution is to use a dynamic DNS forwarder like DynDNS.org.  Talking about DynDNS, many standard firmwares (Netgear, Linksys, etc.) support updating your IP when it changes.  Since I use Tomato firmware, I will explain how to configure it.

  • First, you must register on DynDNS.org by creating an account.
  • Then go into the “My Services / Host services” section of the site and add a new host name
  • The free service offers you to choose any sub-domain name from their available list.
    (ex: myhostname.getmyip.com, myhostname.kick-ass.net)
  • So you have to enter:
    • the name you want (myhostname)
    • the domain name (kick-ass.net)
    • if you want to enable wildcards
      (if enabled, anything.myhostname.kick-ass.net will be forwarded as well)
    • the service type: Host with IP address
    • leave the IP address, Tomato will update it automatically
    • leave the mail router checkbox unchecked

    • create that host…
    • Now you have to configure Tomato
    • Navigate to the router’s web administration
    • Open up the page under Basic / DDNS.
    • Tomato offers to configure up to 2 host names, let’s fill the first one:
      • IP Address: Use WAN IP xxx.xxx.xxx.xxx (recommended)
      • Service: DynDNS – Dynamic
      • Username: your account name
      • Password: your account password
      • host name: myhostname.kick-ass.net


    17 Comments so far

    1. Eric February 7th, 2009 7:54 pm

      A handy tip that I found

      Go to scheduler -> Custom 1

      ddns-update 0 force
      ddns-update 1 force

      It will automatically update your DDNS automatically and you can change the frequency.

    2. Pascal February 7th, 2009 9:07 pm

      In what situation do you need to schedule this? I never had to force an update because as soon as the router get a connection, it updates dyndns.org automatically… I guess you have an ISP that changes your IP address frequently?


    3. Jeff February 14th, 2009 4:36 am

      Eric’s tip is exactly what I was looking for. I have a problem where my no-ip domain expires because my IP address changes so infrequently. Using this method, I can ensure that the domain stays active even when my IP address is nearly static.

      Maybe I’m missing it, but where is a good reference for these kinds of commands in Tomato?

    4. Eric March 4th, 2009 7:15 pm

      I have mine set to every 12 hours. It updates both my DynDNS hosts. I have been running it like that for the last 6 months and I have not yet been banned. My IP rarely ever changes (Once a month) but if it changes, my downtime is minimal.

    5. Hari May 2nd, 2010 10:18 pm

      Does this method work if tomato router is setup in client mode behind the main router? I guess this depends on whether tomato takes the help of external services to figure out what the public IP is (like the services running on windows do).

      I currently have tomato router with the public ip and ddns works fine without a schedule. But I do get the reminders from dyndns.com to click on a link to avoid expiration. Does a schedule to do a force update of ddns avoid this (in a sense, auto extend the expiration)?

    6. Hamburg September 15th, 2010 3:28 pm

      You saved my day!


    7. Andreas January 3rd, 2011 6:55 am

      Dont use ddns-update * force .. if you are gaming or
      something like that when the update occurs you will suffer lag as
      ddds-update * force invokes a nvram commit () – writes to the flash
      memory. Use “mdu –service custom –conf ddnsx0.conf” or “mdu
      –service custom –conf ddnsx1.conf” instead.. they do not invoke a
      nvram commit () ! Just a note.. ddns-update runs the mdu call just
      like above.. but it also commits to the nvram.. (perhaps only if
      the force parameter is given, havent checked on that.. but calling
      mdu directly fixed the lag issue on PSN for me) (:

    8. Andreas January 3rd, 2011 6:57 am

      there is supposed to be two “-” before service and conf in
      the comment above.. as in (without spaces between – and -) “mdu –
      -service custom – -conf ddnsx*.conf”

    9. Celo March 4th, 2011 10:46 pm

      I did everything like you said but cannot connect. I am a newbie so please help :)

      I am trying to access my router but it does not connect. Do I type the hostname I created or my IP address in the address field of the browser?

      Do I even know what am I saying? :)

      Thank you!

    10. Celo March 5th, 2011 12:28 am

      YES! I just needed to add the 8080 in the end of the host address. It works! Thanks anyway!

    11. Pascal March 8th, 2011 5:51 pm

      Good! :)

    12. Celo March 21st, 2011 10:53 pm

      Would you mind writing up how to setup Media Server/DNLA for Tomato? I can setup fine I guess from what I googled so far but I do not know how to access it? Can you give some sample addresses of the media server/USB hard drive? I am little lost (again) :) Thanks!

    13. Celo March 22nd, 2011 10:06 am

      I guess I should be more clear. I figured it out how to access to my files when I am in my home network but I want to be able to watch my movies when I am away from such as watching from an iPhone/iPad or another computer. Thanks Pascal!

    14. […] To simplify connections use OpenDNS […]

    15. g725s June 26th, 2011 6:06 pm

      There seems to be some changes at the dyndns site.
      You show pictures of the account that show no need to input your IP and also in the firmware you have selected wildcard.

      Are those pics from dyndns from an account that you paid for or are they of a free account?

      When I sign up for an account it requires that i imput my IP Address. And also the Wildcard is only for the paid option. What is the Wildcard option you checked in the Tomato firmware?

    16. Pascal June 30th, 2011 4:54 am

      it’s been a long time since I logged in DynDNS. Sure they have done some changes since the screenshot was taken. I will verify and come back with additional information.

      Notice that Tomato supports other dynamic dns providers that could offer you more than DynDNS. It may be worth to look at.

    17. g725s July 2nd, 2011 4:01 pm

      Thanks. I found a guide at HowToGeek.com that helped. Check it out:


    Leave a comment