Mac OS X, 10.12.2, บรรทัดคำสั่งวิธีการเพิ่มโดเมนการค้นหา


1

ฉันทำสิ่งนี้ตลอดเวลากับ GUI และทำสิ่งที่ฉันกำลังมอง ไม่มีปัญหา.

ค่ากำหนดของระบบ & gt; เครือข่าย & gt; เลือก แลน หรือ Wi-Fi & gt; สูง & gt; DNS & gt; ค้นหาโดเมน และในฟิลด์กล่องเฉพาะนั้นฉันเพิ่มโดเมนการค้นหาทั้งหมดที่ฉันต้องการ เช่น. สำนักงาน, hq, ad.gwn เป็นต้น

คำถาม ฉันจะบรรลุกระบวนการเดียวกันผ่านทางบรรทัดคำสั่งกับ Terminal ได้อย่างไร

จนถึงตอนนี้คือสิ่งที่ฉันทำ:

ขั้นตอนที่ 1 ฉันรันทั้งสองบรรทัดคำสั่งเหล่านี้เพื่อรับภาพรวมของสิ่งที่ฉันมี:

  • networksetup -listallnetworkservices
  • networksetup -listnetworkserviceorder

และนี่คือสิ่งที่ฉันได้รับ:

  • รายการสินค้า
  • อะแดปเตอร์อีเธอร์เน็ต Apple USB
  • Thinkpad USB LAN
  • Wi-Fi
  • บลูทู ธ PAN
  • สะพานสายฟ้า
  • (1) อะแดปเตอร์อีเธอร์เน็ต USB ของ Apple (พอร์ตฮาร์ดแวร์: อะแดปเตอร์อีเธอร์เน็ต Apple USB, อุปกรณ์: en4)
  • (2) Thinkpad USB LAN (พอร์ตฮาร์ดแวร์: Thinkpad USB LAN, อุปกรณ์: en5)
  • (3) Wi-Fi (พอร์ตฮาร์ดแวร์: Wi-Fi, อุปกรณ์: en0)
  • (4) บลูทู ธ PAN (พอร์ตฮาร์ดแวร์: Bluetooth PAN, อุปกรณ์: en3)
  • (5) สะพานสายฟ้า (พอร์ตฮาร์ดแวร์: Thunderbolt Bridge, อุปกรณ์: bridge0)

ขั้นตอน # 2 ฉันพยายามเพิ่มโดเมนการค้นหา (hq, office, ad.gwn) แต่ฉันได้รับข้อความแสดงข้อผิดพลาด  - sudo networksetup -setsearchdomains en4 hq office ad.gwn  - en4 ไม่ใช่บริการเครือข่ายที่รู้จัก  - ข้อผิดพลาด: พารามิเตอร์ไม่ถูกต้อง

ฉันเชื่อมต่อด้วยสายเคเบิลอีเธอร์เน็ตเท่านั้น ไม่มี WiFi ฉันลอง en4 และ en5 ปัญหาเดียวกัน

คำตอบ:


1

รายการแรกบริการเครือข่ายทั้งหมดเพื่อรับภาพรวม:

networksetup -listallnetworkservices

ตัวอย่างผลลัพธ์:

An asterisk (*) denotes that a network service is disabled.
en0
en1

ฉันเปลี่ยนชื่อบริการเครือข่ายทั้งสองจาก "Ethernet" เป็น en0 และ "Ethernet Adapter (1)" เป็น en1 คุณต้องใช้ ของคุณ ชื่อบริการเครือข่ายจริงแน่นอน! หากชื่อบริการเครือข่ายมีช่องว่างคุณต้องใช้เครื่องหมายคำพูด (เช่น "อะแดปเตอร์อีเทอร์เน็ต Apple USB") ในคำสั่งด้านล่าง

ในการตั้งค่าโดเมนการค้นหาสำหรับบริการเครือข่ายให้ใช้:

sudo networksetup -setsearchdomains networkservice domain1 [domain2] [...]

ตัวอย่าง:

sudo networksetup -setsearchdomains en0 example.home example.net example

ตรวจสอบกับ networksetup -getsearchdomains en0:

example.home
example.net
example

ถ้าคุณต้องการ เพิ่ม ค้นหาโดเมนไปยังโดเมนที่มีอยู่แล้วใช้:

SEARCHDOMAIN=$(networksetup -getsearchdomains en0)
sudo networksetup -setsearchdomains en0 $SEARCHDOMAIN domain1 domain2 ...

ขอบคุณ ฉันแก้ไขโพสต์ของฉันและฉันเกือบเสร็จแล้ว เพียงส่วนสุดท้ายฉันได้รับข้อความแสดงข้อผิดพลาด ความช่วยเหลือใด ๆ
Fabio Viola
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.