Metode 1: Endre grensesnittinnstillingene til statiske
Metode 2: Skriv beskytte navneserverne dine
Metode 3: Bruk DHCP-kroker
For DHCP-brukere kan det være tider når du må redigere for /etc/resolv.confå bruke andre navneservere. Så, etter en periode (eller etter en omstart av systemet), oppdager du at endringene dine /etc/resolv.confhar blitt tilbakestilt.
Denne opplæringen viser tre metoder for å stoppe DHCP fra å endre /etc/resolv.confpå Debian eller Ubuntu.
Metode 1: Endre grensesnittinnstillingene til statiske
- På en cloud vps foreslår jeg ikke å bruke denne metoden.
- Hvis du bruker denne metoden, kan det hende at omstartsprosessen (til du kan logge på via ssh) tar lengre tid.
Først må vi få IP/nettmaske/gateway til serveren. Kjør følgende kommando.
ifconfig | grep "inet addr" | head -n 1 | awk '{print $2, $4}'
Dette gir serverens IP og nettmaske. Ser på eksempelutgangen...
addr:1.2.3.4 Mask:255.255.254.0
... serverens IP-adresse er 1.2.3.4 og masken er 255.255.254.0 .
For å få gateway-adressen, kjør følgende kommando.
netstat -rn | grep '^0.0.0.0' | awk '{print $2}'
I dette eksemplet vil jeg bruke gateway-adressen 1.2.3.1 .
Nå som vi har IP/nettmaske/gateway , rediger /etc/network/interfaces.
vim /etc/network/interfaces
Gjør følgende redigeringer:
# Comment out this line
# iface eth0 inet dhcp
# Add these contents
iface eth0 inet static
address 1.2.3.4
mask 255.255.254.0
gateway 1.2.3.1
Husk at du må erstatte disse verdiene med riktig IP/nettmaske/gateway til serveren.
Lagre og avslutt, og start deretter på nytt.
Metode 2: Skriv beskytte navneserverne dine
Endre navneserverne dine ved å redigere /etc/resolv.conf. Når du har gjort endringene dine, skriv beskytte filen.
chattr +i /etc/resolv.conf
Den +ialternativ (attributt) skrive beskytter /etc/resolv.conffilen på Linux, slik at ingen kan endre det - ikke engang root brukeren.
Hvis du trenger å fjerne skrivebeskyttelsesattributtet, bruk følgende kommando.
chattr -i /etc/resolv.conf
Metode 3: Bruk DHCP-kroker
Dette er metoden jeg anbefaler å bruke mest.
Rediger /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate.
vim /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate
Gjør følgende redigeringer:
#!/bin/sh
make_resolv_conf(){
:
}
Lagre og lukk.
Oppdater tillatelsene på nodnsupdatefilen.
chmod +x /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate
Start serveren på nytt. Du kan nå oppdatere navneservere ved å redigere /etc/resolv.confuten å bekymre deg for tilbakeføring.