(Kontynuacja podobnego pytania z 12.04 .)
Przed Ubuntu 12.04 możesz zobaczyć aktywny DNS w /etc/resolv.conf
. W Ubuntu 12.04 NetworkManager nie działa już z tym plikiem. Musisz bezpośrednio skonsultować się z narzędziem wiersza poleceń nm-tool
.
Co ciekawe, nm-tool
nie jest już domyślnie instalowany w wersji 14.04 i nowszych. Chociaż nadal możesz instalować przez apt-get install
, nie możesz założyć, że wszystkie Ubuntu mają to po wyjęciu z pudełka.
Pozostaje więc pytanie. Skąd wiesz, że przy domyślnej instalacji DNS, którego używasz z wiersza poleceń?
źródło
nmcli d list
. Poza tym świetne rzeczy tutaj!r+
zamiastrr*
0.9.8.8
nmcli dev show
wyrzucają duże, kręcone komunikaty o błędach.nmcli dev show
należy do nmcli w dniu 15.04. Z jakiegoś powodu stary nmcli został uznany za niestabilny, więc. . . teraz używająnmcli
tych samych flag co Fedora. Prawdopodobnie wynika to z przejścia na systemd. A ponieważ ta odpowiedź pasuje do 15.04, ale nie do 14.04, mocno kusi mnie, aby głosować za niąAnaliza pakietów byłaby alternatywną metodą, która działa niezależnie od NetworkManager lub innego używanego narzędzia do połączeń sieciowych. Podstawowym pomysłem jest wysłanie zapytania dns zi
nslookup
na drugim terminalu sprawdź, dokąd idą pakiety.W tym celu musielibyśmy połączyć się z siecią po raz pierwszy, aby nic nie zaśmiecało połączeń i uruchomić następującą komendę:
W alternatywnym biegu terminala:
Gdy otrzymasz listę pakietów z
tcpdump
, sprawdź, dokąd idą z twojego adresu IP.Na przykład,
Jak widać, mój laptop,
eagle
wysyła pakiety do dns mojego uniwersytetu,b.resolvers.Level3.net.domain
. Jeśli chcesz zobaczyć adres IP, możesz użyć-n
flagi ztcpdump
.Na przykład:
źródło
sprawdź połączenia sieciowe:
i wybierz połączenie, które chcesz skonfigurować.
Zamień „Internet” bez nazwy połączenia
Zastosowanie może nadal używać
nm-tool
:Zainstaluj go w wersji U14.04 i nowszej, używając
przykład:
źródło
Jest nadal domyślnie dostępny w wersji 14.04, ponieważ jest dołączony do menedżera sieci. Od tego czasu został usunięty z menedżera sieci (wersja 15.04 i nowsze) i nie jest nawet dostępny przez apt-get.
Na razie w wersji 15.04 można ręcznie pobrać i wyodrębnić nm-tool ze starego pakietu. Uruchom następujące polecenia.
Najpierw utwórz katalog tymczasowy do pracy:
Następnie pobierz starą wersję i rozpakuj pliki:
Utwórz nowy katalog:
(jeśli to mówi
file already exists
, po prostu zignoruj wiadomość i kontynuuj).Skopiuj plik do nowego katalogu:
Wróć do katalogu domowego i usuń katalog tymczasowy:
Teraz ustaw alias dla nm-tool:
Obecny użytkownik powinien teraz móc uruchomić nm-tool z terminala.
Dodatkowo, może to jeszcze nie dokładnie przedstawić wszystkie rzeczywiste rozpoznawania DNS używasz.
Możesz przejść do DNSleaktest.com, aby uzyskać pełny raport. Kliknij Test rozszerzony, aby uzyskać pełny raport.
źródło
W rzeczywistości używa NetworkManager
/etc/resolv.conf
. Jednak w ustawieniach domyślnych wymieniony serwer DNSresolv.conf
jest127.0.0.1
, ponieważ NetworkManager korzysta z własnej wewnętrznej usługi DNS z pewnych niejasnych przyczyn technicznych, które nie są istotne dla wielu osób. Dlatego musisz użyć,nmcli
aby zobaczyć, jakich serwerów DNS używa NetworkManager wewnętrznie.Można jednak również wyłączyć to zachowanie i wrócić do starego, w którym wymieniony jest aktualnie używany serwer DNS
resolv.conf
. Aby to zrobić, po prostu skomentuj liniędns=dnsmasq
w/etc/NetworkManager/NetworkManager.conf
i uruchom ponownie. Dla większości ludzi nie powinno to stanowić różnicy poza faktem, że rzeczywisty serwer DNS będzie teraz wyświetlany wresolv.conf
. Jeśli znajdujesz się w narożnych przypadkach, dla których wprowadzono zmianę, powinno to szybko stać się widoczne i możesz przywrócić domyślne zachowanie, odznaczając ponownie linię.źródło
lista dev nmcli | grep DNS
wyświetli coś takiego;
IP4.DNS[1]: 8.8.8.8 IP4.DNS[1]: 8.8.8.8 IP4.DNS[2]: 8.8.4.4
Powyższe polecenie działa przed Ubuntu 16.04.
W przypadku Ubuntu 16.04 użyj:
nmcli dev show | grep DNS
źródło
nmcli dev show
, nienmcli dev list
?nmcli dev list
działa w 14.04, ale nie w 16.04.Jeśli ktoś ma takie samo pytanie jak ja dla Ubuntu 18.04LTS:
Wyświetl listę wszystkich urządzeń sieciowych zarządzanych przez menedżera sieci:
Pokaż konfigurację konkretnego urządzenia:
Zamiast eth0 musisz wcześniej wprowadzić nazwę urządzenia sieciowego widoczną na liście. Jeśli nie ma wpisu DNS, twoja karta nie ma skonfigurowanego serwera nazw
źródło