Sådan opsætter du dynamisk DNS

Hvad er dynamisk DNS?

Lad os tage et almindeligt eksempel på en DNS-opsætning. Dit domæne er example.com, og du har " A" registreringer for server1.example.comog server2.example.com. Server1 hostes i Vultr, men server2 hostes på et lokalt netværk, f.eks. inde i din virksomhed eller som en udviklingsmaskine i dit hjem. Disse typer lokale miljøer har typisk offentlige IP-adresser, der er dynamisk tildelt fra din internetudbyder (ISP), og de kan ændre sig uventet. Dette ville resultere i, at server2 pludselig peger på en forkert IP-adresse, hvilket kan påvirke tjenesten alvorligt. Denne artikel viser dig, hvordan du opsætter din egen dynamiske DNS-tjeneste, som kører på en lokal maskine og kan opdatere posten for server2 i Vultr DNS automatisk efter en offentlig IP-ændring.

While clients like ddclient and inadyn will work for some DNS providers, Vultr does not currently support these and instead uses its own custom API. This service will run locally on your machine and use GET and POST requests along with your access key.

Forudsætninger

  • Adgang til din Vultr-konto for at konfigurere DNS og administrere adgangsnøgler.
  • Mulighed for at oprette forbindelse til den lokale maskine, der har en dynamisk IP-adresse (eller adgang til en anden maskine på samme netværk).

Installation og opsætning

Opsætning af dit domæne til at bruge Vultrs DNS-tjeneste

  • Hvis du ikke bruger Vultrs DNS-tjeneste til dit domæne, skal du følge denne artikel for at ændre dine navneservere til brug med Vultr.
  • Når Vultr DNS er konfigureret, skal du gå til DNS-administrationssiden under "Servere -> DNS -> [dit domænenavn]".
  • Her finder du alle de registreringer, der er oprettet for dit domæne. Skriv ned hvilke(n) post(er), du gerne vil ændre, da du skal bruge dette senere.
    • Kun " A" registreringer understøttes af dette værktøj. Hvis du har flere " A"-poster, som du vil have opdateret til den samme IP-adresse, skal du ændre dem til " CNAME"-poster og pege dem til én " A"-post. Dette vil forenkle tingene for dig i det lange løb og anses for at være den rigtige måde at konfigurere DNS på.

Installation af de nødvendige værktøjer

  • Opret forbindelse til din lokale server. Dette kan være direkte eller gennem SSH.
  • Dette værktøj kræver Python 3. De fleste distributioner af Linux inkluderer Python forudinstalleret. I tilfælde af at det ikke er installeret i dit miljø, er instruktionerne tilgængelige på den officielle Python-wiki her:
  • Denne proces kræver også Git, som du kan installere med instruktionerne nedenfor:

Downloader den dynamiske DNS-klient

Brug Git til at klone depotet, der indeholder python DDNS-klienten. Du bør gøre dette i en sikker mappe, som du har fuld adgang til. Din hjemmemappe burde være tilstrækkelig. Kør følgende kommando:

git clone https://github.com/andyjsmith/Vultr-Dynamic-DNS.git vultrddns && cd vultrddns

Generering af et personligt adgangstoken

Generer et personligt adgangstoken i Vultr. Dette kan gøres under "Konto -> API -> Personal Access Token". På den samme side skal du gå under "Adgangskontrol" og klikke på knappen "Tillad alle IPv4", da du ikke vil kende IP-adressen på din lokale server hver gang, deraf pointen med dynamisk DNS.

Konfiguration af værktøjet til din server

  • Læs config.json.examplefilen igennem for et eksempel på, hvordan din konfigurationsfil skal se ud.
  • Åbn config.jsonfilen ved hjælp af din foretrukne teksteditor, og udfyld værdierne baseret på din specifikke serveropsætning.
  • Filen skal indeholde følgende:

    {
        "api_key": "",
        "domain": "",
        "dynamic_records": [
        ""
        ]
    }
    
  • Indtast dit adgangstoken i feltet api_key.

  • Indtast dit basisdomæne i domainfeltet. For eksempel example.com.
  • Indtast nu de " A"-poster, du vil ændre, under dynamic_recordsfeltet. Ved at bruge det forrige eksempel, ville du indtaste server2for automatisk at ændre server2's IP-adresse. Du kan indtaste flere underdomæner. Hvis du vil ændre " A" basisregistreringen for dit domæne (almindeligvis refereret til som en @, den post, der reagerer, når du navigerer direkte til example.com), skal du blot lade tomme anførselstegn.
  • En korrekt konfigurationsfil kan se sådan ud, hvor du dynamisk vil ændre IP'en for example.comog server2.example.com:

    {
        "api_key": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
        "domain": "example.com",
        "dynamic_records": [
        "",
        "server2"
        ]
    }
    
  • Gem nu disse ændringer, og din fil skulle være klar!

