{"id":4042,"date":"2012-04-01T14:27:45","date_gmt":"2012-04-01T11:27:45","guid":{"rendered":"http:\/\/vaxxi.net\/log\/?p=4042"},"modified":"2012-04-25T20:39:31","modified_gmt":"2012-04-25T17:39:31","slug":"dynamic-dns-updates-with-tomatousb-and-linode","status":"publish","type":"post","link":"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/","title":{"rendered":"dynamic DNS updates with TomatoUSB and Linode"},"content":{"rendered":"<p>I have been using <a href=\"http:\/\/www.linode.com\/?r=8fd7925dfbed2bf152993fd9156edfe27b938a21\">Linode<\/a> for a long time. More than 2 years, actually &#8211; that&#8217;s how good their service is. Excellent packages, unrestricted access to your machine, outstanding support and community are just a few of <a href=\"http:\/\/www.linode.com\/?r=8fd7925dfbed2bf152993fd9156edfe27b938a21\">Linode<\/a>&#8216;s advantages when compared to other VPS (virtual private server) providers. Yes, they&#8217;re not the cheapest; but as you grow older and smarter, you&#8217;ll eventually learn that cheap also means bad quality \ud83d\ude42 The Internet is already full of good reviews about <a href=\"http:\/\/www.linode.com\/?r=8fd7925dfbed2bf152993fd9156edfe27b938a21\">Linode<\/a>, so this is my contribution.<\/p>\n<p><!--more--><\/p>\n<div style=\"float:left; padding:4px;\">\n<script type=\"text\/javascript\"><!--\ngoogle_ad_client = \"ca-pub-4575130219533250\";\n\/* BlogCenter *\/\ngoogle_ad_slot = \"1725336028\";\ngoogle_ad_width = 300;\ngoogle_ad_height = 250;\n\/\/-->\n<\/script><br \/>\n<script type=\"text\/javascript\"\nsrc=\"http:\/\/pagead2.googlesyndication.com\/pagead\/show_ads.js\">\n<\/script>\n<\/div>\n<p>For quite a while now, I&#8217;ve been also using happily the <a href=\"http:\/\/tomatousb.org\/\">TomatoUSB<\/a> firmware for my router. It&#8217;s rock solid and easily outperforms any factory provided firmware (have to specify though that I&#8217;m using <a href=\"http:\/\/www.4shared.com\/dir\/v1BuINP3\/Toastman_Builds.html\">Toastman<\/a>&#8216;s builds, which are very-very good).<\/p>\n<p>As many other geeks, I like to access my router remotely for various reasons. However, if you don&#8217;t have the luxury of a static IP, but you&#8217;re given a dynamic IP from your Internet Service Provider instead, you have to rely on Dynamic DNS services to do this. A dynamic DNS update means that whenever your WAN IP is changed, a request is made to a 3-rd party service which attaches your new dynamic IP to a domain name. The service was free from several providers, until recently when most of them started charging for this feature.<\/p>\n<p>So, if you have a <a href=\"http:\/\/www.linode.com\/?r=8fd7925dfbed2bf152993fd9156edfe27b938a21\">Linode<\/a> account already which includes free DNS hosting, why not use your own <a href=\"http:\/\/www.linode.com\/?r=8fd7925dfbed2bf152993fd9156edfe27b938a21\">Linode<\/a> hosted domain to take care of dynamic DNS updates ? it&#8217;s quite easy and this tutorial will show you how to do it.<\/p>\n<p>First, you have to get the Linode API key. This is found under your Linode &#8220;my profile&#8221; link and it should look like a long string of digits and letters. Let&#8217;s say it is &#8220;abc123xyz678cde450&#8221; (it&#8217;s a much longer string in real life).<\/p>\n<p>Let&#8217;s assume you have yourname.com as a domain hosted with <a href=\"http:\/\/www.linode.com\/?r=8fd7925dfbed2bf152993fd9156edfe27b938a21\">Linode<\/a> and you&#8217;ll create the subdomain router.myname.com. Go to the DNS manager and create this subdomain.<\/p>\n<p>Now, you need to retrieve the domain ID and subdomain ID &#8211; this is needed so Linode knows what subdomain you&#8217;re updating. Remember the API key you retrieved before ? we&#8217;ll use it now.<\/p>\n<p>Open a new browser window and enter this URL:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n\r\nhttps:\/\/api.linode.com\/?api_key=abc123xyz678cde450&api_action=domain.list\r\n\r\n<\/pre>\n<p>You will see an array containing all your hosted domains. We&#8217;re interested in the DOMAINID value, which is the first one listed in a row. It should look something like this:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n\r\n{&quot;ERRORARRAY&quot;:&#x5B;],&quot;DATA&quot;:\r\n&#x5B;{&quot;DOMAINID&quot;:123456,\r\n&quot;SOA_EMAIL&quot;:&quot;vaxxi@vaxxi.net&quot;,\r\n&quot;DESCRIPTION&quot;:&quot;&quot;,&quot;TTL_SEC&quot;:0,&quot;RETRY_SEC&quot;:0,&quot;EXPIRE_SEC&quot;:0,&quot;STATUS&quot;:1,\r\n&quot;DOMAIN&quot;:&quot;myname.com&quot;,&quot;TYPE&quot;:&quot;master&quot;,&quot;REFRESH_SEC&quot;:0,&quot;MASTER_IPS&quot;:&quot;&quot;},\r\n&quot;ACTION&quot;:&quot;domain.list&quot;}\r\n\r\n<\/pre>\n<p>123456 is your domain ID. Write it down and let&#8217;s proceed further: retrieving the subdomain ID. Again, open a browser window and enter this URL:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n\r\nhttps:\/\/api.linode.com\/?api_key=abc123xyz678cde450&api_action=domain.resource.list&DomainID=123456\r\n\r\n<\/pre>\n<p>You&#8217;ll see now a listing of all resources available under yourname.com. Of course, you&#8217;re interested in the &#8220;router&#8221; entry you created before. Look for a line similar to this one:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n\r\n{&quot;DOMAINID&quot;:123456,&quot;PORT&quot;:80,\r\n&quot;RESOURCEID&quot;:2998877,&quot;NAME&quot;:&quot;router&quot;,\r\n&quot;WEIGHT&quot;:5,&quot;TTL_SEC&quot;:0,\r\n&quot;TARGET&quot;:&quot;22.33.44.55&quot;,&quot;PRIORITY&quot;:10,\r\n&quot;PROTOCOL&quot;:&quot;&quot;,&quot;TYPE&quot;:&quot;A&quot;}\r\n\r\n<\/pre>\n<p>The Domain ID should be the same, obviously. Write down the resource ID. Now you have the API key, the domain ID and the resource ID. With these, we can build the dynamic DNS update URL.<\/p>\n<p>Go to the TomatoUSB interface and configure it for remote access through SSH and\/or WWW. Next, go to Basic > DDNS. Fill out the sections like this:<\/p>\n<p>Dynamic DNS &#8211;  IP address = Use WAN IP address, Auto refresh every = 1 days<br \/>\nDynamic DNS 1 &#8211; Service = Custom URL<\/p>\n<p>In the URL box, enter this string:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\n\r\nhttps:\/\/api.linode.com\/?api_key=abc123xyz678cde450&api_action=domain.resource.update&DomainID=123456&ResourceID=2998877&Target=@IP\r\n\r\n<\/pre>\n<p>Tick the &#8220;Force next update&#8221; checkbox and press Save. When the page reloads, you should see:<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nLast IP Address - Sat Mar 31 2012 21:39:02 GMT+0100 (CET): 1.2.3.4\r\nLast Result - Sat Mar 31 2012 21:39:02 GMT+0100 (CET): {&quot;ERRORARRAY&quot;:&#x5B;],&quot;DATA&quot;:{&quot;ResourceID&quot;:2998877},&quot;ACTION&quot;:&quot;domain.resource.update&quot;}\r\n<\/pre>\n<p>That means everything went well and your router is now accessible at router.myname.com through WWW\/SSH\/ping and whatever service you might have configured.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I have been using Linode for a long time. More than 2 years, actually &#8211; that&#8217;s how good their service is. Excellent packages, unrestricted access to your machine, outstanding support and community are just a few of Linode&#8216;s advantages when compared to other VPS (virtual private server) providers. Yes, they&#8217;re not the cheapest; but as<a class=\"continue-link\" href=\"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/\">&#8230;(Continue Reading)<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[181,165,164,72],"class_list":["post-4042","post","type-post","status-publish","format-standard","hentry","category-gadgets","tag-gadgets","tag-linode","tag-tomatousb","tag-www"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>dynamic DNS updates with TomatoUSB and Linode<\/title>\n<meta name=\"description\" content=\"I have been using Linode for a long time. More than 2 years, actually - that&#039;s how good their service is. Excellent packages, unrestricted access to your\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"VAXXi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/dynamic-dns-updates-with-tomatousb-and-linode\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/dynamic-dns-updates-with-tomatousb-and-linode\\\/\"},\"author\":{\"name\":\"VAXXi\",\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/#\\\/schema\\\/person\\\/94a50a82939211f624b6bf7579d2f752\"},\"headline\":\"dynamic DNS updates with TomatoUSB and Linode\",\"datePublished\":\"2012-04-01T11:27:45+00:00\",\"dateModified\":\"2012-04-25T17:39:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/dynamic-dns-updates-with-tomatousb-and-linode\\\/\"},\"wordCount\":828,\"commentCount\":3,\"keywords\":[\"gadgets\",\"linode\",\"tomatousb\",\"www\"],\"articleSection\":[\"gadgets\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/vaxxi.net\\\/log\\\/dynamic-dns-updates-with-tomatousb-and-linode\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/dynamic-dns-updates-with-tomatousb-and-linode\\\/\",\"url\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/dynamic-dns-updates-with-tomatousb-and-linode\\\/\",\"name\":\"dynamic DNS updates with TomatoUSB and Linode\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/#website\"},\"datePublished\":\"2012-04-01T11:27:45+00:00\",\"dateModified\":\"2012-04-25T17:39:31+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/#\\\/schema\\\/person\\\/94a50a82939211f624b6bf7579d2f752\"},\"description\":\"I have been using Linode for a long time. More than 2 years, actually - that's how good their service is. Excellent packages, unrestricted access to your\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/dynamic-dns-updates-with-tomatousb-and-linode\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vaxxi.net\\\/log\\\/dynamic-dns-updates-with-tomatousb-and-linode\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/dynamic-dns-updates-with-tomatousb-and-linode\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"VAXXiNET\",\"item\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"dynamic DNS updates with TomatoUSB and Linode\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/#website\",\"url\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/\",\"name\":\"\",\"description\":\"There must be some way out of here\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vaxxi.net\\\/log\\\/#\\\/schema\\\/person\\\/94a50a82939211f624b6bf7579d2f752\",\"name\":\"VAXXi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/133cb32f29e4500787dc50b17f325e4d69b66c0126b8fedd4c15a8e850f06b21?s=96&d=mm&r=x\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/133cb32f29e4500787dc50b17f325e4d69b66c0126b8fedd4c15a8e850f06b21?s=96&d=mm&r=x\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/133cb32f29e4500787dc50b17f325e4d69b66c0126b8fedd4c15a8e850f06b21?s=96&d=mm&r=x\",\"caption\":\"VAXXi\"},\"sameAs\":[\"http:\\\/\\\/vaxxi.net\\\/log\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"dynamic DNS updates with TomatoUSB and Linode","description":"I have been using Linode for a long time. More than 2 years, actually - that's how good their service is. Excellent packages, unrestricted access to your","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/","twitter_misc":{"Written by":"VAXXi","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/#article","isPartOf":{"@id":"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/"},"author":{"name":"VAXXi","@id":"https:\/\/vaxxi.net\/log\/#\/schema\/person\/94a50a82939211f624b6bf7579d2f752"},"headline":"dynamic DNS updates with TomatoUSB and Linode","datePublished":"2012-04-01T11:27:45+00:00","dateModified":"2012-04-25T17:39:31+00:00","mainEntityOfPage":{"@id":"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/"},"wordCount":828,"commentCount":3,"keywords":["gadgets","linode","tomatousb","www"],"articleSection":["gadgets"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/","url":"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/","name":"dynamic DNS updates with TomatoUSB and Linode","isPartOf":{"@id":"https:\/\/vaxxi.net\/log\/#website"},"datePublished":"2012-04-01T11:27:45+00:00","dateModified":"2012-04-25T17:39:31+00:00","author":{"@id":"https:\/\/vaxxi.net\/log\/#\/schema\/person\/94a50a82939211f624b6bf7579d2f752"},"description":"I have been using Linode for a long time. More than 2 years, actually - that's how good their service is. Excellent packages, unrestricted access to your","breadcrumb":{"@id":"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/vaxxi.net\/log\/dynamic-dns-updates-with-tomatousb-and-linode\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"VAXXiNET","item":"https:\/\/vaxxi.net\/log\/"},{"@type":"ListItem","position":2,"name":"dynamic DNS updates with TomatoUSB and Linode"}]},{"@type":"WebSite","@id":"https:\/\/vaxxi.net\/log\/#website","url":"https:\/\/vaxxi.net\/log\/","name":"","description":"There must be some way out of here","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vaxxi.net\/log\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/vaxxi.net\/log\/#\/schema\/person\/94a50a82939211f624b6bf7579d2f752","name":"VAXXi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/133cb32f29e4500787dc50b17f325e4d69b66c0126b8fedd4c15a8e850f06b21?s=96&d=mm&r=x","url":"https:\/\/secure.gravatar.com\/avatar\/133cb32f29e4500787dc50b17f325e4d69b66c0126b8fedd4c15a8e850f06b21?s=96&d=mm&r=x","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/133cb32f29e4500787dc50b17f325e4d69b66c0126b8fedd4c15a8e850f06b21?s=96&d=mm&r=x","caption":"VAXXi"},"sameAs":["http:\/\/vaxxi.net\/log\/"]}]}},"_links":{"self":[{"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/posts\/4042","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/comments?post=4042"}],"version-history":[{"count":8,"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/posts\/4042\/revisions"}],"predecessor-version":[{"id":4079,"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/posts\/4042\/revisions\/4079"}],"wp:attachment":[{"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/media?parent=4042"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/categories?post=4042"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vaxxi.net\/log\/wp-json\/wp\/v2\/tags?post=4042"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}