ฉันจะกำหนดค่าโดเมนการค้นหาอย่างถูกต้องได้อย่างไร


25

ฉันเพิ่งติดตั้ง Ubuntu GNOME บนคอมพิวเตอร์ที่ทำงานของฉันแทนที่ Windows 7 เพราะฉันจะทำงานด้านการพัฒนาลีนุกซ์จำนวนมาก

สคริปต์การกำหนดค่าและการพัฒนาจำนวนมากของเราใช้ URL แบบย่อสำหรับเซิร์ฟเวอร์ในเครือข่าย บริษัท นั่นคือพวกเขาใช้มากกว่าhttp://server http://server.location.company.comฉันไม่เคยมีปัญหากับ URLS เหล่านี้ใน Windows แต่ฉันไม่สามารถทำให้มันทำงานได้อย่างถูกต้องใน Ubuntu มันเป็นไปไม่ได้ที่ฉันจะพิมพ์ URL ที่ผ่านการรับรองทั้งหมดเพราะรูปแบบที่สั้นกว่าถูกใช้ทั่วสถานที่ในสคริปต์ต่างๆ แต่ฉันสามารถเข้าถึง URL ที่มีความยาวได้

เมื่อฉันเชื่อมต่อกับ VPN ของ บริษัท โดยใช้ไคลเอ็นต์ Dell SonicWall NetExtender VPN URL ที่สั้นลงจะทำงานได้อย่างถูกต้อง

จากการวิจัยที่ฉันทำไปแล้วฉันคิดว่าฉันต้องกำหนดค่าlocation.company.comเป็นโดเมนการค้นหาบน Ubuntu แต่ความพยายามของฉันในการทำสิ่งนี้ล้มเหลว นี่คือสิ่งที่ฉันได้ลอง:

  • ในแอป "การเชื่อมต่อเครือข่าย" ให้แก้ไขการเชื่อมต่อไร้สายของฉัน ใต้แท็บ IPv4 เลือกที่อยู่อัตโนมัติ (DHCP) เท่านั้น จากนั้นพิมพ์location.company.comเป็นโดเมนการค้นหาและใส่เซิร์ฟเวอร์ DNS ของเราด้วย เรื่องนี้ทำให้ไม่เห็นความแตกต่าง
  • แก้ไข dhclient.conf ตามที่อธิบายไว้ที่นี่
  • วิ่งdpkg-reconfigure resolvconfเพื่อให้แน่ใจว่ามันจะทำการแก้ไข resolv.conf แบบไดนามิก

ฉันยังกังวลว่า ณ จุดนี้ฉันได้ลองทำหลายสิ่งหลายอย่างและพวกเขาอาจรบกวนซึ่งกันและกัน ฉันรู้ว่าบางส่วนของการกำหนดค่านี้มีการเปลี่ยนแปลงในสองสามปีที่ผ่านมากับ Ubuntu และอาจเป็นเรื่องยากที่จะค้นหาข้อมูลล่าสุด ยังไม่ชัดเจนสำหรับฉันเกี่ยวกับวิธีจัดการเครือข่าย, resolvconf, dhclient และไฟล์การกำหนดค่าอื่น ๆ ที่ทำงานร่วมกันใน Ubuntu รุ่นใหม่ล่าสุด

ดังนั้นคำถามของฉัน: ฉันจะกำหนดค่าคอมพิวเตอร์ของฉันเพื่อให้ URL แบบสั้นทำงานอย่างถูกต้องใน Ubuntu 14.10 ได้อย่างไร

หรือฉันควรใช้โปรแกรมกำหนดค่าเครือข่ายใดเพื่อทำสิ่งนี้ฉันควรกำหนดค่าโปรแกรมเหล่านี้อย่างไรและฉันจะตรวจสอบว่าโปรแกรมเหล่านั้นทำงานอย่างถูกต้องได้อย่างไร

ขอบคุณสำหรับความช่วยเหลือของคุณ! แจ้งให้เราทราบหากฉันสามารถให้ข้อมูลเพิ่มเติมใด ๆ

แก้ไข: นี่คือของฉัน/etc/resolv.confซึ่งฉันเชื่อว่าถูกสร้างขึ้นโดย resolvconf

# Add Company Nameservers and Domain
nameserver 192.168.200.53
nameserver 192.168.200.65
search location.company.com
nameserver 127.0.1.1
search location.company.com
# 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.1.1
search hsd1.co.comcast.net

คุณเคยแก้ปัญหานี้หรือไม่?
Hitechcomputergeek

การอัปเดตด่วน: ในบางจุดฉันได้ติดตั้ง Ubuntu รุ่นใหม่ทั้งหมดแล้ว อาจจะ 16.04? อย่างไรก็ตามฉันไม่ได้มีปัญหาใด ๆ และไม่ต้องกำหนดค่าใหม่อีกต่อไปตั้งแต่ตอนนี้และตอนนี้ฉันอยู่ที่ 18.10
mkasberg