Test din konfiguration

  • Test scriptet og konfigurationen ved at køre python3 ddns.py. Hvis dette ikke returnerer nogen fejl, er din konfiguration nominel, og du kan starte automatiseringsprocessen.

Automatisering

Efter at have gennemført den grundlæggende opsætning, er det vigtigt at opsætte en tilbagevendende opgave, da scriptet ikke gør dette som standard. Tilslut til din lokale maskine og følg nedenstående trin baseret på dit operativsystem.

Linux og Mac OSX

Linux og Mac har cronværktøjet allerede installeret, som lader dig specificere scripts til at køre på fastsatte tidsplaner.

  • Find den fulde sti til ddns.pyfilen, realpath ddns.pymens du stadig er i vultrddnsmappen.
  • Kør for crontab -eat redigere din crontab.
  • Tilføj følgende linje til slutningen af ​​filen, og tilføj den rigtige sti til ddns.pyfilen:

    */30 * * * * python3 [full path to ddns.py] > /dev/null 2>&1
    
  • Dette vil køre scriptet hvert 30. minut og omdirigere alt dets output til /dev/null.

  • Gem og afslut teksteditoren. Crontab-filen vil automatisk blive installeret, og din IP vil nu automatisk blive opdateret.

Windows

Opret en opgave i Task Scheduler til at køre hvert 30. minut. Følg Microsoft-vejledningen for grundlæggende opgaveoprettelse.

  • Åbn Task Scheduler og klik på "Opret opgave...".
  • Giv det et navn og opret en ny trigger.
  • Klik på "Dagligt". Under "Avancerede indstillinger" skal du klikke for at gentage opgaven hvert 30. minut og ændre "i en varighed af" til "på ubestemt tid".
  • Tilføj en ny handling for at starte et program og browse til din Python-eksekverbare. Tilføj ddns.pyscriptet som et argument.

Konfigurer en DHCP-server på Windows Server 2012

Konfigurer en DHCP-server på Windows Server 2012

DHCP er en protokol, der bruges til dynamisk at allokere IP-adresser til maskiner i dit netværk. Ikke kun kan Windows Server 2012 være en DNS-server eller domai

Sådan installeres PowerDNS på CentOS

Sådan installeres PowerDNS på CentOS

Introduktion I denne Vultr-tutorial lærer du, hvordan du installerer PowerDNS. PowerDNS er et program til at køre dine egne navneservere. Det er meget nyttigt wh

Oprettelse af netværksshares ved hjælp af Samba på Debian

Oprettelse af netværksshares ved hjælp af Samba på Debian

Der er tidspunkter, hvor vi skal dele filer, der skal kunne ses af Windows-klienter. Da Fuse-baserede systemer kun virker på Linux, må du godt introducere

Portvideresendelse og proxy ved brug af OpenSSH

Portvideresendelse og proxy ved brug af OpenSSH

Introduktion SSH, også kendt som Secure Shell, kan bruges til meget mere end at anskaffe en ekstern shell. Denne artikel vil demonstrere, hvordan SSH kan bruges til

Opsætning af Munin til overvågning på CentOS 6 x64

Opsætning af Munin til overvågning på CentOS 6 x64

Munin er en serverovervågnings- og statusapplikation, der giver to komponenter: munin - Den serverkomponent, som munin-node rapporterer i. Dette program

Stop DHCP fra at ændre resolv.conf

Stop DHCP fra at ændre resolv.conf

For DHCP-brugere kan der være tidspunkter, hvor du har brug for at redigere /etc/resolv.conf for at bruge andre navneservere. Derefter, efter en periode (eller efter en systemgenstart)

Sådan konfigureres DJBDNS på FreeBSD

Sådan konfigureres DJBDNS på FreeBSD

Denne vejledning viser dig, hvordan du konfigurerer en DNS-tjeneste, der er nem at vedligeholde, nem at konfigurere, og som generelt er mere sikker end den klassiske BIN

