Ställa in statisk IP-adress:
Först måste du ställa in en statisk IP-adress på din CentOS 7-maskin. Du kan göra det via Network Manager Text User Interface nmtui.
Kör nmtui med följande kommando:
$ sudo nmtui
Välj nu Redigera en anslutning och tryck
Välj nu Automatisk från IPv4-KONFIGURATION avsnitt och tryck
Välj nu Manuell och tryck
Navigera nu till
Nu måste du lägga till IP-adress, gateway, DNS-serveradress och sökdomän.
Adressen ska vara IP-adressen till din CentOS 7-maskin. Detta kommer också att vara din DNS-servers IP-adress när du konfigurerar dnsmasq.
Gatewayen är din routers IP-adress.
Använd IP-adressen som du ställer in för din CentOS 7-maskin som den primära DNS-servern. Då föredrar jag att lägga till 8.8.8.8 (Googles offentliga DNS-server) som sekundär DNS-server.
Sökdomänen ska vara ditt eget domännamn.
När du är klar, se till att alla markerade alternativ är markerade. Du kan välja alternativ och trycka på
Navigera sedan till
Slutligen, tryck
När din dator startar ska IP-adressen ställas in som du kan se på skärmdumpen nedan.
$ ip a
Installera dnsmasq:
Dnsmasq finns tillgängligt i det officiella paketförvaret för CentOS 7. Så du kan enkelt installera det med YUM-pakethanteraren.
Uppdatera först YUM-paketets förvarscache med följande kommando:
$ sudo yum makecache
Kör nu följande kommando för att installera dnsmasq:
$ sudo yum installera dnsmasq
Nu, tryck y och tryck sedan på
Tryck y och tryck sedan på
dnsmasq ska installeras.
Konfigurera dnsmasq:
Standardns dnsmasq-konfigurationsfil är / etc / dnsmasq.konf. Den här filen innehåller alla alternativ som stöds av dnsmasq och väldokumenterade. Men det är väldigt långt och svårt att arbeta med. Så jag ska byta namn på den här filen till / etc / dnsmasq.konf.bk och skapa en ny konfigurationsfil / etc / dnsmasq.konf. På så sätt kan jag bara titta på filen när jag behöver hjälp / etc / dnsmasq.lura.bk och skriv in de önskade alternativen i / etc / dnsmasq.konf fil.
För att byta namn på dnsmasq-konfigurationsfilen, kör följande kommando:
$ sudo mv / etc / dnsmasq.conf / etc / dnsmasq.konf.bk
Skapa nu en ny konfigurationsfil med följande kommando:
$ sudo vi / etc / dnsmasq.konf
Nu, tryck i för att gå till INSERT-läget för vi och skriva in följande rader. Tryck sedan på
Här, hamn används för att ställa in porten (53 i den här artikeln) som dnsmasq kommer att lyssna på.
domän är ditt eget domännamn. Jag har använt exempel.com i den här artikeln.
Starta om dnsmasq-tjänsten med följande kommando:
$ sudo systemctl starta om dnsmasq
Kontrollera nu om dnsmasq-servern körs korrekt med följande kommando:
$ sudo systemctl status dnsmasqDet fungerar korrekt.
Lägga till nya DNS-poster till dnsmasq:
Nu kan du lägga till nya DNS-poster till dnsmasq mycket enkelt med hjälp av / etc / värdar fil.
För att göra det, öppna / etc / värdar fil med vi enligt följande:
$ sudo vi / etc / värdar
Skriv nu in följande rader i slutet av filen och spara filen.
192.168.21.20 ns.exempel.com192.168.21.51 dockare1.exempel.com
192.168.21.52 docker2.exempel.com
192.168.21.53 docker3.exempel.com
192.168.21.80 esxi1.exempel.com
192.168.21.81 esxi2.exempel.com
192.168.21.100 www.min webbsida.com
Här har du en DNS-post i varje rad. Varje rad innehåller en IP-adress och ett värdnamn åtskilda av flikar eller mellanslag. Du skriver in IP-adressen först och sedan värdnamnet.
Starta om dnsmasq-tjänsten nu för att ändringarna ska träda i kraft.
$ sudo systemctl starta om dnsmasq
Testa DNS-server:
Nu kan du använda dig för att testa om DNS-servern fungerar eller inte.
NOTERA: Grävkommandot är inte tillgängligt på CentOS 7 som standard. Grävkommandot ingår i bind-utils paket. Du kan installera det enligt följande:
$ sudo yum installera bind-utilsKör nu följande kommando för att kontrollera om DNS-namnet (låt oss säga docker1.exempel.com) kan lösas:
$ dig docker1.exempel.com
Som du kan se skrivs IP-adressen till DNS-namnet ut. Så det fungerar.
dnsmasq kan också fungera som en Caching DNS-server. För att testa om DNS-cachning fungerar, kör du följande kommando:
$ dig google.comSom du kan se IP-adresserna till DNS-namnet google.com skrivs ut på skärmen. Så DNS-caching fungerar också.
Andra dnsmasq-alternativ:
Jag har visat dig en mycket grundläggande dnsmasq-konfiguration ovan. Men det finns några andra vanliga alternativ som du kan använda för att konfigurera dnsmasq. I det här avsnittet ska vi ta en titt på dem.
- användare och grupp - Du kan använda dessa alternativ för att ställa in en köranvändare och grupp för dnsmasq.
Till exempel,
användare = dnsmasqgrupp = dnsmasq
- cachestorlek - Om du vill öka antalet DNS-poster som cachas av dnsmasq-servern, använd sedan det här alternativet.
För att till exempel ställa in cache-storlek till 1000, använd
cache-storlek = 1000- addn-värdar - Tidigare använde jag standard / etc / värdar fil för att lägga till nya DNS-poster. Men om du vill använda olika värdfiler för olika domännamn är det här alternativet användbart för dig.
Du kan till exempel skapa en ny fil / etc / värdar.exempel.com och lägg till alla exemplen.com DNS-poster där. Lägg sedan till följande rad i din / etc / dnsmasq.konf fil:
addn-hosts = / etc / hosts.exempel.com- resolv-fil - Som standard använder dnsmasq / etc / resolv.konf fil för att lära dig vilka DNS-servrar som ska användas för cachning av namn. Men om du vill att dnsmasq ska få den här informationen från någon annan fil, skapar du bara filen, lägger till DNS-servrar i den filen och slutligen lägger till resolv-fil alternativ till din dnsmasq-konfigurationsfil / etc / dnsmasq.konf.
Till exempel för att använda filen / etc / resolv2.konf som dnsmasq resolv-fil,
skapa filen enligt följande:
$ sudo vi / etc / resolv2.konfLägg nu till dina DNS-servrar där i följande format. Kom ihåg att sätta högprioriterade över andra.
namnserver 192.168.21.2namnserver 8.8.8.8
Lägg sedan till följande rad i / etc / dnsmasq.konf fil.
resolv-fil = / etc / resolv2.konfDet finns många fler alternativ för dnsmasq. Jag rekommenderar att du kontrollerar standardkonfigurationen för dnsmasq som du bytte namn till / etc / dnsmasq.konf.bk tidigare för mer information.
Så det är så du konfigurerar dnsmasq DNS-server på CentOS 7. Tack för att du läste den här artikeln.