วิธีดูที่อยู่ DNS ที่กำหนดโดย DHCP


33

วิธีดูที่อยู่ DNS ที่กำหนดโดย DHCP

ifconfig ไม่สามารถแสดงได้

$ ifconfig -a
eth0      Link encap:Ethernet  HWaddr 90:e6:ba:22:6a:f2  
          inet addr:192.168.1.111  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::92e6:baff:fe22:6af2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:224856 errors:0 dropped:0 overruns:0 frame:0
          TX packets:220040 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:166848627 (166.8 MB)  TX bytes:20256333 (20.2 MB)
          Interrupt:46 Base address:0x4000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:5889 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5889 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:468885 (468.8 KB)  TX bytes:468885 (468.8 KB)

wlan0     Link encap:Ethernet  HWaddr 00:26:5e:e8:4f:8e  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

สิ่งที่ส่งคืนโดย: ifconfig | grep 'inet addr:' ?
david6

@ david6 inet addr: 192.168.1.111 Bcast: 192.168.1.255 Mask: 255.255.255.0 inet addr: 127.0.0.1 Mask: 255.0.0.0
Victor S

สิ่งนี้จะช่วยคุณได้cat /var/lib/dhcp3/dhclient.leases | grep dhcp-server-identifier
devav2

@ devav2 $ cat /var/lib/dhcp/dhclient-529bed02-363e-4e97-bd5d-9f63f42f17f2-eth0.lease | grep dhcp-server-identifier 192.168.1.1; ตัวเลือก dhcp-server-identifier 192.168.1.1; ตัวเลือก dhcp-server-identifier 192.168.1.1; ตัวเลือก dhcp-server-identifier 192.168.1.1; ตัวเลือก dhcp-server-identifier 192.168.1.1;
Victor S

1
สิ่งที่ขอ? บริการ DHCP กำหนดที่อยู่ IP จากพูล (หรือช่วง) เซิร์ฟเวอร์ DNS ส่งคืนที่อยู่ IP สำหรับชื่อโฮสต์โดเมนหรือกล่องจดหมาย (ระเบียน MX) เอาท์พุท ifconfigของคุณดูปกติ ..
david6

คำตอบ:


40

เป็นเวลาอย่างน้อย Ubuntu 15.10 เป็นต้นไป (อาจเป็นเวอร์ชั่นก่อนหน้า) ที่ทำงานในเทอร์มินัล:

nmcli dev show eth0 | grep IP4

eth0เป็น iface ที่พบบ่อยที่สุด แต่อาจเป็นeth1เช่นeth2นั้นเป็นต้น

nmcli dev list iface eth0 | grep IP4สำหรับรุ่นเก่าใช้งาน


1
คำตอบที่ยอดเยี่ยม! ขอบคุณสำหรับการแบ่งปันของคุณ! ฉันเข้าใจแล้ว.
Victor S

ดีใจที่มันช่วย ฉันพบว่าเมื่อฉันต้องการวิธีรับข้อมูลจากนั้นแยกวิเคราะห์เพื่อแสดงตามต้องการเนื่องจากฉันมีเซิร์ฟเวอร์ DNS ที่แตกต่างกัน 3 รายการ (ISP, Google และ OpenDNS)
Marty ผัด

7
ตั้งแต่วันที่ 15.04 คำสั่งคือnmcli dev show
Sergiy Kolodyazhnyy

3
ด้วยnmcli dev show eth0(ณ วันที่ 15.04) มันยังทำงานบน Debian Buster ขอบคุณ!
Luc

1
@YandryPozo โพสต์คำตอบตามที่ขอ :)
Sergiy Kolodyazhnyy

13
$ nm-tool 

จะแสดงรายการเซิร์ฟเวอร์ DNS


1
+1 เนื่องจากสิ่งนี้ได้รับการทดสอบว่าใช้งานได้ถึง 14.04 รีลีส สำหรับ 15.04 และรุ่นที่ใหม่กว่าให้ใช้nmcliตามคำแนะนำอื่น ๆ แทน
clearkimura

7

วิธีรับที่อยู่ DNS เปิดเทอร์มินัล ( Ctrl+ Alt+ T) และพิมพ์:

cat /var/lib/dhcp/dhclient.leases | grep dhcp-server-identifier

2
ไม่มีสิ่งใดใน /var/lib/dhcp/dhclient.leases มันว่างเปล่า
Victor S

$ file /var/lib/dhcp/dhclient.leases /var/lib/dhcp/dhclient.leases: ว่างเปล่า
Victor S

/var/lib/dhcp/dhclient.eth0.leases ลอง
frag

ว่าการใช้งานที่ไร้ประโยชน์ของ catคุณอาจหมายถึงgrep domain-name-servers /var/lib/dhcp/dhclient.leases( domain-nameไม่dhcp-server)
Pablo A

6

นี่มันคือ:

cat /etc/resolv.conf

