{"id":24,"date":"2023-05-21T14:15:11","date_gmt":"2023-05-21T13:15:11","guid":{"rendered":"https:\/\/e474.ddns.net\/blog\/?p=24"},"modified":"2023-05-21T14:15:11","modified_gmt":"2023-05-21T13:15:11","slug":"setting-up-noip-com-dynamic-dns-hostnames-on-oracle-free-tier","status":"publish","type":"post","link":"https:\/\/e474.ddns.net\/blog\/2023\/05\/21\/setting-up-noip-com-dynamic-dns-hostnames-on-oracle-free-tier\/","title":{"rendered":"Setting up noip.com Dynamic DNS hostnames on Oracle Free Tier"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">This blog post shows how to set up the Dynamic Update Client (DUC) for noip.com addresses. This allows access to (free) domains handled by noip.com, such as the one used by this website.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is useful if you don&#8217;t want to buy a domain name from a domain name registrar. Also, if you have several VMs setup on Oracle Free Tier, only one can have a fixed IP address, so this is useful for any that use a dynamic IP address.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Note: noip.com used to allow 3 free hostnames per client, but I believe they have now dropped that down to 1 (for new clients). <\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Note: You need to sign up with noip.com before you can set up the Dynamic Update Client, as the set up procedure requires noip.com log in information.<\/em> <em>See: <a href=\"https:\/\/www.noip.com\/remote-access\" data-type=\"URL\" data-id=\"https:\/\/www.noip.com\/remote-access\">https:\/\/www.noip.com\/remote-access<\/a><\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You need to have the standard Linux development tools installed in order to compile and install the Dynamic Update Client. Installing the development tools is covered in a separate blog post, see: <a href=\"https:\/\/e474.ddns.net\/blog\/2023\/05\/18\/setting-up-development-tools-on-oracle-free-tier\/\" data-type=\"post\" data-id=\"26\">Setting up development tools on Oracle Free Tier<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Assuming you have the development tools installed, change to the root user with <code>sudo<\/code>, and then download the Dynamic Update Client to an appropriate folder:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$ sudo su -\n# cd\n# mkdir src\n# cd src\n# wget http:\/\/www.noip.com\/client\/linux\/noip-duc-linux.tar.gz\n# tar xf noip-duc-linux.tar.gz\n# ls\nnoip-2.1.9-1  noip-duc-linux.tar.gz\n# cd noip-2.1.9-1\n# make\n# make install\nif [ ! -d \/usr\/local\/bin ]; then mkdir -p \/usr\/local\/bin;fi\nif [ ! -d \/usr\/local\/etc ]; then mkdir -p \/usr\/local\/etc;fi\ncp noip2 \/usr\/local\/bin\/noip2\n\/usr\/local\/bin\/noip2 -C -c \/tmp\/no-ip2.conf\n\nAuto configuration for Linux client of no-ip.com.\n\nPlease enter the login\/email string for no-ip.com \n\nPlease enter the login\/email string for no-ip.com  your_account_email@gmail.com\nPlease enter the password for user 'your_account_email@gmail.com'  ****************\n\n2 hosts are registered to this account.\nDo you wish to have them all updated?[N] (y\/N)  N\nDo you wish to have host [****.ddns.net] updated?[N] (y\/N)  N\nDo you wish to have host [<strong>yourdomain<\/strong>.ddns.net] updated?[N] (y\/N)  Y\nPlease enter an update interval:[30]  \nDo you wish to run something at successful update?[N] (y\/N)  n\n\nNew configuration file '\/tmp\/no-ip2.conf' created.\n\nmv \/tmp\/no-ip2.conf \/usr\/local\/etc\/no-ip2.conf\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Check that the configuration file was created:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"># ls -l \/usr\/local\/etc\/no*\n-rw------- 1 root root 140 May 19 12:34 \/usr\/local\/etc\/no-ip2.conf\n# <\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The Dynamic Update Client is now installed and configured.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Next, a systemd unit file needs to be created and installed, so that the Dynamic Update Client will automatically start when the system starts. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Change back to the folder that holds the no-ip archive that you downloaded, and create a file named noip2.service, and add the following contents:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"># cd ..\n# ls\nnoip-2.1.9-1  noip-duc-linux.tar.gz\n# vi noip2.service\n# Simple No-ip.com Dynamic DNS Updater\n#\n# By Nathan Giesbrecht (http:\/\/nathangiesbrecht.com)\n#\n# 1) Install binary as described in no-ip.com's source file (assuming results in \/usr\/local\/bin)\n# 2) Run sudo \/usr\/local\/bin\/noip2 -C to generate configuration file\n# 3) Copy this file noip2.service to \/etc\/systemd\/system\/\n# 4) Execute `sudo systemctl enable noip2`\n# 5) Execute `sudo systemctl start noip2`\n#\n# systemd supports lots of fancy features, look here (and linked docs) for a full list:\n#   http:\/\/www.freedesktop.org\/software\/systemd\/man\/systemd.exec.html\n\n[Unit]\nDescription=No-ip.com dynamic IP address updater\nWants=network-online.target\nAfter=network-online.target\n#After=syslog.target\n\n[Install]\nWantedBy=multi-user.target\nAlias=noip.service\n\n[Service]\n# Start main service\nExecStart=\/usr\/local\/bin\/noip2\nRestartSec=30\nRestart=on-failure\nType=forking\nTimeoutStartSec=30<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Save the file, and then install it with:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"># cp noip2.service \/etc\/systemd\/system\/\n# systemctl enable noip2\nCreated symlink \/etc\/systemd\/system\/noip.service \u2192 \/etc\/systemd\/system\/noip2.service.\nCreated symlink \/etc\/systemd\/system\/multi-user.target.wants\/noip2.service \u2192 \/etc\/systemd\/system\/noip2.service.\n# systemctl start noip2<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Check that the service starts correctly:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"># systemctl status noip2\n<span style=\"font-weight: bold; color: rgb(84, 255, 84);\">\u25cf<\/span> noip2.service - No-ip.com dynamic IP address updater\n &nbsp;&nbsp;&nbsp;&nbsp;Loaded: loaded (\/etc\/systemd\/system\/noip2.service; enabled; vendor preset: enabled)\n &nbsp;&nbsp;&nbsp;&nbsp;Active: <span style=\"font-weight: bold; color: rgb(84, 255, 84);\">active (running)<\/span> since Fri 2023-05-19 12:54:44 UTC; 1min 2s ago\n &nbsp;&nbsp;&nbsp;Process: 11178 ExecStart=\/usr\/local\/bin\/noip2 (code=exited, status=0\/SUCCESS)\n &nbsp;&nbsp;Main PID: 11179 (noip2)\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tasks: 1 (limit: 1074)\n &nbsp;&nbsp;&nbsp;&nbsp;Memory: 228.0K\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CPU: 2ms\n &nbsp;&nbsp;&nbsp;&nbsp;CGroup: \/system.slice\/noip2.service\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u2514\u250011179 \/usr\/local\/bin\/noip2\n\nMay 19 12:54:44 uh1 systemd[1]: Starting No-ip.com dynamic IP address updater...\nMay 19 12:54:44 uh1 noip2[11179]: v2.1.9 daemon started with NAT enabled\nMay 19 12:54:44 uh1 systemd[1]: Started No-ip.com dynamic IP address updater.\nMay 19 12:54:46 uh1 noip2[11179]: <strong>yourdomain<\/strong>.ddns.net set to <strong>yourdomain<\/strong>.ip.address<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">There&#8217;s more information at: <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.noip.com\/support\/knowledgebase\/installing-the-linux-dynamic-update-client-on-ubuntu\/\">https:\/\/www.noip.com\/support\/knowledgebase\/installing-the-linux-dynamic-update-client-on-ubuntu\/<\/a> &#8211; the latest Dynamic Update Client has been re-written in Rust, but I am sticking with the C implementation for the moment.<\/li>\n\n\n\n<li>The original website mentioned in the systemd unit file is currently unavailable, but the documentation for configuring one is at: <a href=\"https:\/\/www.freedesktop.org\/software\/systemd\/man\/systemd.exec.html\">https:\/\/www.freedesktop.org\/software\/systemd\/man\/systemd.exec.html<\/a><\/li>\n\n\n\n<li>No-ip signup is at: <a href=\"https:\/\/www.noip.com\/remote-access\">https:\/\/www.noip.com\/remote-access<\/a><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This blog post shows how to set up the Dynamic Update Client (DUC) for noip.com addresses. This allows access to (free) domains handled by noip.com, such as the one used by this website. This is useful if you don&#8217;t want to buy a domain name from a domain name registrar. Also, if you have several [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,8],"tags":[15,10],"class_list":["post-24","post","type-post","status-publish","format-standard","hentry","category-oracle-free-tier","category-technology","tag-dynamic-dns","tag-oracle-free-tier"],"_links":{"self":[{"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/posts\/24","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/comments?post=24"}],"version-history":[{"count":8,"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/posts\/24\/revisions"}],"predecessor-version":[{"id":35,"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/posts\/24\/revisions\/35"}],"wp:attachment":[{"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/media?parent=24"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/categories?post=24"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/e474.ddns.net\/blog\/wp-json\/wp\/v2\/tags?post=24"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}