คำตอบ:


30

ค้นหาโดเมนหมายถึงโดเมนที่จะต่อท้ายโดยอัตโนมัติเมื่อคุณใช้ชื่อโฮสต์สำหรับโฮสต์หรือคอมพิวเตอร์เฉพาะ โดยทั่วไปจะใช้ในเครือข่ายท้องถิ่น

ให้บอกว่าคุณมีชื่อโดเมนเช่นxyz.com(อาจมีอยู่ทั่วโลกหรืออาจมีในเครื่องเท่านั้น) และคุณมีคอมพิวเตอร์ 100 เครื่องใน LAN ตอนนี้คุณต้องการให้ชื่อโดเมนนี้ต่อท้ายโดยอัตโนมัติเมื่อคุณค้นหาคอมพิวเตอร์ทุกเครื่องโดยเพียงแค่ชื่อโฮสต์ของคอมพิวเตอร์ หากชื่อโดเมนที่จะต่อท้ายคือxyz.comโดเมนการค้นหาควรมีลักษณะดังนี้:

dns-search xyz.com ##If you put this into /etc/network/interfaces

หรือ

search xyz.com ##If you put this into /etc/resolvconf/resolv.conf.d/base|head|tail

ตอนนี้คุณจะทำอย่างไรให้ตรวจสอบว่าการทำงานอย่างถูกต้องเพียงแค่ใช้pingหรือการแก้ไข DNS ใด ๆ โปรแกรมเช่นhost, ,nslookupdig

ตัวอย่างเช่นหากโฮสต์testมี IP 192.168.1.5แล้วให้ใช้host:

host test
test.xyz.com has address 192.168.1.5

ตอนนี้เช่นเดียวกับที่digไม่ใช้รายการค้นหา / โดเมนโดยค่าเริ่มต้นคุณจำเป็นต้องใช้มันdig +search testเพื่อเปิดใช้งานการผนวกโดเมนค้นหา

การใช้nslookup:

nslookup test
Server:     192.168.1.11
Address:    192.168.1.11#53

Name:   test.xyz.com
Address: 192.168.1.5

นี่192.168.1.11เป็นเซิร์ฟเวอร์ DNS ท้องถิ่นของคุณซึ่งมีอยู่ IP สำหรับโฮสต์test.xyz.com(แจ้งให้ทราบล่วงหน้าเต็มรูปแบบ) 192.168.1.5ที่เป็น เซิร์ฟเวอร์ DNS จะแก้ไขชื่อโฮสต์test.xyz.comเป็น IP 192.168.1.5แต่จะไม่แก้ไขอะไรเพียงtestเพราะไม่มีรายการใด ๆ

ดังนั้นสิ่งที่โดเมนการค้นหาทำในกรณีของเราคือการผนวกชื่อโดเมนโดยอัตโนมัติเพื่อให้เป็น FQDN เมื่อเราเพิ่งใช้ชื่อโฮสต์เพื่อค้นหาคอมพิวเตอร์


1
ตามค่าเริ่มต้นขุดจะไม่ต่อท้ายสิ่งโดเมนเช่นอื่น ๆ ทำ อย่างไรก็ตาม "dig + search test" ไม่
Doug Smythies

@DougSmythies: เพิ่ม ..
heemayl

ฉันแก้ไข/etc/resolvconf/resolv.conf.d/baseด้วยเนมเซิร์ฟเวอร์และรายการค้นหา ตอนนี้ฉันเห็นพฤติกรรมดังต่อไปนี้: $ host serverserver.location.company.com เป็นชื่อแทนของ server001.location.company.com server001.location.company.com มีที่อยู่ 192.168.200.103 $ ping serverping: เซิร์ฟเวอร์โฮสต์ที่ไม่รู้จัก มีความคิดอะไรที่ทำให้เกิดสิ่งนี้
mkasberg

3
@mkasberg: บางส่วนขาดหายไปในบันทึก message..also สุดท้ายของคุณว่าหลังจากที่การเปลี่ยนแปลงใด ๆ ในการทำงานresolvconf sudo resolvconf -u
heemayl

@mkasberg: ใส่ไว้ใน/etc/resolvconf/resolv.conf.d/head.. เซิร์ฟเวอร์ DNS ของคุณมีรายการserver.location.company.comใช่มั้ย?
heemayl

16

ฉัน runnig Bionic Beaver และฉันresolv.confพูดว่า:

# This file is managed by man:systemd-resolved(8). Do not edit.

ดังนั้นทางออกของฉันคือการแก้ไข/etc/systemd/resolved.confตัวเลือกDomains=ตามเอกสาร แล้วรีสตาร์ทระบบได้รับการแก้ไข:

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