<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>networking &#8211; Rentrex Ltd.</title>
	<atom:link href="https://www.rentrex.ca/tag/networking/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.rentrex.ca</link>
	<description>IT Services</description>
	<lastBuildDate>Wed, 27 Sep 2023 13:21:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.5.5</generator>

<image>
	<url>https://www.rentrex.ca/wp-content/uploads/2023/02/RentrexIconComputer-150x150.png</url>
	<title>networking &#8211; Rentrex Ltd.</title>
	<link>https://www.rentrex.ca</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Forwarding URLs GoDaddy</title>
		<link>https://www.rentrex.ca/how-to/forwarding-urls-godaddy/</link>
					<comments>https://www.rentrex.ca/how-to/forwarding-urls-godaddy/#respond</comments>
		
		<dc:creator><![CDATA[Adriano Salvatore]]></dc:creator>
		<pubDate>Wed, 01 Mar 2023 21:43:00 +0000</pubDate>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[GoDaddy]]></category>
		<category><![CDATA[networking]]></category>
		<guid isPermaLink="false">https://www.rentrex.ca/?p=441</guid>

					<description><![CDATA[If you have a secondary domain that you&#8217;d like to use for your website in addition to your primary domain, forwarding will have the secondary domain redirect to the primary. For example if your website is &#8220;mysite.com&#8221;, and you have purchased &#8220;my-site.com&#8221; as well, &#8220;my-site.com&#8221; can be forwarded so when it&#8217;s entered the user is [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>If you have a secondary domain that you&#8217;d like to use for your website in addition to your primary domain, forwarding will have the secondary domain redirect to the primary.</p>



<p>For example if your website is &#8220;mysite.com&#8221;, and you have purchased &#8220;my-site.com&#8221; as well, &#8220;my-site.com&#8221; can be forwarded so when it&#8217;s entered the user is automatically directed to your primary domain.</p>



<p>First start by logging into GoDaddy&#8217;s website.</p>



<div id="gspb_image-id-gsbp-103bb686-6aec" class="gspb_image gspb_image-id-gsbp-103bb686-6aec wp-block-greenshift-blocks-image"><img fetchpriority="high" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2023-03-01_16-28.png" data-src="" alt="" width="2476" height="639"/></div>



<p>Then click the account icon on the top right hand of the screen. From the menu that appears select &#8220;My Products&#8221;.</p>



<div id="gspb_image-id-gsbp-cc0971e0-5a72" class="gspb_image gspb_image-id-gsbp-cc0971e0-5a72 wp-block-greenshift-blocks-image"><img decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2023-03-01_16-30.png" data-src="" alt="" width="741" height="661"/></div>



<p>Click the &#8220;My Account&#8221; button on the left hand side of the screen and then select &#8220;Domains&#8221;.</p>



<div id="gspb_image-id-gsbp-57846637-c49d" class="gspb_image gspb_image-id-gsbp-57846637-c49d wp-block-greenshift-blocks-image"><img decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2023-03-01_16-37.png" data-src="" alt="" width="2395" height="1909"/></div>



<p>Here you will see the portfolio of all domains owned by the account. On the domain you&#8217;d like to forward click the three dots to bring up the menu, and then select &#8220;Edit DNS&#8221;</p>



<div id="gspb_image-id-gsbp-23b9df74-e41d" class="gspb_image gspb_image-id-gsbp-23b9df74-e41d wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2023-03-01_16-37_1.png" data-src="" alt="" width="2443" height="1290"/></div>



<p>The DNS Management page will then be shown.</p>



<div id="gspb_image-id-gsbp-e4be1c59-6378" class="gspb_image gspb_image-id-gsbp-e4be1c59-6378 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2023-03-01_16-38.png" data-src="" alt="" width="3357" height="951"/></div>



<p>Scroll down to find the Forwarding section. First, on the &#8220;Domain&#8221; row click &#8220;Add Forwarding&#8221;</p>



<div id="gspb_image-id-gsbp-01c77fd6-7e4b" class="gspb_image gspb_image-id-gsbp-01c77fd6-7e4b wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2023-03-01_16-38_1.png" data-src="" alt="" width="2506" height="1524"/></div>



<p>A popup will appear that prompts for forwarding details. For this example we will forward to google.com. Leave the forward type as &#8220;http://&#8221;, accept the default forward type of &#8220;Permanent&#8221;. Don&#8217;t worry, it&#8217;s still possible to modify or change the forwarding in the future as needed. </p>



<p>Once all the details have been filled in click &#8220;Save&#8221;</p>



<div id="gspb_image-id-gsbp-2e9cb10f-c7dd" class="gspb_image gspb_image-id-gsbp-2e9cb10f-c7dd wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2023-03-01_16-39.png" data-src="" alt="" width="3388" height="1350"/></div>



<p>A new row will appear showing that domain, forwarding destination and type. At this point &#8220;domaintoforward.com&#8221; will forward to &#8220;google.com&#8221;, however we also need to set up &#8220;www.domaintoforward.com&#8221;. Do so by clicking the &#8220;Add Forwarding&#8221; button on the &#8220;Subdomains&#8221; row.</p>



<div id="gspb_image-id-gsbp-4dd4c4ce-2579" class="gspb_image gspb_image-id-gsbp-4dd4c4ce-2579 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2023-03-01_16-39_1.png" data-src="" alt="" width="3033" height="1710"/></div>



<p>Specify the subdomain to forward from as &#8220;www&#8221;, leave the type as &#8220;http://&#8221;, and then fill out the target to forward to. Leave type as &#8220;Permanent&#8221; and then click &#8220;Save&#8221;.</p>



<div id="gspb_image-id-gsbp-b4a76e09-1441" class="gspb_image gspb_image-id-gsbp-b4a76e09-1441 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2023-03-01_16-40.png" data-src="" alt="" width="3450" height="1516"/></div>



<p>That&#8217;s it! The forwarding section should look similar to the above.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.rentrex.ca/how-to/forwarding-urls-godaddy/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How To Setup Wireguard VPN</title>
		<link>https://www.rentrex.ca/how-to/how-to-setup-wireguard-vpn/</link>
					<comments>https://www.rentrex.ca/how-to/how-to-setup-wireguard-vpn/#respond</comments>
		
		<dc:creator><![CDATA[Adriano Salvatore]]></dc:creator>
		<pubDate>Fri, 13 May 2022 06:54:11 +0000</pubDate>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[vpn]]></category>
		<guid isPermaLink="false">https://www.rentrex.ca/?p=281</guid>

					<description><![CDATA[Wireguard is an extremely powerful VPN prototcol that is lightweight, open source, and extremely fast. Wireguard VPN can provide a very effective means of accessing your network remotely. Allowing secure acess to computers, printers, network storage devices, security camera systems, and more. This guide will walk through setting up WireGuard on a debian based system. [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Wireguard is an extremely powerful VPN prototcol that is lightweight, open source, and extremely fast.</p>



<p>Wireguard VPN can provide a very effective means of accessing your network remotely. Allowing secure acess to computers, printers, network storage devices, security camera systems, and more.</p>



<p>This guide will walk through setting up WireGuard on a debian based system.</p>



<h2 class="wp-block-heading" id="installing-wireguard">Installing WireGuard&nbsp;</h2>



<p>To install WireGuard, first ensure that your system is up to date. Then from the terminal install wireguard using your package manager of choice such as below. We will also install qrencode. Though this is not needed it is helpful for configuring mobile devices.</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>sudo apt-get install wireguard
sudo apt-get install wireguard-tools
sudo apt-get install qrencode</code></pre>



<h2 class="wp-block-heading" id="setting-up-server-configuration">Setting Up Server Configuration</h2>



<p>The keys and configuration will be generated as the root user, and file permissions will be set so that the keys and config are kept secure. Keys and config will be generated within the &#8220;/etc/wireguard&#8221; folder. To navigate to the folder and change the permission execute the commands below:</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>sudo -i
cd /etc/wireguard
umask 077</code></pre>



<p>We must create our configuration file. First ensure you have not exited sudo, and are still in the &#8220;/etc/wireguard&#8221; directory. Then the file can be created using nano (or your favorite text editor) as below:</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>nano wg0.conf</code></pre>



<p>Using the text editor populate the file with the following:</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>&#91;Interface]
Address = 10.6.0.1/24
ListenPort = 51820</code></pre>



<h2 class="wp-block-heading" id="generating-server-keys">Generating Server Keys</h2>



<p>Use the below command to generate the server private and public keys.</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>wg genkey | tee server.key | wg pubkey &gt; server.pub </code></pre>



<p>Then add the private key to the configuration file using the command below:</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>echo "PrivateKey = $(cat server.key)" &gt;&gt; wg0.conf </code></pre>



<h2 class="wp-block-heading" id="registering-the-server">Registering The Server</h2>



<p>To make it easy to start and restart the server, and ensure wireguard runs on boot we will register it as a service. Use the commands below (as root) to register and start the server.</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>systemctl enable wg-quick@wg0.service
systemctl daemon-reload
systemctl start wg-quick@wg0</code></pre>



<h2 class="wp-block-heading" id="generating-client-keys">Generating Client Keys</h2>



<p>The keys will be generated as the root user, and file permissions will be set so that the keys are kept secure. Keys will be generated within the &#8220;/etc/wireguard&#8221; folder. If you are no longer in the wireguard directory, and/or have exited sudo. Repeat the command below, otherwise proceed to the next step.</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>sudo -i
cd /etc/wireguard
umask 077</code></pre>



<p>Now that we&#8217;ve navigated to the wireguard directory as the root user and set our permissions we can proceed to generate the key(s). This step will be repeated for every client that a key is to be generated for.</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>client="clientname"
wg genkey | tee "${client}.key" | wg pubkey &gt; "${client}.pub" </code></pre>



<p>Now that we&#8217;ve generated our public and private key pairs we will generate our pre-shared key (PSK). This provides additional security. A unique pre-shared key should be generated for each client. In this step we will use the same name as defined by the client variable previously.</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>wg genpsk &gt; "${client}.psk" </code></pre>



<h2 class="wp-block-heading" id="adding-client-s-to-server">Adding Client(s) to Server</h2>



<p>Our newly generated keys must be added now to the server configuration. If the server already has a clients configured this process will add additional clients without overwriting existing ones. Generally the server configuration file will be called &#8220;wg0.conf&#8221;. If this is not the case, replace &#8220;wg0.conf&#8221; with the name of your configuration file.</p>



<p>Within the &#8220;AllowedIPs&#8221; section, the &#8220;<strong>x&#8221;</strong> must be replaced with the IP address to use for the client. These addresses should be in sequence starting at &#8220;2&#8221; (as &#8220;1&#8221; will be used for the server). E.g., if you are adding your first client below replace &#8220;<strong>x</strong>&#8221; with &#8220;2&#8221;.</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>echo "### Begin ${client} ###" &gt;&gt; wg0.conf
echo "&#91;Peer]" &gt;&gt; wg0.conf
echo "PublicKey = $(cat "${client}.pub")" &gt;&gt; wg0.conf
echo "PresharedKey = $(cat "${client}.psk")" &gt;&gt; wg0.conf
echo "AllowedIPs = 10.6.0.x" &gt;&gt; wg0.conf </code></pre>



<p>To load the client configuration the server must be restarted.</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code> systemctl restart wg-quick@wg0</code></pre>



<p>Check that the server is running and configured correctly using the command below:</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>wg </code></pre>



<h2 class="wp-block-heading" id="setting-up-client-configuration-files">Setting Up Client Configuration Files</h2>



<p>First we&#8217;ll create a configuration file for the new client below and add the previously generated private key to it. Replace &#8220;<strong>x</strong>&#8221; with the same number used previously to define this client. For the DNS line, supply the IP address of whatever handles DNS requests for your network (this may be your router). Replace &#8220;*YOUR PUBLIC IP*&#8221; with your public IP address. If you do not have a static IP look into a dynamic DNS service.</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>echo "&#91;Interface]" > "${client}.conf"
echo "Address = 10.6.0.x/24" >> "${client}.conf"
echo "DNS = x.x.x.x" >> "${client}.conf"
echo "MTU = 1420" >> "${client}.conf"
echo "PrivateKey = $(cat "${client}.key")" >> "${client}.conf"
echo "&#91;Peer]" >> "${client}.conf"
echo "AllowedIPs = 0.0.0.0/24" >> "${client}.conf"
echo "Endpoint = *YOUR PUBLIC IP*:51820" >> "${client}.conf"
echo "PersistentKeepalive = 25" >> "${client}.conf"
echo "PublicKey = $(cat server.pub)" >> "${client}.conf"
echo "PresharedKey = $(cat "${client}.psk")" >> "${client}.conf" </code></pre>



<h2 class="wp-block-heading" id="copying-configuration-to-client">Copying Configuration To Client</h2>



<p>If the client is another computer we can simply copy the &#8220;.conf&#8221; file to it. The windows wireguard client makes it easy to import a &#8220;.conf&#8221; file, which is covered in the next section.</p>



<p>Alternatively, if you are using a mobile client (i.e. a smartphone) the configuration can be transfered using a QR code. To do so, use the command below (qrencode must have been installed prior).</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>qrencode -t ansiutf8 -r "${client}.conf" </code></pre>



<p>This will produce a QR code that is scannable from within your terminal session.</p>



<h2 class="wp-block-heading" id="windows-client-setup">Windows Client Setup</h2>



<p>To setup the windows client start by downloading and installing it. The installer can be found at: <a href="https://www.wireguard.com/install/">https://www.wireguard.com/install/</a></p>



<div id="gspb_image-id-gsbp-aae81fcc-8ad4" class="gspb_image gspb_image-id-gsbp-aae81fcc-8ad4 gssimglightbox wp-block-greenshift-blocks-image"><img decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022-06-13-09_29_54-WireGuard.png" data-src="" alt=""/></div>



<p>After install, launch the wireguard client and then click &#8220;Import tunnel(s) from file&#8221; to import the configuration file that was exported in the last step.</p>



<div id="gspb_image-id-gsbp-285a76a7-79ff" class="gspb_image gspb_image-id-gsbp-285a76a7-79ff wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022_06_13_09_37_53_WireGuard.png" data-src="" alt="" width="660" height="517"/></div>



<p>That&#8217;s it! You&#8217;ll then see the details loaded in automatically from the config file. Simply click &#8220;Activate&#8221; to establish the VPN connection.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.rentrex.ca/how-to/how-to-setup-wireguard-vpn/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Syncing Files and Backup Solutions (Syncthing)</title>
		<link>https://www.rentrex.ca/how-to/syncing-files-and-backup-solutions-syncthing/</link>
					<comments>https://www.rentrex.ca/how-to/syncing-files-and-backup-solutions-syncthing/#respond</comments>
		
		<dc:creator><![CDATA[Adriano Salvatore]]></dc:creator>
		<pubDate>Thu, 17 Mar 2022 19:11:46 +0000</pubDate>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[networking]]></category>
		<guid isPermaLink="false">https://www.rentrex.ca/?p=374</guid>

					<description><![CDATA[There are many file availability solutions, most of these are some type of cloud service like Google Drive, Office 365, etc. These solutions work great for documents and spreadsheets, though aren&#8217;t always the greatest fit for other file types like CAD drawings. Syncthing For these other file types, and when the devices you need to [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>There are many file availability solutions, most of these are some type of cloud service like Google Drive, Office 365, etc. These solutions work great for documents and spreadsheets, though aren&#8217;t always the greatest fit for other file types like CAD drawings.</p>



<h2 class="wp-block-heading" id="syncthing">Syncthing</h2>



<p>For these other file types, and when the devices you need to synchronize files between might not always be connected to the internet, synchthing can be a great solution.</p>



<p>Syncthing allows multiple computers to synchronize files in a given folder. Any number of devices can be added to the shared folder, and multiple folders may also be shared. Syncthing works across different platforms (Windows, Mac, Linux), and also has an android app.</p>



<h2 class="wp-block-heading" id="how-it-works">How it Works</h2>



<p>Syncthing stores files locally on each machine with a copy of the shared folder. Files are synchronized over the local network, or internet. Transfers can occur directly from computer to computer or via a relay depending on the network configuration.</p>



<p>This means that files in a syncthing share are always available which can be of huge benefit for computers that travel to job sites where internet connection may not be available.</p>



<h2 class="wp-block-heading" id="install">Install</h2>



<p>Start by navigating to: <a href="https://syncthing.net/downloads/">https://syncthing.net/downloads/</a></p>



<div id="gspb_image-id-gsbp-8a997c66-ab2e" class="gspb_image gspb_image-id-gsbp-8a997c66-ab2e wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022-03-25_01-42-1.png" data-src="" alt="" width="1142" height="609"/></div>



<p>Select the appropriate version above for your operating system. On many Linux distributions Syncthing will already be in your repository, and installing it will setup a daemon to run at boot.</p>



<p>For windows download the zip folder and extract it at a location of your choice (e.g. C:\Program Files\Syncthing). To have Syncthing run automatically on boot shortcut to Syncthing from the startup folder, add a task in Task Scheduler to run it at boot, or similar alternative will need to be setup.</p>



<h2 class="wp-block-heading" id="setup">Setup</h2>



<p>Syncthing is managed through a web interface. This is beneficial as it allows GUI setup on headless servers and for easy remote management. Access to this interface can be password protected, though it is best to limit access with firewall rules. Exposing it to the internet is undesirable in the majority of cases.</p>



<p>If Syncthing is installed and running it can be accessed by navigating to the following on the computer it is installed on. (Unless you&#8217;ve specified another port, 8384 is default)</p>



<p><a href="http://127.0.0.1:8384/">http://127.0.0.1:8384/</a></p>



<div id="gspb_image-id-gsbp-15d56374-5ec0" class="gspb_image gspb_image-id-gsbp-15d56374-5ec0 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022-03-17-08_45_32-Window.png" data-src="" alt="" width="1158" height="763"/></div>



<h2 class="wp-block-heading" id="adding-a-folder">Adding a Folder</h2>



<div id="gspb_image-id-gsbp-bfbbd440-4a1d" class="gspb_image gspb_image-id-gsbp-bfbbd440-4a1d wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022_03_17_08_48_09_Window.png" data-src="" alt="" width="586" height="203"/></div>



<p>To add a folder start by clicking on the &#8220;Add Folder&#8221; button. The &#8220;Add Folder&#8221; window will then appear.</p>



<div id="gspb_image-id-gsbp-922ef522-56f2" class="gspb_image gspb_image-id-gsbp-922ef522-56f2 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022-03-17-09_21_03-Window.png" data-src="" alt="" width="919" height="618"/></div>



<p>Within the &#8220;Add Folder&#8221; window, start by setting the &#8220;Folder Label&#8221;, this can be anything (that&#8217;s valid as a windows folder, so some special characters cannot be included). The folder ID will be generated automatically as some string of alpha and numeric characters separated by a hyphen.</p>



<p>This is all that&#8217;s needed to setup a folder. If no File Versioning is required simply click &#8220;Save&#8221;. Otherwise navigate to the &#8220;File Versioning&#8221; tab. Additionally if you have already added other devices, the &#8220;Sharing&#8221; tab will show them and allow the new folder to be shared with them.</p>



<div id="gspb_image-id-gsbp-3d901e47-01d6" class="gspb_image gspb_image-id-gsbp-3d901e47-01d6 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022-03-17-08_57_30-Window.png" data-src="" alt="" width="926" height="392"/></div>



<p>File Versioning allows this device to store multiple copies of a file. This can be very beneficial in the case that something was changed by mistake. Trash Can, or Simple File Versioning are likely the best picks in most cases. Read more about versioning below:</p>



<p><a href="https://docs.syncthing.net/users/versioning.html">https://docs.syncthing.net/users/versioning.html</a></p>



<p>Once done setting up the versioning requirements. Press &#8220;Save&#8221;.</p>



<h2 class="wp-block-heading" id="adding-a-remote-device">Adding a Remote Device</h2>



<p>Syncthing adds devices by their unique ID.</p>



<div id="gspb_image-id-gsbp-d91bcc7b-8c39" class="gspb_image gspb_image-id-gsbp-d91bcc7b-8c39 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022-03-17-09_33_04-Window.png" data-src="" alt="" width="506" height="177"/></div>



<p>To access the ID of your current device. Navigate to &#8220;Actions &gt; Show ID&#8221;</p>



<div id="gspb_image-id-gsbp-0c85fe21-1659" class="gspb_image gspb_image-id-gsbp-0c85fe21-1659 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/Untitled.png" data-src="" alt="" width="912" height="594"/></div>



<p>The ID code for your device, and a QR code will be shown. Save this code securely as we&#8217;ll use it on another device to link them together.</p>



<div id="gspb_image-id-gsbp-1b235672-c400" class="gspb_image gspb_image-id-gsbp-1b235672-c400 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022-03-17-09_41_52-Window.png" data-src="" alt="" width="609" height="280"/></div>



<p>On another device (different from the one we got the code from). On the main page select &#8220;Add Remote Device&#8221; to add a new device.</p>



<div id="gspb_image-id-gsbp-b4fa5290-114f" class="gspb_image gspb_image-id-gsbp-b4fa5290-114f wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2022-03-17-09_45_15-Window.png" data-src="" alt="" width="972" height="441"/></div>



<p>Paste the Device ID of the different device in, then give the device a memorable name. Additional settings can be modified from the &#8220;Sharing&#8221; and &#8220;Advanced&#8221; tabs. Sharing will allow sharing existing folders. A setting called &#8220;Introducer&#8221; is available to have the device automatically share all of its connected devices. This makes setup for many devices much quicker.</p>



<p>Advanced provides connection settings that may be beneficial in specific cases, such as specifying a connection address directly. Though these are not needed for basic setup.</p>



<p>Once completed with setup click &#8220;Save&#8221;.</p>



<h2 class="wp-block-heading" id="usage">Usage</h2>



<p>Syncthing is now setup and will allow for synchronizing files between two machines. This can be extended by adding more machines to a folder, and to have multiple folders. Syncthing is not a backup solution alone, and a proper backup procedure on at least one of the devices that host a syncthing folder is recommended (though all is preferable). Syncthing does provide another layer in a backup solution however, and provides great availability for files across multiple devices.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.rentrex.ca/how-to/syncing-files-and-backup-solutions-syncthing/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Dynamic DNS and GoDaddy</title>
		<link>https://www.rentrex.ca/how-to/dynamic-dns-and-godaddy/</link>
					<comments>https://www.rentrex.ca/how-to/dynamic-dns-and-godaddy/#respond</comments>
		
		<dc:creator><![CDATA[Adriano Salvatore]]></dc:creator>
		<pubDate>Wed, 09 Feb 2022 21:07:42 +0000</pubDate>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[GoDaddy]]></category>
		<category><![CDATA[networking]]></category>
		<guid isPermaLink="false">https://www.rentrex.ca/?p=426</guid>

					<description><![CDATA[GoDaddy is an affordable host that&#8217;s commonly relied upon for small businesses needs. Economy packages are great for hosting websites, web applications, email, and other services though (at the time of writing) Dynamic DNS capabilities are unfortunately not offered directly. What is Dynamic DNS? Generally unless you&#8217;re paying extra for a Static-IP address at your [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>GoDaddy is an affordable host that&#8217;s commonly relied upon for small businesses needs. Economy packages are great for hosting websites, web applications, email, and other services though (at the time of writing) Dynamic DNS capabilities are unfortunately not offered directly.</p>



<h2 class="wp-block-heading" id="what-is-dynamic-dns"><strong>What is Dynamic DNS?</strong></h2>



<p>Generally unless you&#8217;re paying extra for a Static-IP address at your home or office your Internet Service Provider will assign you a dynamic IP address. Dynamic IP addresses can make it tough for you to access devices from your home or office remotely (e.g. workstations, printers, file servers, etc).</p>



<p>If you have a need to access these devices, either a Static-IP, or Dynamic DNS is required. Dynamic DNS relies on a device in your network notifying the DNS server that your external IP has changed and having it update the DNS record to point to your new external IP address.</p>



<p>The basic process for most Dynamic DNS systems is shown below.</p>



<div id="gspb_image-id-gsbp-1a969584-dfc3" class="gspb_image gspb_image-id-gsbp-1a969584-dfc3 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/simpleflow.png" data-src="" alt="" width="463" height="200"/></div>



<h2 class="wp-block-heading" id="requirements"><strong>Requirements</strong></h2>



<p>A GoDaddy domain name, and an internal device to act as a client (i.e. server, workstation computer, router) to be used for updating the GoDaddy DNS records.</p>



<h2 class="wp-block-heading" id="creating-the-dns-record"><strong>Creating the DNS Record</strong></h2>



<p>The first thing we need to do is create the new DNS record.</p>



<div id="gspb_image-id-gsbp-b217afa9-b6f6" class="gspb_image gspb_image-id-gsbp-b217afa9-b6f6 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/1DnsManagement.png" data-src="" alt="" width="938" height="240"/></div>



<p>Login to GoDaddy and navigate to the &#8220;All Products and Services&#8221; section. Then Click &#8220;DNS&#8221;. If you have multiple domain names ensure that you are working with the correct one.</p>



<div id="gspb_image-id-gsbp-987039a2-78cd" class="gspb_image gspb_image-id-gsbp-987039a2-78cd wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2dnsmanagement.png" data-src="" alt="" width="949" height="508"/></div>



<p>Click &#8220;Add&#8221; to create a new DNS record.</p>



<div id="gspb_image-id-gsbp-c1747511-026c" class="gspb_image gspb_image-id-gsbp-c1747511-026c wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/3dnssetting.png" data-src="" alt="" width="899" height="480"/></div>



<p>Fill the record in like above. The type must be &#8220;A&#8221;. The &#8220;Name&#8221; will be the subdomain you will use, this can be changed as desired (e.g. gateway, office, etc). Fill the value as &#8220;0.0.0.0&#8221;, this will be changed once we link our Dynamic DNS client. Set the &#8220;TTL&#8221; to either &#8220;1 Hour&#8221; as shown, or &#8220;1/2 Hour&#8221;. Longer times will result in a lapse of service when your Dynamic IP address changes.</p>



<h2 class="wp-block-heading" id="creating-our-godaddy-api-key"><strong>Creating our GoDaddy API Key</strong></h2>



<p>Now we will create the API key that our client will use to securely connect to GoDaddy to update the DNS.</p>



<p>Navigate to: <a href="https://developer.godaddy.com/keys">https://developer.godaddy.com/keys</a></p>



<div id="gspb_image-id-gsbp-715ad9c7-4176" class="gspb_image gspb_image-id-gsbp-715ad9c7-4176 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/1api.png" data-src="" alt="" width="923" height="172"/></div>



<p>Click &#8220;Create New API Key&#8221; to begin creating your key.</p>



<div id="gspb_image-id-gsbp-6330ddae-af0b" class="gspb_image gspb_image-id-gsbp-6330ddae-af0b wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/2ApiP1.png" data-src="" alt="" width="517" height="442"/></div>



<p>It&#8217;s a good idea to name the key something unique and identifiable. For the &#8220;Environment&#8221; select &#8220;Production&#8221; then click &#8220;Next&#8221;.</p>



<div id="gspb_image-id-gsbp-4bd8bbda-d2a8" class="gspb_image gspb_image-id-gsbp-4bd8bbda-d2a8 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/3apiP2.png" data-src="" alt="" width="573" height="531"/></div>



<p>The API Key and Secret will then be shown. Be sure to copy these before moving on, the secret can&#8217;t be recovered after this. <em>(If you lose your secret you must generate a new API Key).</em></p>



<h2 class="wp-block-heading" id="connecting-your-client"><strong>Connecting your Client</strong></h2>



<p>Now that the DNS record is created, and we have generated an API Key we are able to setup our client.</p>



<p>This will depend on the hardware that you have available some routers/firewalls have a preset offered for GoDaddy under dynamic DNS options. There are alternatives if you do not have a device that supports GoDaddy directly</p>



<div id="gspb_image-id-gsbp-0b456bfa-e931" class="gspb_image gspb_image-id-gsbp-0b456bfa-e931 wp-block-greenshift-blocks-image"><img loading="lazy" decoding="async" src="https://www.rentrex.ca/wp-content/uploads/2023/03/1pfsenseGoDaddy.png" data-src="" alt="" width="628" height="640"/></div>



<p>Navigate to your router or firewalls configuration webpage and search for &#8220;Dynamic DNS&#8221; or &#8220;DDNS&#8221; options. If your device has a Dynamic DNS option for GoDaddy it will most likely look similar to the above (PFSense shown). Use the API Key generated previously as the Username, and the Secret for the password.</p>



<p>If your device doesn&#8217;t support GoDaddy, or doesn&#8217;t have Dynamic DNS options continue below. Scripts are provided for both Windows and Linux devices, these may be run on a workstation (preferably one that is always on) or a server.</p>



<p>PowerShell script (Windows):</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>$mydomain = "mydomainname.com"
$myhostname = "mysubdomain"
$gdapikey = "apikey:keysecret"

$myip = Invoke-RestMethod -Uri "https://api.ipify.org"
$dnsdata = Invoke-RestMethod "https://api.godaddy.com/v1/domains/$($mydomain)/records/A/$($myhostname)" -Headers @{ Authorization = "sso-key $($gdapikey)" }
$gdip = $dnsdata.data
Write-Output "$(Get-Date -Format 'u') - Current External IP is $($myip), GoDaddy DNS IP is $($gdip)"

If ( $gpid -ne $myip) {
  Write-Output "IP has changed: Updating on GoDaddy"
  Invoke-RestMethod -Method PUT -Uri "https://api.godaddy.com/v1/domains/$($mydomain)/records/A/$($myhostname)" -Headers @{ Authorization = "sso-key $($gdapikey)" } -ContentType "application/json" -Body "&#91;{`"data`": `"$($myip)`"}]";
}</code></pre>



<p>Save the above script as &#8220;dnsupdater.ps1&#8221;. Replacing &#8220;mydomainname.com&#8221; with your domain, &#8220;mysubdomain&#8221; with the subdomain set previously, and &#8220;apikey:keysecret&#8221; with your generated API Key and Secret values. Ensure these are separated by a colon.</p>



<p>Running this script will result in the GoDaddy DNS record being updated to your current IP address. Run this at regular intervals of between 10 and 30 minutes using Task Scheduler to ensure that your DNS is always up to date.</p>



<p>Bash script (Linux):</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>#!/bin/bash

mydomain="mydomainname.com"
myhostname="mysubdomain"
gdapikey="apikey:keysecret"
logdest="local7.info"

myip=`curl -s "https://api.ipify.org"`
dnsdata=`curl -s -X GET -H "Authorization: sso-key ${gdapikey}" "https://api.godaddy.com/v1/domains/${mydomain}/records/A/${myhostname}"`
gdip=`echo $dnsdata | cut -d ',' -f 1 | tr -d '"' | cut -d ":" -f 2`
echo "`date '+%Y-%m-%d %H:%M:%S'` - Current External IP is $myip, GoDaddy DNS IP is $gdip"

if &#91; "$gdip" != "$myip" -a "$myip" != "" ]; then
  echo "IP has changed: Updating on GoDaddy"
  curl -s -X PUT "https://api.godaddy.com/v1/domains/${mydomain}/records/A/${myhostname}" -H "Authorization: sso-key ${gdapikey}" -H "Content-Type: application/json" -d "&#91;{\"data\": \"${myip}\"}]"
  logger -p $logdest "Changed IP on ${hostname}.${mydomain} from ${gdip} to ${myip}"
fi</code></pre>



<p>Save the above script as &#8220;dnsupdater.sh&#8221;. Replacing &#8220;mydomainname.com&#8221; with your domain, &#8220;mysubdomain&#8221; with the subdomain set previously, and &#8220;apikey:keysecret&#8221; with your generated API Key and Secret values. Ensure these are separated by a colon.</p>



<p>Run the script to update the record and confirm that it is configured correctly. We can schedule this script to run at regular intervals using Cron.</p>



<p>To create a Cron job use:</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>user@machine:~ $ crontab -e </code></pre>



<p>Within the cron file add the following line:</p>



<pre class="wp-block-code has-inputtext-background-color has-background"><code>*/30 * * * * /full/path/to/file/dnsupdater.sh &gt; /dev/null </code></pre>



<p>Replace the &#8220;30&#8221; as desired with your time in minutes. For additional output &#8220;/dev/null&#8221; can be replace with &#8220;dnsupdate.log&#8221;, this file will log the last execution.</p>



<h2 class="wp-block-heading" id="credits"><strong>Credits</strong></h2>



<p>Thanks to Tod-SoS on Instructables for the above Bash script and Powershell script (<a href="https://www.instructables.com/Quick-and-Dirty-Dynamic-DNS-Using-GoDaddy/">https://www.instructables.com/Quick-and-Dirty-Dynamic-DNS-Using-GoDaddy/</a>)</p>



<p>Thanks to smcconnell on the netgate forms for the PFSense screenshot (<a href="https://forum.netgate.com/topic/142130/godaddy-dynamic-dns-guide">https://forum.netgate.com/topic/142130/godaddy-dynamic-dns-guide</a>)</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.rentrex.ca/how-to/dynamic-dns-and-godaddy/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
