Mis on dünaamiline DNS?
Eeltingimused
Paigaldamine ja seadistamine
Automatiseerimine
Mis on dünaamiline DNS?
Võtame tavalise DNS-i seadistuse näite. Teie domeen on example.comja teil on " A" kirjed server1.example.comja jaoks server2.example.com. Server1 on hostitud Vultris, kuid server2 majutatakse kohalikus võrgus, näiteks teie ettevõtte sees või arendusmasinana teie kodus. Tavaliselt on seda tüüpi kohalikel keskkondadel avalikud IP-aadressid dünaamiliselt määratud teie Interneti-teenuse pakkujalt (ISP) ja need võivad ootamatult muutuda. Selle tulemusena osutab server2 ootamatult valele IP-aadressile, mis võib teenust tõsiselt mõjutada. See artikkel näitab teile, kuidas seadistada oma dünaamiline DNS-teenus, mis töötab kohalikus masinas ja suudab pärast avaliku IP-aadressi muutmist automaatselt värskendada Vultr DNS-i server2 kirjet.
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.
Eeltingimused
- Juurdepääs oma Vultri kontole DNS seadistamiseks ja juurdepääsuvõtmete haldamiseks.
- Võimalus luua ühendus kohaliku masinaga, millel on dünaamiline IP-aadress (või juurdepääs teisele samas võrgus olevale masinale).
Paigaldamine ja seadistamine
Domeeni seadistamine Vultri DNS-teenuse kasutamiseks
- Kui te ei kasuta oma domeeni jaoks Vultri DNS-teenust, järgige seda artiklit, et muuta oma nimeservereid Vultriga kasutamiseks.
- Kui Vultr DNS on seadistatud, minge DNS-i haldamise lehele jaotises "Serverid -> DNS -> [teie domeeninimi]".
- Siit leiate kõik oma domeeni jaoks seadistatud kirjed. Kirjutage üles, milliseid kirjeid soovite muuta, sest seda läheb teil hiljem vaja.
ASee utiliit toetab ainult " " kirjeid. Kui teil on mitu Akirjet, mida soovite samale IP-aadressile värskendada, muutke need CNAMEkirjeteks ja suunake need ühele " A" kirjele. See lihtsustab teie jaoks pikemas perspektiivis asju ja seda peetakse õigeks viisiks DNS-i konfigureerimiseks.
Vajalike tööriistade paigaldamine
- Ühendage kohaliku serveriga. Seda saab teha otse või SSH kaudu.
- See tööriist nõuab Python 3. Enamik Linuxi distributsioone sisaldab Pythonit eelinstallitud. Kui see pole teie keskkonda installitud, on juhised saadaval ametlikus Pythoni vikis siit:
- See protsess nõuab ka Giti, mille saate installida järgmiste juhiste abil:
Dünaamilise DNS-kliendi allalaadimine
Pythoni DDNS-klienti sisaldava hoidla kloonimiseks kasutage Giti. Peaksite seda tegema turvalises kataloogis, millele teil on täielik juurdepääs. Teie kodukaustast peaks piisama. Käivitage järgmine käsk:
git clone https://github.com/andyjsmith/Vultr-Dynamic-DNS.git vultrddns && cd vultrddns
Isikliku juurdepääsuloa genereerimine
Looge Vultris isiklik juurdepääsuluba. Seda saab teha jaotises "Konto -> API -> Isiklik juurdepääsuluba". Samal lehel peate minema jaotisse "Juurdepääsukontroll" ja klõpsama nuppu "Luba kõik IPv4", kuna te ei tea iga kord oma kohaliku serveri IP-d, seega on dünaamilise DNS-i mõte.
Tööriista konfigureerimine serveri jaoks
- Lugege
config.json.examplefaili läbi, et näha, milline peaks teie konfiguratsioonifail välja nägema.
- Avage
config.jsonfail oma lemmiktekstiredaktoriga ja sisestage väärtused, mis põhinevad teie konkreetse serveri seadistusel.
Fail peaks sisaldama järgmist:
{
"api_key": "",
"domain": "",
"dynamic_records": [
""
]
}
Sisestage väljale oma juurdepääsuluba api_key.
- Sisestage väljale oma baasdomeen
domain. Näiteks example.com.
- Nüüd sisestage välja alla
Akirjed, mida soovite muuta dynamic_records. Kasutades eelmist näidet, sisestage , server2et automaatselt muuta server2IP-aadressi. Võite sisestada mitu alamdomeeni. Kui soovite muuta Aoma domeeni põhikirjet " " (mida tavaliselt nimetatakse kirjeks @, mis vastab, kui navigeerite otse lehele example.com), jätke lihtsalt tühjad jutumärgid.
Õige konfiguratsioonifaili võib tunduda see, kui soovite dünaamiliselt muuta IP example.comja server2.example.com:
{
"api_key": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"domain": "example.com",
"dynamic_records": [
"",
"server2"
]
}
Nüüd salvestage need muudatused ja teie fail peaks olema töökorras!
Testige oma konfiguratsiooni
- Testige skripti ja konfiguratsiooni käivitades
python3 ddns.py. Kui see tõrkeid ei tagasta, on teie konfiguratsioon nominaalne ja võite alustada automatiseerimisprotsessi.
Automatiseerimine
Pärast põhiseadistuse lõpetamist on oluline seadistada korduv toiming, kuna skript seda vaikimisi ei tee. Looge ühendus kohaliku masinaga ja järgige alltoodud samme vastavalt oma operatsioonisüsteemile.
Linux ja Mac OSX
Linuxis ja Macis on cronutiliit juba installitud, mis võimaldab teil määrata skripte, mis käitatakse kindlaksmääratud ajakava järgi.
- Leia kogu tee
ddns.pyfaili realpath ddns.pysamas endiselt vultrddnskataloog.
- Käivitage
crontab -eoma crontabi muutmiseks.
Lisage faili lõppu järgmine rida, lisades faili tegeliku tee ddns.py:
*/30 * * * * python3 [full path to ddns.py] > /dev/null 2>&1
See käivitab skripti iga 30 minuti järel ja suunab kogu selle väljundi ümber aadressile /dev/null.
- Salvestage ja väljuge tekstiredaktorist. Crontab-fail installitakse automaatselt ja teie IP-d värskendatakse nüüd automaatselt.
Windows
Looge Task Scheduleris ülesanne, mida käivitatakse iga 30 minuti järel. Põhiülesannete loomisel järgige Microsofti juhendit .
- Avage Task Scheduler ja klõpsake "Loo ülesanne...".
- Andke sellele nimi ja looge uus päästik.
- Klõpsake "Igapäevane". Klõpsake jaotises "Täpsemad sätted" ülesande kordamiseks iga 30 minuti järel ja muutke "ajaks" väärtuseks "Määramatult".
- Programmi käivitamiseks ja Pythoni käivitatava faili sirvimiseks lisage uus toiming. Lisage
ddns.pyskript argumendina.