Šiame straipsnyje aš jums parodysiu, kaip naudoti dnsmasq norint sukonfigūruoti vietinį DNS serverį, talpykloje esantį DNS serverį ir DHCP serverį. Taigi, pradėkime.
Tinklo topologija:
Tai šio straipsnio tinklo topologija. Čia aš sukonfigūruosiu maršrutizatorius kaip DNS ir DHCP serveris su dnsmasq. maršrutizatorius turi 2 tinklo sąsajas, viena ( ens33 ) jungiasi prie internetas ir kitas ( ens38 ) jungiasi prie a tinklo jungiklis . Visi kiti šeimininkai ( šeimininkas 1 , šeimininkas2 , šeimininkas3 ) tinkle naudoja DHCP serverį, sukonfigūruotą maršrutizatorius automatiniam IP adresų priskyrimui, o DNS serveriui - vardų sprendimui.
Statinio IP konfigūravimas:
Mano tinklo topologijoje matėte, mano maršrutizatorius turi dvi sąsajas ens33 ir ens38 . ens33 prijungia maršrutizatorių prie interneto ir ens38 yra prijungtas prie a tinklo jungiklis , prie kurio prisijungia kiti tinklo kompiuteriai. Turiu naudoti DHCP, kad gaučiau IP adresą ens33 sąsaja iš mano IPT interneto ryšiui. Bet ens38 sąsaja turi būti sukonfigūruota rankiniu būdu.
Pasinaudokime tinklu 192.168.10.0/24 skirta ens38 sąsajai ir kitiems tinklo kompiuteriams. Jei aš naudoju tinklą 192.168.10.0/24, tada ens38 maršrutizatoriaus sąsaja turėtų būti 192.168.10.1/24. Tai yra dnsmasq DNS serverio ir DHCP serverio IP adresas.
PASTABA: Jūsų tinklo sąsajos pavadinimas gali skirtis. Su jumis galite sužinoti, kas tai yra ip a komandą.
„Ubuntu Server 18.04 LTS“ galite naudoti netplanas konfigūruoti tinklo sąsajas. Numatytasis „Netplan“ konfigūracijos failas yra /etc/netplan/50-cloud-init.yaml .
Pirmiausia atidarykite konfigūracijos failą /etc/netplan/50-cloud-init.yaml su tokia komanda:
$sudo nano /ir kt/netplanas/penkiasdešimt-cloud-init.yaml
Dabar įveskite šias eilutes ir išsaugokite failą paspausdami + x po to ir ir .
Dabar paleiskite iš naujo maršrutizatorius su tokia komanda:
$sudoperkrauti
Kartą maršrutizatorius įkrovos, IP adresai turėtų būti priskirti, kaip tikėtasi.
„Dnsmasq“ diegimas:
„dnsmasq“ galima rasti oficialioje „Ubuntu“ paketų saugykloje. Taigi, galite lengvai ją įdiegti naudodami APT paketų tvarkyklę.
Ubuntu naudoja sistema išspręsta pagal numatytuosius nustatymus valdyti DNS serverius ir DNS talpyklą. Prieš diegdami dnsmasq, turite sustabdyti ir išjungti sistema išspręsta paslaugos. Priešingu atveju negalėsite paleisti „dnsmasq“.
Norėdami sustabdyti sistema išspręsta tarnyba, paleiskite šią komandą:
$sudosystemctl sustabdyti systemd-išspręsta
Norėdami išjungti sistema išspręsta tarnyba, paleiskite šią komandą:
$sudosystemctl išjungti systemd-lahendytas
Pagal numatytuosius nustatymus /etc/resolv.conf failas yra susietas su kitu sisteminiu konfigūracijos failu, kaip matote žemiau esančioje ekrano kopijoje. Tačiau mes to nebenorime.
Taigi, pašalinkite /etc/resolv.conf susieti su šia komanda:
$sudo rm -v /ir kt/rezoliucija.conf
Dabar sukurkite naują /etc/resolv.conf failą ir nustatykite „Google“ DNS serverį kaip numatytąjį DNS serverį naudodami šią komandą:
$išmetė 'vardų serveris 8.8.8.8' | sudo tee /ir kt/rezoliucija.conf
Dabar atnaujinkite APT paketo saugyklos talpyklą naudodami šią komandą:
$sudotinkamas atnaujinimas
Dabar įdiekite dnsmasq naudodami šią komandą:
$sudotinkamasdiegtidnsmasq
dnsmasq turi būti įdiegta.
„Dnsmasq“ DNS serverio konfigūravimas:
„Dnsmasq“ konfigūracijos failas yra /etc/dnsmasq.conf . Norėdami sukonfigūruoti dnsmasq kaip DNS serverį, turite pakeisti šį failą.
Numatytasis /etc/dnsmasq.conf faile yra daug dokumentų ir pakomentuotos parinktys. Taigi, manau, kad geriau pervadinti /etc/dnsmasq.conf failą į /etc/dnsmasq.conf.bk ir sukurti naują.
Galite pervardyti konfigūracijos failą naudodami šią komandą:
$sudo mv -v /ir kt/dnsmasq.conf/ir kt/dnsmasq.conf.bk
Dabar sukurkite konfigūracijos failą /etc/dnsmasq.conf taip:
$sudo nano /ir kt/dnsmasq.conf
Dabar įveskite šias eilutes ir išsaugokite failą paspausdami + x po to ir ir .
# DNS konfigūracijauostas=53
reikalingas domenas
fiktyvus-priv
griežta tvarka
išplėsti šeimininkus
domenas= example.com
PASTABA: Keisti example.com į savo domeno vardą.
Dabar paleiskite „dnsmasq“ paslaugą naudodami šią komandą:
$sudosystemctl paleiskite dnsmasq iš naujo
Ne, klaidos. Puiku!
Dabar jūs turite nustatyti 192.168.10.1 kaip numatytąjį DNS serverio adresą /etc/resolv.conf .
Norėdami tai padaryti, atidarykite /etc/resolv.conf failą su šia komanda:
$sudo nano /ir kt/rezoliucija.conf
Dabar įveskite vardų serveris 192.168.10.1 prieš eilutę vardų serveris 8.8.8.8 kaip parodyta žemiau esančioje ekrano kopijoje. Tada išsaugokite failą.
Viskas.
Pridedami DNS įrašai:
Dabar galite pridėti savo DNS įrašus prie /etc/hosts failą.
Pirmiausia atidarykite /etc/hosts failą su šia komanda:
$sudo nano /ir kt/šeimininkaiDabar įveskite savo DNS įrašus tokiu formatu:
IP_ADDR DOMAIN_NAMEPridėjau 4 įrašus router.example.com (192.168.10.1) , host1.example.com (192.168.10.51) , host2.example.com (192.168.10.52) , ir host3.example.com (192.168.10.53) kaip pažymėta žemiau esančioje ekrano kopijoje. Galite pridėti tiek DNS įrašų, kiek norite.
Baigę išsaugokite failą paspausdami + x po to ir ir .
Dabar iš naujo paleiskite „dnsmasq“ paslaugą naudodami šią komandą:
$sudosystemctl paleiskite dnsmasq iš naujo
DNS serverio testavimas:
Kaip matote, vietinė DNS skiriamoji geba veikia.
$turouter.example.com
Taip pat veikia interneto pavadinimo sprendimas.
$tuGoogle com
DHCP serverio konfigūravimas:
Norėdami sukonfigūruoti DHCP serverį, atidarykite dnsmasq konfigūracijos failą /etc/dnsmasq.conf vėl taip:
$sudo nano /ir kt/dnsmasq.conf
Dabar pridėkite pažymėtas eilutes prie failo pabaigos. Tada išsaugokite failą.
# DHCP konfigūracijadhcp-range = 192.168.10.50,192.168.10.240,255.255.255.0,24h
dhcp-option = option: maršrutizatorius, 192.168.10.1
dhcp-option = option: dns-server, 192.168.10.1
dhcp-option = option: netmask, 255.255.255.0
dhcp-host = 00: 0C:29: A5: BD: 4A, 192.168.10.51
dhcp-host = 00: 0C:29: A5: BD: 5B, 192.168.10.52
dhcp-host = 00: 0C:29A5: BD: 6C, 192.168.10.53
Čia, dhcp diapazonas naudojamas IP adresų diapazonui, kurį DHCP serveris priskirs prieglobai, nustatyti.
dhcp-variantas naudojamas šliuzui nustatyti ( galimybė: maršrutizatorius ), DNS serverio adresas ( parinktis: dns-server ) ir tinklo kaukė ( pasirinkimas: tinklo kaukė )
dhcp-host naudojamas nustatyti konkrečius IP adresus pagrindiniams kompiuteriams, atsižvelgiant į nurodytus MAC adresus.
Dabar paleiskite „dnsmasq“ paslaugą naudodami šią komandą:
$sudosystemctl paleiskite dnsmasq iš naujo
DHCP serverio testavimas:
Kaip matote, kompiuteris šeimininkas 1 gavo IP adresą 192.168.10.51/24 iš DHCP serverio.
DNS sprendimas taip pat veikia nuo šeimininkas 1 .
Tuo pačiu būdu, šeimininkas2 ir šeimininkas3 taip pat gauna teisingą IP adresą iš DHCP serverio, o DNS skiriamoji geba veikia kiekviename iš jų.
Kur eiti toliau:
Jei norite sužinoti daugiau apie „dnsmasq“, patikrinkite numatytąjį konfigūracijos failą /etc/dnsmasq.conf (dabar pervadinta į /etc/dnsmasq.conf.bk ). Jame yra išsamus visų dnsmasq konfigūravimo parinkčių aprašymas.
$mažiau /ir kt/dnsmasq.conf.bk
Numatytasis „Ubuntu Server 18.04 LTS“ dnsmasq konfigūracijos failas.
Taigi, taip konfigūruojate „dnsmasq“ „Ubuntu Server 18.04 LTS“. Dėkojame, kad perskaitėte šį straipsnį.