รับที่อยู่ IP เซิร์ฟเวอร์ DNS จากบรรทัดคำสั่งใน Mac OS X

คุณสามารถดึงข้อมูลที่อยู่ IP ของเซิร์ฟเวอร์ DNS ที่ใช้งานอยู่บน Mac เครื่องใดก็ได้โดยใช้ยูทิลิตี networketup นี้จะกระทำจากบรรทัดคำสั่งเพื่อเปิด app Terminal และพิมพ์หนึ่งในสตริงคำสั่งต่อไปนี้ขึ้นอยู่กับรุ่นของ OS X ที่กำลังทำงานบน Mac


การเรียกดูรายละเอียด DNS จาก Terminal ใน OS X เวอร์ชันใหม่ รวมถึง OS X Yosemite, Mac OS X 10.7 Lion, OS X 10.8 Lion Mountain, 10.9 Mavericks และในภายหลังจะใช้ไวยากรณ์เครือข่ายดังต่อไปนี้:

networksetup -getdnsservers Wi-Fi

นี่ถือว่าคุณกำลังใช้ wi-fi ซึ่งส่วนมากของเราทำในวันนี้ แทนที่ Wi-Fi กับอีเทอร์เน็ตหรืออินเทอร์เฟซที่คุณเลือกหากเป็นอย่างอื่น

การรับข้อมูล DNS จากบรรทัดคำสั่งใน OS X เวอร์ชันก่อนหน้า เช่น Mac OS X 10.6 Snow Leopard 10.5 และก่อนใช้ไวยากรณ์ต่อไปนี้แทน:

networksetup -getdnsservers airport

โปรดทราบว่าฉันกำลังระบุ "Wi-Fi" หรือ "สนามบิน" ในสตริงตัวอย่างเหล่านี้เนื่องจากฉันใช้การเชื่อมต่อแบบไร้สายเป็นหลัก แต่คุณสามารถระบุอีเธอร์เน็ตและบลูทู ธ เพื่อให้ได้รายละเอียด DNS สำหรับอินเทอร์เฟซดังกล่าว เพียงแค่เปลี่ยนข้อความอินเตอร์เฟซหลังด้วยอินเทอร์เฟซที่คุณต้องการระบุข้อมูล DNS IP สำหรับโดยทั่วไปจะเหมือนกันสำหรับอินเทอร์เฟซทุกเครื่องบนคอมพิวเตอร์

สมมติว่ามีเซิร์ฟเวอร์ DNS หลายตัวตั้งค่าเครือข่ายของ Mac OS X คุณจะเห็นรายงานของเซิร์ฟเวอร์ DNS แต่ละเครื่องตามลำดับความสำคัญของพวกเขาโดยมองจากสิ่งต่างๆดังนี้:

8.8.8.8
208.67.220.220
208.67.222.222
10.0.0.1

สำหรับผู้ที่สงสัยว่า DNS IP ส่วนใหญ่ที่อยู่ในรายการตัวอย่างนั้นคือ DNS สาธารณะของ Google ซึ่งเป็นอีกสองระบบจาก OpenDNS โดยที่สุดท้ายคือเราเตอร์ในระบบ หากต้องการคุณสามารถใช้ยูทิลิตีฟรีเช่น namebench เพื่อค้นหาเซิร์ฟเวอร์ DNS ที่รวดเร็ว

นอกจากนี้คุณสามารถดึงข้อมูล DNS โดยใช้คำสั่ง 'nslookup' บนเซิร์ฟเวอร์ซึ่งจะรายงานรายละเอียด DNS ของเซิร์ฟเวอร์ระยะไกลและ DNS หลักของคุณเองเพื่อแก้ไขเซิร์ฟเวอร์อื่น ๆ :

nslookup google.com

นี้จะรายงานกลับบางอย่างเช่นต่อไปนี้กับ "Server" แรก "และ" ที่อยู่ "bit แสดง DNS IP ใช้โดยเครื่องท้องถิ่น:

$ nslookup google.com
Server: 8.8.8.8
Address: 8.8.8.8#53

คำตอบที่ไม่มีสิทธิ์:
ชื่อ: google.com
ที่อยู่: 74.125.239.135

สุดท้ายเป็นอีกทางเลือกหนึ่งคือดูที่ /etc/resolv.conf แต่เนื่องจากไฟล์ดังกล่าวได้รับการสร้างขึ้นโดยอัตโนมัติจึงไม่ถือว่าถูกต้องเสมอหาก DNS มีการเปลี่ยนแปลงเมื่อไม่นานมานี้และยังไม่ได้ล้างออกไปโปรดสังเกตว่าการล้างข้อมูล DNS จะแตกต่างกันเล็กน้อย ในเวอร์ชันใหม่ของ OS X เนื่องจาก Apple มีการเปลี่ยนแปลงวิธีการทำงานของ DNS หลายครั้ง