Simpel mailserver med postfix, dovecot og si på CentOS 7

Simpel mailserver med postfix, dovecot og si på CentOS 7

Denne tutorial viser dig, hvordan du får en simpel mailserver på CentOS 7, med Postfix som MTA, Dovecot som MDA og Sieve til sortering af post - over det hele

Brug af værtsfil til at teste websteder

Brug af værtsfil til at teste websteder

Hosts-filen er en speciel fil på din arbejdsstationscomputer, som gemmer IP- og navneoplysninger. Denne fil kontrolleres før DNS, så hvis du placerer en

Sådan installeres OpenNMS på CentOS 7

Sådan installeres OpenNMS på CentOS 7

Bruger du et andet system? OpenNMS er en open source-netværksadministrationsplatform i virksomhedskvalitet, der kan bruges til at overvåge og administrere adskillige enheder fra

Sådan opretter du forbindelse til en VPN fra Windows eller OS X

Sådan opretter du forbindelse til en VPN fra Windows eller OS X

De fleste desktops leveres med en VPN-klient. Hvis du kører en VPN-server, kan du bruge denne medfølgende klient til at oprette forbindelse til din VPN. I denne guide vil jeg forklare det

Sådan forhindrer du samtidige forbindelser på Linux ved hjælp af IPTables

Sådan forhindrer du samtidige forbindelser på Linux ved hjælp af IPTables

iptables er firewallsoftware, der kan findes i mange distributioner, inklusive CentOS og Ubuntu. I dette dokument vil du se, hvordan du kan forhindre samtidighed

Konfigurer en DNS-server på Windows Server 2012

Konfigurer en DNS-server på Windows Server 2012

Windows Server 2012 kan konfigureres som en DNS-server. DNS bruges til at omsætte domænenavne til IP-adresser. Ved at hoste dine egne DNS-servere har du mere

Indstil værtsnavn på CentOS

Indstil værtsnavn på CentOS

Trin 1: Log på din VPS Find IP-adressen på din Vultr VPS og log på som root-bruger. ssh root@server Trin 2: Brug værtsnavn-værktøjet Skift dig

Installation af Bro IDS på Ubuntu 16.04

Installation af Bro IDS på Ubuntu 16.04

Bruger du et andet system? Introduktion Bro er en kraftfuld open source netværksanalyseramme. Bros primære fokus er på netværkssikkerhedsovervågning. Br

Tilslutning til din server med SSH via PuTTY på Windows

Tilslutning til din server med SSH via PuTTY på Windows

At oprette forbindelse til en Linux-server for første gang kan virke forvirrende, især hvis du har en stærk Windows-baggrund. Når du opretter forbindelse til en Linux (eller UNIX

Konfigurer dynamisk DNS til Windows Remote Desktop

Konfigurer dynamisk DNS til Windows Remote Desktop

Denne artikel viser dig, hvordan du konfigurerer dynamisk DNS til Remote Desktop, så du kan undgå besværet med at konfigurere fjernhjælp igen og igen. W

Sådan ændres dit værtsnavn på Debian

Sådan ændres dit værtsnavn på Debian

Trin 1: Log på din VPS Find IP-adressen på din Vultr VPS og log på som root-bruger. ssh root@server Trin 2: Rediger /etc/hostname Åbn th

Eksempel på autorisationsbrev for BGP-meddelelser

Eksempel på autorisationsbrev for BGP-meddelelser

Brug venligst følgende skabelon, når du anmoder om tilladelse til BGP-meddelelser. AUTORISATIONSBREV [DATO] Til hvem det måtte vedrøre, Thi

Installerer Bro IDS på Fedora 25

Installerer Bro IDS på Fedora 25

Bruger du et andet system? Introduktion Bro er en open source netværkstrafikanalysator. Det er primært en sikkerhedsmonitor, der inspicerer al trafik på en linie

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.

DDOS-angreb: et kort overblik

DDOS-angreb: et kort overblik

Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.

Udvikling af datalagring – Infografik

Udvikling af datalagring – Infografik

Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af ​​dataene. Denne blog dækker udviklingen af ​​datalagring på basis af en infografik.

Funktioner af Big Data Reference Architecture Layers

Funktioner af Big Data Reference Architecture Layers

Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af ​​mac-maskiner. Læs denne artikel for at lære mere