ik heb onlangs een mini-computer gekocht bij aliexpress. Het is heel krachtig, en veel meer kosteneffectief dan het huren van Amazon EC2 instances. Het zit in de buurt van mijn router in mijn appartement, constant op 24/7, nippen slechts 10 tot 15W.

ik heb een reguliere internet service provider (ISP) die ik maandelijks betalen. Het belangrijkste is dat ik geen statisch IP-adres heb. Meestal kost een statisch IP meer geld per maand, of is het gewoon geen optie.

Wat is de oplossing? Hoe kan ik verbinding maken met mijn computer/server thuis? Dynamische DNS!

dynamische DNS

ok, dus ik heb een domeinnaam, een thuis internet service provider (ISP), een router en een home server (de mini computer). Ik heb geen statisch IP-adres. Maar Ik wil consequent verbinding maken met mijn computer/server thuis vanaf een externe bron (zoals vanaf mijn telefoon, of vanaf mijn laptop tijdens het reizen).

ik heb mijn domein geregistreerd via Google Domains, dus laten we daar beginnen. Je kan hebben om iets dergelijks te doen door middel van de instellingen waar u uw domein geregistreerd.

in de Google Domains sectie is er een optie om dynamische DNS in te stellen voor een bepaalde domeinnaam. Je specifiek het subdomein (ik noemde de mijne ‘scooter’ zoals hieronder te zien) en wees het naar een van mijn domeinnamen die ik had geregistreerd bij Google domeinen.

vervolgens ging ik naar mijn thuisrouter, een TP-LINK Archer C7 en vond de sectie voor dynamische DNS. Ik hoopte dat het gemakkelijk genoeg zou zijn om gewoon wijzen op mijn domeinnaam met de gebruikersnaam/wachtwoord dat Google domeinen voor mij gemaakt.

helaas is TP-LINK niet erg flexibel. Ze verwachten dat gebruikers No-IP, Dyndns of Comexe gebruiken voor hun dynamische DNS-behoeften.

gelukkig zijn Google-domeinen veel flexibeler. Ze laten je een client of hun API gebruiken om je dynamische DNS bij te werken.

Oké, dus misschien probeer ik de DDclient, omdat dat een ondersteunde client lijkt te zijn.

Ddclient gebruiken voor dynamische DNS

u kunt hier meer informatie over DDclient vinden. Omdat ik een Ubuntu-besturingssysteem draaide, koos ik ervoor om de apt-get package manager te gebruiken.

het uitvoeren van sudo apt-get install ddclient lanceerde me onmiddellijk in een installatiewizard.

het enige waarover ik verward was, was de netwerkinterface.

het uitvoeren van ifconfig -a hielp dat uit te zoeken. Hier is de uitvoer van het uitvoeren van dat:

gebaseerd op de hoeveelheid verkeer, lijkt het alsof ik p2p1 wil.

na ddclient installatie

nadat de setup wizard was voltooid, verwachtte ik ergens een gegenereerd ddclient.conf bestand. Volgens de docs zou er een moeten zijn op

/etc/ddclient.conf

maar dat was niet het geval. ik probeerde ddclient te debuggen door

ddclient -daemon=0 -noquiet -debug

uit te voeren en het toonde een bestand op

/var/cache/ddclient/ddclient.cache

maar het toonde ook:

DEBUG: get_ip: using if, p2p1 reports 192.168.0.104

dat is niet het IP-adres dat ik wil!

dus ik heb handmatig een configuratiebestand gemaakt op /etc/ddclient.conf

dan bewerken

sudo nano /etc/default/ddclient

run_daemon="true"

$ sudo service ddclient statusStatus of Dynamic DNS service update utility: ddclient is running.

als het niet draait type

$ sudo service ddclient start

succes!

DDclient is een mooi stukje software dat kan detecteren wanneer mijn IP-adres verandert (zoals wanneer mijn ISP willekeurig besluit om het te roteren). DDclient verzendt vervolgens het nieuwe IP-adres naar Google-domeinen, dus wanneer ik scooter.mydomain.com bezoek, weet het naar welk IP-adres het verkeer moet worden geleid. Yay!

januari 2018 update

ik ben een paar keer overgestapt van internet service providers en domeinnamen sinds ik dit oorspronkelijk had opgezet. De originele setup werkt niet meer, dus Ik wil het weer laten functioneren.

dynamische DNS opnieuw inschakelen op Google-domeinen

Ik zal een “naked” – domein gebruiken, dus het @ – symbool in plaats van een subdomein. Een naakt domein is als example.com in plaats van

Note that the data column is blank because the ddclient software hasn’t told Google Domains what the IP address is.

First I’ll confirm that it’s installed

Okay so that’s not quite the latest version as of today, which is 3.8.3. Checking the release notes doesn’t look like I am missing too much.

Is it running?

Okay so it is running, but has old settings.

Update settings

This is the username and password that Google Domains generated. My domain name is at the bottom with the “naked” prefix @. Ik denk dat ik zou kunnen gebruik maken van de Google Domains protocol omdat ddclient ondersteunt, maar Ik zal overslaan, tenzij ik in problemen met de dyndns2 protocol.

Test het uit

Ik zal het gewoon een keer uitvoeren (geen daemon of service) met de debugging ingeschakeld

en als we Google Domains controleren:

het laat zien dat het is gewijzigd om 9:51:22, dus vrij dichtbij. 2 seconden is binnen het rijk van een klok die langzaam / snel.

Controleer cron en services
$ crontab -e(nothing in there)$ sudo crontab -e(nothing in there)

en we zullen de service controleren om te zien of een daemon

draait. Als we het opnieuw proberen te starten, wat gebeurt er dan?

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.