Wyszukiwanie w witrynie

Jak rozwiązać problem „Tymczasowy błąd rozpoznawania nazw”.


Czasami, gdy próbujesz pingować witrynę, zaktualizować system lub wykonać jakiekolwiek zadanie wymagające aktywnego połączenia internetowego, na terminalu może pojawić się komunikat o błędzie „tymczasowy błąd rozpoznawania nazw”.

Na przykład podczas próby pingowania witryny internetowej może pojawić się następujący błąd:

tecmint@ubuntu:~$ ping google.com
ping: linux-console.net: Temporary failure in name resolution

Zwykle jest to błąd rozpoznawania nazw i pokazuje, że Twój serwer DNS nie może przetłumaczyć nazw domen na odpowiadające im adresy IP. Może to stanowić poważne wyzwanie, ponieważ nie będzie można aktualizować, aktualizować, a nawet instalować żadnych pakietów oprogramowania w systemie Linux.

W tym artykule przyjrzymy się niektórym przyczynom błędu „tymczasowego błędu w rozpoznawaniu nazw” i rozwiązaniom tego problemu.

1. Brakujący lub błędnie skonfigurowany plik resolv.conf

Plik /etc/resolv.conf jest plikiem konfiguracyjnym modułu rozpoznawania nazw w systemach Linux. Zawiera wpisy DNS, które pomagają Twojemu systemowi Linux rozpoznawać nazwy domen na adresy IP.

Jeśli tego pliku nie ma lub jest tam, ale nadal występuje błąd rozpoznawania nazw, utwórz lub otwórz plik /etc/resolv.conf w edytorze tekstu z uprawnieniami roota.

sudo nano /etc/resolv.conf
OR
sudo vim /etc/resolv.conf

Następnie dodaj publiczne serwery DNS Google za pomocą słowa kluczowego serwera nazw, po którym następuje adres IP serwera DNS.

nameserver 8.8.8.8
nameserver 8.8.4.4

Zapisz zmiany i uruchom ponownie usługę rozwiązaną przez system, jak pokazano.

sudo systemctl restart systemd-resolved.service

Rozsądnie jest również sprawdzić status modułu rozpoznawania nazw i upewnić się, że jest on aktywny i działa zgodnie z oczekiwaniami:

sudo systemctl status systemd-resolved.service

Następnie spróbuj pingować dowolną witrynę internetową, a problem powinien zostać rozwiązany.

ping google.com

Po potwierdzeniu połączenia sieciowego pamiętaj o edycji pliku /etc/resolv.conf, aby zapobiec jego zastąpieniu przez narzędzia do zarządzania siecią.

Aby to zrobić, możesz utworzyć dowiązanie symboliczne do /dev/null:

sudo ln -sf /dev/null /etc/resolv.conf

Uwaga: niektóre dystrybucje Linuksa, szczególnie te korzystające z NetworkManager, mogą automatycznie zarządzać plikiem /etc/resolv.conf. W takim przypadku ręczna edycja pliku może nie dać trwałego efektu.

Zamiast tego może być konieczne skonfigurowanie ustawień DNS za pomocą odpowiedniego narzędzia do zarządzania siecią lub plików konfiguracyjnych dla konkretnej dystrybucji. W takich przypadkach koniecznie zapoznaj się z dokumentacją swojej dystrybucji lub zasobami pomocy technicznej, aby poznać zalecaną metodę konfiguracji DNS.

2. Ograniczenia zapory ogniowej

Jeśli pierwsze rozwiązanie nie zadziałało, ograniczenia zapory sieciowej mogą uniemożliwiać pomyślne wykonywanie zapytań DNS. Sprawdź zaporę sieciową i potwierdź, czy port 53 (używany do DNS – rozpoznawania nazw domen) i port 43 (używany do wyszukiwania Whois) są otwarte. Jeśli porty są zablokowane, otwórz je w następujący sposób:

Otwórz porty DNS w zaporze UFW

W dystrybucjach opartych na Debianie musisz otworzyć porty 53 i 43 na zaporze UFW, uruchamiając poniższe polecenia:

sudo ufw allow 53/tcp
sudo ufw allow 43/tcp
sudo ufw reload

Otwórz porty DNS w zaporze FirewallD

W dystrybucjach opartych na RHEL musisz otworzyć porty 53 i 43 w zaporze Firewalld, uruchamiając poniższe polecenia.

sudo firewall-cmd --add-port=53/tcp --permanent
sudo firewall-cmd --add-port=43/tcp --permanent
sudo firewall-cmd --reload

Mamy nadzieję, że masz już pojęcie o błędzie „tymczasowa awaria rozpoznawania nazw” i wiesz, jak go naprawić w kilku prostych krokach. Jak zawsze, Twoja opinia jest dla nas bardzo cenna.