Hur man ställer in dynamisk DNS

Vad är dynamisk DNS?

Låt oss ta ett vanligt exempel på en DNS-inställning. Din domän är example.com, och du har " A" poster för server1.example.comoch server2.example.com. Server1 är värd i Vultr, men server2 är värd i ett lokalt nätverk, som i ditt företag eller som en utvecklingsmaskin i ditt hem. Vanligtvis har dessa typer av lokala miljöer offentliga IP-adresser som tilldelas dynamiskt från din Internetleverantör (ISP), och de kan ändras oväntat. Detta skulle resultera i att server2 plötsligt pekar på en felaktig IP-adress vilket kan påverka tjänsten allvarligt. Den här artikeln visar dig hur du ställer in din egen dynamiska DNS-tjänst, som körs på en lokal maskin och kan uppdatera posten för server2 i Vultr DNS automatiskt 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.

Förutsättningar

  • Åtkomst till ditt Vultr-konto för att ställa in DNS och hantera åtkomstnycklar.
  • Möjlighet att ansluta till den lokala maskinen som har en dynamisk IP-adress (eller tillgång till en annan maskin på samma nätverk).

Installation och installation

Konfigurera din domän för att använda Vultrs DNS-tjänst

  • Om du inte använder Vultrs DNS-tjänst för din domän, följ den här artikeln för att ändra dina namnservrar för användning med Vultr.
  • När Vultr DNS har konfigurerats, gå till DNS-hanteringssidan under "Server -> DNS -> [ditt domännamn]".
  • Här hittar du alla poster som ställts in för din domän. Skriv ner vilka poster du vill ändra, eftersom du kommer att behöva detta senare.
    • Endast " A" poster stöds av detta verktyg. Om du har flera " A" poster som du vill uppdatera till samma IP-adress, ändra dem till " CNAME" poster och peka dem till en " A" post. Detta kommer att förenkla saker och ting för dig i det långa loppet och anses vara det rätta sättet att konfigurera DNS.

Installation av nödvändiga verktyg

  • Anslut till din lokala server. Detta kan vara direkt eller via SSH.
  • Detta verktyg kräver Python 3. De flesta distributioner av Linux inkluderar Python förinstallerat. I händelse av att det inte är installerat i din miljö finns instruktioner tillgängliga på den officiella Python-wikin här:
  • Denna process kräver också Git, som du kan installera med instruktionerna nedan:

Laddar ner den dynamiska DNS-klienten

Använd Git för att klona arkivet som innehåller python DDNS-klienten. Du bör göra detta i en säker katalog som du har full åtkomst till. Din hemmapp bör vara tillräcklig. Kör följande kommando:

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

Genererar en personlig åtkomsttoken

Skapa en personlig åtkomsttoken i Vultr. Detta kan göras under "Konto -> API -> Personal Access Token". På samma sida måste du gå under "Åtkomstkontroll" och klicka på knappen "Tillåt alla IPv4", eftersom du inte kommer att veta IP-adressen för din lokala server varje gång, därav poängen med dynamisk DNS.

Konfigurera verktyget för din server

  • Läs igenom config.json.examplefilen för ett exempel på hur din konfigurationsfil ska se ut.
  • Öppna config.jsonfilen med din favorittextredigerare och fyll i värdena baserat på din specifika serverinställning.
  • Filen ska innehålla följande:

    {
        "api_key": "",
        "domain": "",
        "dynamic_records": [
        ""
        ]
    }
    
  • Ange din åtkomsttoken i fältet api_key.

  • Ange din basdomän i domainfältet. Till exempel, example.com.
  • Ange nu Aposterna " " du vill ändra under dynamic_recordsfältet. Med hjälp av föregående exempel skulle du ange för server2att automatiskt ändra server2s IP-adress. Du kan ange flera underdomäner. Om du vill ändra " A" basposten för din domän (vanligen refererad till som en @, posten som svarar när du navigerar direkt till example.com), lämna bara tomma citattecken.
  • En korrekt konfigurationsfil kan se ut så här, där du dynamiskt vill ändra IP:n för example.comoch server2.example.com:

    {
        "api_key": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
        "domain": "example.com",
        "dynamic_records": [
        "",
        "server2"
        ]
    }
    
  • Spara nu dessa ändringar och din fil bör vara klar!

