Jak vyřešit chybu rozlišení DNS na serveru Linux?
Průvodce krok za krokem pro dočasné selhání překladu názvů, selhání překladu domény a chyby apt aktualizace DNS.
Ačkoli se zdá, že servery Linux mají připojení k internetu, adresy domén nemusí být vyřešeny. V tomto případě může server přistupovat k IP adresám, ale google.com, debian.org, ubuntu.com nebo licenční/API služby.
Tento problém se projevuje zejména v následujících procesech:
- apt aktualizace nebo mňam aktualizace Chyba přijatá během
- Nefungují licence WHMCS, platby nebo odkazy API
- Herní panel se nemůže připojit ke vzdáleným adresám API
- Doménový ping nefunguje, když ping IP běží na serveru
- Dočasné selhání při překladu názvů chyba vidět
1. Pochopení, zda je DNS skutečně problém
Nejprve zkontrolujte veřejný přístup k internetu serveru pomocí příkazu ping na jeho IP adresu.
ping -c 4 8.8.8.8
Pokud tento příkaz odpoví, server má přístup k Internetu na úrovni IP. Nyní otestujte rozlišení domény:
ping -c 4 google.com
Pokud ping IP funguje, ale ping domény nefunguje, problém je pravděpodobně na straně DNS.
2. Kontrola aktuálního nastavení DNS
V systémech Linux jsou obvykle servery DNS /etc/resolv.conf je definováno v souboru.
cat /etc/resolv.conf
Zdravé nastavení DNS obvykle vypadá takto:
nameserver 1.1.1.1 nameserver 8.8.8.8
Pokud je soubor prázdný, obsahuje nesprávné adresy IP nebo zapisuje pouze místní/nefunkční adresy DNS, překlad domény se nemusí podařit.
3. Dočasná definice DNS
Pro rychlé testování můžete definovat dočasné DNS pomocí následujícího příkazu:
echo "nameserver 1.1.1.1" > /etc/resolv.conf echo "nameserver 8.8.8.8" >> /etc/resolv.conf
Otestujte znovu později:
ping -c 4 google.com
4. Trvalé nastavení DNS na systémech Ubuntu / Debian
Na moderních systémech Ubuntu jsou nastavení sítě obvykle netplan Spravuje ho . Seznam souborů Netplan:
ls /etc/netplan/
Upravit soubor:
nano /etc/netplan/01-netcfg.yaml
Příklad definice DNS:
network:
version: 2
ethernets:
eth0:
dhcp4: true
nameservers:
addresses:
- 1.1.1.1
- 8.8.8.8Chcete-li použít nastavení:
netplan apply
Pokud jste připojeni přes SSH a nejste si jisti nastavením sítě, buďte opatrní. Nesprávné nastavení síťového plánu může přerušit vaše připojení SSH.
5. CentOS / AlmaLinux / Rocky Linux Nastavení DNS
Na systémech založených na RedHat lze nastavení DNS provést pomocí NetworkManageru.
Chcete-li zobrazit název aktivního připojení:
nmcli con show
Příklad nastavení DNS:
nmcli con mod "System eth0" ipv4.dns "1.1.1.1 8.8.8.8" nmcli con up "System eth0"
Název vašeho připojení se může lišit. V příkazu musíte použít svůj vlastní název připojení.
6. Systemd-resolved Check
Překlad DNS na některých systémech vyřešeno systemd Je řízena službou.
systemctl status systemd-resolved
Pokud je služba mimo provoz, můžete ji spustit:
systemctl enable systemd-resolved systemctl start systemd-resolved
Chcete-li zobrazit stav DNS:
resolvectl status
7. Kontrola DNS na chyby aktualizace balíčku
Když je DNS poškozen, nebudou fungovat ani správci balíčků. Mohou nastat například následující chyby:
Temporary failure resolving 'archive.ubuntu.com' Could not resolve host Name or service not known
V tomto případě by úložiště balíčků nemělo být považováno za poškozené. Nejprve je třeba otestovat rozlišení DNS.
Časté chyby
- Myslí si, že neexistuje internet, ale neuvědomuje si, že ve skutečnosti je poškozen pouze DNS
- Zapsat dočasný DNS do souboru /etc/resolv.conf a myslet si, že je to trvalé řešení
- Nesprávné odsazení mezer v souboru Netplan
- Překlep v názvu připojení NetworkManager
- Myslí si, že fungující API nebo licenční systém je vadný kvůli problému s DNS
FAQ
IP ping funguje, ale doménový ping nefunguje, v čem je problém?
S největší pravděpodobností je problém s rozlišením DNS. Server má přístup k internetu, ale nemůže překládat názvy domén na adresy IP.
Které servery DNS mohu použít?
Běžně dostupné jsou 1.1.1.1, 1.0.0.1, 8.8.8.8 a 8.8.4.4. V podnikových strukturách může být preferován privátní DNS server.
Proč se resolv.conf mění sám od sebe?
Protože soubor je automaticky spravován pomocí netplan, NetworkManageru nebo systemd-resolved na většině systémů.
Bezpečnostní a provozní doporučení
- Po změně DNS nezapomeňte provést test rozlišení domény.
- Do prvního kontrolního seznamu přidejte chyby DNS v systémech plateb, licencí a API.
- Definujte alespoň dvě adresy DNS namísto jednoho DNS.
- Pokud váš poskytovatel serveru poskytuje soukromé DNS, zvažte to také.
- Pamatujte, že nesprávné nastavení síťového plánu může přerušit připojení SSH.
Tento článek je speciálně připraven pro PvPServer.