W tej chwili mój plik /etc/resolv.conf wygląda następująco:
# Generated by NetworkManager
nameserver 10.165.246.33
nameserver 192.135.82.60
nameserver 10.165.74.2
Pierwsze dwa serwery nazw są automatycznie konfigurowane przez DHCP; ostatni to ten, który dodałem ręcznie, w NetworkManager. Jest także najważniejszy, ponieważ rozwiązuje nasze wewnętrzne nazwy domen (np build-server-17.our-company-domain.com
.).
Problem polega na tym, NetworkManager dodaje go do dołu z /etc/resolv.conf
, więc podczas uzyskiwania dostępu do adresu URL intranet, moi przeglądarka próbuje rozwiązać go za pomocą pierwszych dwóch serwerów, a to trwa wieki.
Jak sprawić, aby NetworkManager dodał ręcznie skonfigurowany serwer DNS przed serwerami skonfigurowanymi automatycznie?
centos
networkmanager
Nowy użytkownik Linux
źródło
źródło
Odpowiedzi:
Nie widzę, do którego systemu należy się konkretnie adresować, ale jeśli Twój używa
resolvconf
, spróbuj wykonać następujące czynności jako root (su -
lubsudo -i
):W pliku tym znajduje się ostrzeżenie, że ręczne zmiany zostaną zastąpione; ale w kontekście wiadomość dotyczy
/etc/resolv.conf
, a nie/etc/resolvconf/resolv.conf.d/head
.Powinno to umieścić żądany serwer nazw jako pierwszy na liście. Oczywiście, jeśli działa to w twoim systemie operacyjnym, 10.165.74.2 można usunąć z NetworkManager.
Lokalny program rozpoznawania nazw
dnsmasq
jest również doskonałą ścieżką do przodu. Używającdnsmasq
, można wykorzystać znacznie większą kontrolę nad DNS i DHCP. Na przykład w tym scenariuszudnsmasq
można wysłać zapytanie do określonego serwera nazw na podstawie określonej nazwy domeny z jegoserver
opcją. Zobacz fragment,dnsmasq.conf
który może dotyczyć Twojego celu poniżej.Aktualizacja
Dziękujemy za wzmiankę o systemie operacyjnym. W CentOS 7 istnieje wiele metod. W interfejsie GUI kliknij Aplikacje> Narzędzia systemowe> Ustawienia> Sieć. Wybierz połączenie do skonfigurowania.
Wyłącz Automatyczny DNS i podaj serwery nazw. Zastosuj konfigurację.
Następnym razem, gdy NetworkManager rozpocznie to połączenie, zapisuje wartości niestandardowe. (Podczas testowania wyłączyłem i ponownie włączyłem sieć, ponieważ miałem dwa połączenia sieciowe).
Zgodnie z dokumentacją ,
W szczególności
nmcli
dokumentacja wyglądała bardzo dobrze.źródło
resolvconf
pakietu.dnsmasq
wydaje się jednak dobrym rozwiązaniem.I przypadkowo stworzył duplikat pytanie tutaj . Odpowiedź jest dostępna, ale zasadniczo musisz utworzyć:
jeśli jeszcze nie istnieje, i dodaj:
Nie zapomnij o średniku na końcu!
Następnie wystarczy zrestartować komputer i automatycznie przenieść linię „nameserver [adres IP serwera]” w pliku /etc/resolv.conf na sam szczyt!
źródło
Istnieje inny sposób: nie trzeba wyłączać NetworkManager.service. Wystarczy ustawić ifcfg-idevice:
Nie musisz ustawiać ustawień /etc/NetworkManager/NetworkManager.conf, takich jak:
źródło