Testa din konfiguration

  • Testa skriptet och konfigurationen genom att köra python3 ddns.py. Om detta inte returnerar några fel är din konfiguration nominell och du kan starta automatiseringsprocessen.

Automatisering

Efter att ha slutfört den grundläggande installationen är det viktigt att ställa in en återkommande uppgift eftersom skriptet inte gör detta som standard. Anslut till din lokala dator och följ stegen nedan baserat på ditt operativsystem.

Linux och Mac OSX

Linux och Mac har cronverktyget redan installerat, vilket låter dig ange skript som ska köras enligt fastställda scheman.

  • Hitta hela sökvägen till ddns.pyfilen med realpath ddns.pymedan du fortfarande är i vultrddnskatalogen.
  • Kör för crontab -eatt redigera din crontab.
  • Lägg till följande rad i slutet av filen och lägg till den verkliga sökvägen till ddns.pyfilen:

    */30 * * * * python3 [full path to ddns.py] > /dev/null 2>&1
    
  • Detta kommer att köra skriptet var 30:e minut och omdirigera all utdata till /dev/null.

  • Spara och avsluta textredigeraren. Crontab-filen kommer automatiskt att installeras och din IP kommer nu att uppdateras automatiskt.

Windows

Skapa en uppgift i Task Scheduler för att köras var 30:e minut. Följ Microsoft-guiden för att skapa grundläggande uppgifter.

  • Öppna Schemaläggaren och klicka på "Skapa uppgift...".
  • Ge den ett namn och skapa en ny trigger.
  • Klicka på "Dagligen". Under "Avancerade inställningar" klicka för att upprepa uppgiften var 30:e minut och ändra "under en varaktighet av" till "Obestämd tid".
  • Lägg till en ny åtgärd för att starta ett program och bläddra till din Python-körbara fil. Lägg till ddns.pyskriptet som ett argument.

Lämna en kommentar

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.

DDOS-attacker: En kort översikt

DDOS-attacker: En kort översikt

Är du också ett offer för DDOS-attacker och förvirrad över de förebyggande metoderna? Läs den här artikeln för att lösa dina frågor.

Har du någonsin undrat hur hackare tjänar pengar?

Har du någonsin undrat hur hackare tjänar pengar?

Du kanske har hört att hackare tjänar mycket pengar, men har du någonsin undrat hur de tjänar den typen av pengar? låt oss diskutera.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Vill du se revolutionerande uppfinningar av Google och hur dessa uppfinningar förändrade livet för varje människa idag? Läs sedan till bloggen för att se uppfinningar av Google.

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Konceptet med att självkörande bilar ska ut på vägarna med hjälp av artificiell intelligens är en dröm vi har ett tag nu. Men trots flera löften finns de ingenstans att se. Läs den här bloggen för att lära dig mer...

Technological Singularity: A Distant Future of Human Civilization?

Technological Singularity: A Distant Future of Human Civilization?

När vetenskapen utvecklas i snabb takt och tar över en hel del av våra ansträngningar, ökar också riskerna för att utsätta oss för en oförklarlig singularitet. Läs, vad singularitet kan betyda för oss.

Funktioner för Big Data Reference Architecture Layers

Funktioner för Big Data Reference Architecture Layers

Läs bloggen för att känna till olika lager i Big Data Architecture och deras funktionaliteter på enklaste sätt.

Utveckling av datalagring – Infographic

Utveckling av datalagring – Infographic

Lagringsmetoderna för data har utvecklats kan vara sedan födelsen av data. Den här bloggen tar upp utvecklingen av datalagring på basis av en infografik.

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

I denna digitala värld har smarta hemenheter blivit en avgörande del av livet. Här är några fantastiska fördelar med smarta hemenheter om hur de gör vårt liv värt att leva och enklare.

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

Nyligen släppte Apple macOS Catalina 10.15.4, en tilläggsuppdatering för att åtgärda problem, men det verkar som om uppdateringen orsakar fler problem som leder till att mac-datorer blir murade. Läs den här artikeln för att lära dig mer