Apakah ada perintah untuk daftar server dns yang digunakan oleh sistem saya?
Aku mencoba
$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.0.1
$ cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
Tapi itu doesn't daftar server apapun, jika saya pergi ke "Network Manager GUI Tool", dalam Nirkabel bagian ini berisi daftar "DNS 192.168.1.1 8.8.8.8 8.8.4.4"
Saya bisa mendapatkan informasi yang sama dari baris perintah?
Saya menggunakan Ubuntu 12.04 LTS
resolv.conf isn't benar-benar digunakan lagi, kecuali jika anda menerapkannya pada diri sendiri. Network manager tidak sekarang. Saya buat sebuah alias untuk daftar DNS server pada sistem saya, karena saya kadang-kadang beralih dari OpenDNS untuk Google's open DNS.
Ubuntu >= 15
nmcli device show <interfacename> | grep IP4.DNS
Ubuntu <= 14
nmcli dev list iface <interfacename> | grep IP4
Dalam kasus saya, <interfacename>
adalah eth0
, yang lebih umum, tetapi tidak selalu terjadi.
Lihat jika ini adalah apa yang anda inginkan.
EDIT:
Saya pikir resolv.conf adalah benar-benar digunakan secara tidak langsung, karena jaringan manajer menciptakan server yang mendengarkan pada 127.0.0.1, tetapi saya diberitahu bahwa ini adalah sebuah implementasi detail yang tidak boleh dihitung. Saya berpikir bahwa jika anda memasukkan alamat DNS sebelum entri ini, mereka mungkin bisa digunakan, tapi saya'm tidak yakin persis bagaimana ini bekerja. Saya pikir itu's terbaik untuk menggunakan network manager dalam kebanyakan kasus, bila mungkin.
Ini berlaku untuk Ubuntu 13.10 dan sebelumnya. Untuk Ubuntu 14.04 dan di atas, lihat Koala Yeung's jawaban untuk: Bagaimana cara untuk mengetahui DNS yang saya gunakan di Ubuntu dari 14.04 dan seterusnya
Gunakan
nm-tool
Anda akan mendapatkan output yang mirip dengan
NetworkManager Tool
State: connected (global)
- Device: eth0 [Wired connection 1] -------------------------------------------
Type: Wired
Driver: e1000e
State: connected
Default: yes
HW Address: 00:11:22:33:44:55
Capabilities:
Carrier Detect: yes
Speed: 1000 Mb/s
Wired Properties
Carrier: on
IPv4 Settings:
Address: 10.21.6.13
Prefix: 24 (255.255.255.0)
Gateway: 10.21.6.1
DNS: 10.22.5.133
DNS: 10.22.5.3
Atau untuk melihat DNS melakukan
nm-tool | grep DNS
Dua top skor jawaban, nmcli dev daftar iface <interfacename> | grep IP4
dan nm-alat
kedua menganggap bahwa network-manager di control. Yang itu - pada mesin desktop sebagian besar waktu setidaknya. Tapi lebih lengkap jawabannya adalah bahwa kadang-kadang network-manager tidak di kontrol. E. g. vpnc
mengacaukan /etc/resolv.conf
ini diatas.
Jadi: periksa Dulu jika 127.0.0.1/localhost digunakan. Hal ini bisa dilakukan dengan menggali
:
> dig something.unknown | grep SERVER:
;; SERVER: 127.0.0.1#53(127.0.0.1)
Sekarang anda tahu bahwa kita berada ** menggunakan localhost. Pergi ke depan dengan salah satu jawaban. Aku seperti:
> nm-tool | grep DNS:
DNS: 8.8.8.8
Tapi jika 127.0.0.1/localhost adalah tidak digunakan, maka nm-alat
's dan nmcli
's output akan menyesatkan:
> dig something.unknown | grep SERVER:
;; SERVER: 172.22.216.251#53(172.22.216.251)
> nm-tool | grep DNS:
DNS: 8.8.8.8
Di sini, menggali
adalah benar dan nm-alat
's informasi yang menyesatkan. Dalam kenyataannya alamat lokal ke lingkungan I've VPN-ed ke diselesaikan dengan benar. Semua yang Google's DNS 8.8.8.8
doesn't tahu tentang.
Hal ini karena setelah terhubung ke VPN dengan vpnc
, menempatkan garis di /etc/resolv.conf
sehingga terlihat seperti:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 1.2.3.4
nameserver 127.0.0.1
search MyDomain
cat /etc/resolv.conf
harus menunjukkan DNS server anda.
Anda tidak boleh mengubah resolv.conf
langsung dengan Ubuntu 12.04. Jika anda perlu mengubah mereka meskipun, anda dapat menambahkan server DNS baru di
/etc/network/interfaces
file dengan menambahkan kode berikut ini:
dns-nameservers x.x.x.x x.x.x.x
dimana x
adalah DNS server yang ingin anda gunakan.
Jika aku jadi kau, aku akan menghapus network manager
. Menurut pendapat saya itu's tumpukan sampah.
Anda dapat mencapai segala sesuatu yang perlu anda lakukan secara manual tanpa khawatir tentang mengubah pengaturan anda, terutama jika anda memiliki beberapa Nic pada komputer.
nmcli versi 0.9.10
Anda dapat menggunakan salah satu dari perintah ini:
nmcli -t -f IP4.DNS device show eth0
IP4.DNS[1]:192.168.1.1
IP4.DNS[2]:8.8.8.8
nmcli -t -f IP4.DNS connection show conn-name
IP4.DNS[1]:192.168.1.1
IP4.DNS[2]:8.8.8.8
Tampaknya dikelola oleh network manager. Lihat di sini http://manpages.ubuntu.com/manpages/precise/man5/NetworkManager.conf.5.html
untuk penjelasan.
Atau versi pendek ini untuk melihat dalam
/etc/NetworkManager/NetworkManager.conf
atau
<SYSCONFDIR>/NetworkManager/NetworkManager.conf