แต่อย่าแก้ไขไฟล์นี้


ใน Ubuntu รุ่นล่าสุด (โพสต์ 2012 ฉันคิดว่า) มันจะไม่เป็นประโยชน์เนื่องจากมันจะมีnameserver 127.0.1.1หมายถึงการติดตั้ง localhost dnsmasq จะดีกว่าที่แบบสอบถาม NetworkManager เขียนโดย @ anwar-อิหร่านและมาร์ตี้ @ ทอด
Gerlos

ดังที่คุณพูดถึงไฟล์นั้นสามารถแก้ไขได้และไม่จำเป็นต้องมีที่อยู่ที่กำหนดโดย DHCP ตอนนี้ถ้าคุณแก้ไขด้วยตัวเองแน่นอนว่ามันจะแตกต่างกัน - แต่ถ้าคุณใช้ VPN บริษัท ล่ะ หรืออย่างอื่นมีอิทธิพลต่อไฟล์หรือไม่ นั่นเป็นเหตุผลที่ฉันคิดว่ามันไม่ใช่คำตอบที่ดีแม้ว่าจะง่ายและเป็นสากล มันเป็นสถานที่ที่ดีที่จะดู แต่ไม่ใช่คำตอบที่แท้จริงด้วยตัวเอง
Luc

3

ในฐานะที่เป็นทางเลือก GUI สำหรับคำตอบของ @ MartyFried ให้ลองสิ่งนี้

  1. คลิกที่ไอคอนการเชื่อมต่อเครือข่ายที่แผงด้านบน

  2. เลือกการตั้งค่า Wi-Fi

  3. ควรแสดงที่อยู่เซิร์ฟเวอร์ DNS ให้คุณทราบ

    ภาพหน้าจอ


4
Ubuntu ของฉันไม่มีเดสก์ท็อป GUI
Victor S

@VictorS จะแสดงข้อมูลเดียวกันกับคำตอบอื่น ๆ ฉันตรวจสอบแล้ว
Anwar

1
ขอบคุณสำหรับคำตอบของคุณสะดวกสำหรับผู้ใช้ gnome หรือ KDE
Victor S


2

ดังที่ฉันกล่าวถึงในความคิดเห็น (ซึ่งตามคำขอยอดนิยมได้กลายเป็นคำตอบตอนนี้) หนึ่งสามารถใช้nmcli dev showเป็น Ubuntu 15.04 เพิ่มgrepไปที่มิกซ์และคุณตั้งค่าไว้:

$ nmcli dev show | grep 'DNS'                                                                                                                                                                     
IP4.DNS[1]:                  208.67.222.222
IP4.DNS[2]:                  208.67.220.220

2

ตอนนี้ที่ Ubuntu (และ Debian และ distros เกือบทั้งหมด) ใช้systemd (ตรวจสอบด้วยfile /sbin/init) บางทีวิธีที่ดีกว่าในการรับข้อมูลนี้คือ:

systemd-resolve --status

1
คำตอบที่สมบูรณ์แบบสำหรับระบบที่ไม่ได้ใช้งาน NetworkManager Ubuntu 18.04, Ubuntu 19.10
Ryan Jeremiah Freeman

มันทำงานได้ใน Raspbian เกินไป
riofly

2

ทางออกที่แท้จริงของฉัน (คือ 2015, Ubuntu 14.04) คือ:

  1. เริ่ม CLI
  2. ประเภท: sudo apt-get install gnome-system-tools
  3. หลังจากติดตั้งสำเร็จให้พิมพ์ที่ terminal: network-admin

หากคุณไม่สามารถทำสิ่งใดได้ลองสิ่งนี้แม้ว่ามันจะไม่ดีพอสำหรับฉัน แต่มันทำให้งานของฉันเสร็จ:

  1. ชนิด dig google.com
  2. ใกล้ถึงจุดสิ้นสุดคุณจะเห็นบางสิ่งเช่นนี้ (est. 2015) ;; SERVER: และจากนั้นที่อยู่ IP (อย่างน้อยบนเครื่องของฉัน) นั่นคือเซิร์ฟเวอร์ DNS จริงที่แก้ไขโดเมนให้คุณ เซิร์ฟเวอร์นั้นสามารถเปลี่ยนต่อชื่อโฮสต์ได้

0

หากคอมพิวเตอร์ของคุณใช้งานเราเตอร์ / WiFi ของผู้ให้บริการอินเทอร์เน็ตคุณจะได้รับที่อยู่ IP ส่วนตัวจาก DHCP ของเราเตอร์เช่น 192.168.0.2 หรือ 192.168.1.100

ในการรับที่อยู่ IP สาธารณะของ DHCP ของ DNS จากผู้ให้บริการอินเทอร์เน็ตของคุณคุณต้องเรียกใช้บรรทัดคำสั่งติดตามบนเทอร์มินัล:

dig +short myip.opendns.com @resolver1.opendns.com
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.