ใช้งาน DNS ภายในเครื่องสำหรับเครือข่ายในบ้าน


102

ฉันมีเครือข่ายในบ้านขนาดเล็กที่เพิ่งมีขนาดใหญ่ขึ้น (เพื่อนร่วมห้องใหม่เพื่อนร่วมห้องที่มีอยู่ของฉันมีแล็ปท็อป (บนคอมพิวเตอร์ของเธอ) เพื่อนของฉันมาด้วยแล็ปท็อป

ฉันต้องการที่จะเรียกใช้เซิร์ฟเวอร์ DNS ท้องถิ่นสำหรับการค้นหาของสิ่งที่เครือข่ายท้องถิ่นของฉัน ( fileserver.local, windowsTV.local, machineA.local, machineB.local, appletv.local) ฉันเคยมีสายธุรกิจที่มี IP แบบคงที่และเรียกใช้ผูก / ชื่อภายใน อย่างไรก็ตามตอนนี้ฉันมีบัญชีปกติแล้ว

เซิร์ฟเวอร์ DNS ของ ISP ของฉันมีการเปลี่ยนแปลงอยู่ตลอดเวลา (ด้วยเหตุผลใดก็ตามที่ ISP ของฉันไม่ต้องการรักษาช่วง IP เดิมไว้นาน ๆ ) ฉันต้องการ DNS ภายในเครื่องของฉันที่จะได้รับการอัพเดตโดยอัตโนมัติเพื่อใช้ DNS ของ ISP สำหรับการรับส่งข้อมูลภายนอก แต่สามารถรักษาเซิร์ฟเวอร์ DNS ภายในได้ (การอัปเดตไฟล์โฮสต์จะรบกวนการทำงานของเครื่องใหม่ทุกเครื่องที่อยู่ด้านบน หรือ Ubuntu 9.04)

นอกจากนี้เซิร์ฟเวอร์ DNS ของ ISP ของฉันมักจะผิดพลาดหรือไม่ตอบสนอง มีเซิร์ฟเวอร์ DNS ที่เปิดใด ๆ ที่เชื่อถือได้ (ฉันไม่ต้องการกำหนดค่าใหม่ทุกวัน) ที่ฉันสามารถใช้เป็นเซิร์ฟเวอร์หลักของฉันได้หากเซิร์ฟเวอร์เหล่านั้นล้มเหลวให้ใช้ ISP ของฉันหรือไม่

อัปเดต: ยังค้นหาแต่ละเวิร์กสเตชันเพื่อให้สามารถใช้ dhcp เพื่อเชื่อมต่อได้ แต่แทนที่จะได้รับเซิร์ฟเวอร์ ISP DNS มาใช้รับภายในของฉัน ....


2
มีคำถามอย่างน้อย 2 ข้ออยู่ที่นี่: การกำหนดค่า DNS ท้องถิ่นเซิร์ฟเวอร์ DNS สาธารณะ โพสต์ 2 คำถามในครั้งต่อไป
hyperslug

17
ฉันเห็นด้วย แต่ฉันกำลังมองหาวิธีแก้ปัญหาโดยรวม คำถามแต่ละข้อเกี่ยวกับตัวมันเองจะมีคำตอบที่ถูกต้อง แต่อาจไม่สอดคล้องกันฉันพยายามค้นหาวิธีแก้ไขปัญหาทั้งสองอย่างที่ทำงานร่วมกัน
Roy Rico

@RoyRico คุณเคยพบทางออกที่ดีหรือไม่? ฉันพยายามทำสิ่งเดียวกันกับเราเตอร์ Tomato และวิ่งเข้าไปในกำแพงทุกทิศทาง
Jeff

หากคุณมีกล่อง linux นี่คือวิธีการตั้งค่า DNSMASq ในรายละเอียด - sfxpt.wordpress.com/2011/02/06/…
xpt

เซิร์ฟเวอร์ DNS ใหม่ของ Google คือ 8.8.8.8 และ 8.8.4.4 ในกรณีที่มีคนสงสัย ...
Tmanok

คำตอบ:


16

หากคุณต้องการให้โดเมนปลอมภายในทำงานคุณไม่สามารถกำหนดค่าเวิร์กสเตชันของคุณกับเซิร์ฟเวอร์ DNS ใด ๆ ยกเว้นของคุณเอง เมื่อคุณตั้งค่าการผูกมันสามารถทำงานได้ด้วยตัวเองและคุณไม่ต้องการ ISP ของคุณหรือเซิร์ฟเวอร์ DNS อื่น ๆ ที่ไม่มีสิทธิ์เลย


9
อย่างไรก็ตามผู้ใช้ที่ดีจะส่งต่อไปยังแคช DNS ของ ISP หากเป็นไปได้ การโหลดเซิร์ฟเวอร์ DNS รูทนั้นน่ากลัว โดยเฉพาะอย่างยิ่งสำหรับไซต์เล็ก ๆ เช่นนี้เพราะมันจะไม่ขยายหากทุกครัวเรือนตัดสินใจที่จะตรง (หากคุณกังวลเกี่ยวกับการปลอมแปลง ISP ให้ใช้ DNSSEC)
sourcejedi

1
@sourcejedi คุณเข้าใจผิดว่าแคชเซิร์ฟเวอร์ DNS ทำอะไรจริง ๆ ... มันไม่ได้อยู่บนรูทเซิร์ฟเวอร์อย่างแน่นอน แต่มันรบกวนพวกเขาเพียงแค่สัปดาห์ละครั้ง
พันของ

7
มีเหตุผลที่แตกต่างกันว่าทำไมคุณควรส่งต่อไปยังเซิร์ฟเวอร์ ISP DNS ของคุณ ... คุณจะมีลักษณะเหมือนลูกค้าทั่วไป หากคุณไม่เห็นและพวกเขาเห็นว่าคุณมีระบบที่ส่งการสอบถาม DNS ไปทั่วโลกพวกเขาจะสมมติว่าคุณกำลังใช้เซิร์ฟเวอร์ DNS และอาจโยนกฎไฟร์วอลล์ไว้ในหน้าของคุณ คุณจะต้องดิ้นรนหาว่าอะไรเสียหายและอาจเสียเวลาหลายชั่วโมงในการพยายามคิดออกว่าเมื่อไรที่เกิดขึ้น
พันของ

1
ถัดจากจุดของ @ milli DNS ของ ISP ของคุณอาจแทนที่ความละเอียดของบางโดเมนไปยังเครื่องส่วนตัวด้วยเนื้อหาที่เร็วขึ้น / แคช / ไม่ถูกตรวจสอบ การใช้ DNS สาธารณะสามารถทำลายบริการเหล่านั้นหรือทำให้คุณเสียค่าใช้จ่ายมากขึ้น
Walf

85

โดยทั่วไปคุณต้องใช้เซิร์ฟเวอร์ DHCP และ DNS ของคุณเอง คุณใช้เซิร์ฟเวอร์ DHCP ของคุณเองอยู่แล้วหากคุณมีเราเตอร์ทั่วไปที่ให้ที่อยู่ IP ส่วนตัว

เซิร์ฟเวอร์ DHCP ของคุณต้องกำหนดค่าให้เราเตอร์ IP ของคุณเป็นที่อยู่เกตเวย์และ IP เซิร์ฟเวอร์ DNS ของคุณเป็นที่อยู่เซิร์ฟเวอร์ DNS อย่างชัดเจน

เซิร์ฟเวอร์ DNS ของคุณต้องได้รับการกำหนดค่าให้แก้ไขโดเมนระดับบนสุดที่ไม่เป็นทางการภายในเครื่องเช่น.localจากนั้นส่งต่อคำขออื่นใดไปยัง DNS อื่น ใน BIND คุณจะต้องเพิ่มforwarders { }ส่วนลงใน `/etc/bind/named.conf.options 'ของคุณซึ่งมีเซิร์ฟเวอร์ DNS สาธารณะที่คุณต้องการใช้เพื่อแก้ไขที่อยู่นอกท้องถิ่น ตามความคิดเห็นอื่น ๆ ที่แนะนำถ้าคุณไม่ต้องการส่งต่อไปยังเซิร์ฟเวอร์ DNS ของ ISP คุณสามารถใช้ OpenDNS เซิร์ฟเวอร์ DNS สาธารณะของ Google หรือ 4.2.2.1/4.2.2.2 (ฉันลืมว่าใครเป็นคนทำ)

หากคุณใช้เซิร์ฟเวอร์ DNS ของคุณเองคุณต้องมีกล่องที่จะใช้งานได้ตลอดเวลาเนื่องจากคำสั่ง DNS ทั้งหมดในเครือข่ายในบ้านของคุณจะผ่านมันไป กล่องนี้ต้องการ IP คงที่ในเครือข่ายย่อยที่บ้านของคุณ ตรวจสอบให้แน่ใจว่าไม่ได้รับ Bulldozed จาก DHCP และช่องนั้นไม่ควรรับ IP ผ่าน DHCP หาก DHCP ของคุณได้รับการกำหนดค่าให้แจกที่อยู่จาก 192.168.1.1 ถึง 192.168.1.100 เช่นให้ IP DNS 192.168.1.101 เซิร์ฟเวอร์ DNS ของคุณ ในสถานการณ์ปกติของเราเตอร์ในบ้านคุณเพียงแค่บอกเราเตอร์ว่าเซิร์ฟเวอร์ DNS นั้นเป็น 192.168.1.101 และรีบูต

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


3
4.2.2.1/4.2.2.2/4.2.2.3 มาจากเลเยอร์ 3
Hengjie

1
คำตอบที่ยอดเยี่ยม! ขอบคุณสำหรับข้อมูลที่ครบถ้วนและชัดเจน ฉันจะลองตั้งค่านี้ในเครือข่ายท้องถิ่นของฉันในไม่ช้า
แบบฟอร์ม

2
ที่ประสบความสำเร็จ! วิธีนี้เป็นเสียง การตั้งค่า IP คงที่นอกช่วงแอดเดรส / หลีกเลี่ยง DHCP สำหรับกล่อง DNS นั้นมีความเกี่ยวข้องเป็นพิเศษ ขอบคุณ!
แบบฟอร์ม

@Hengjie Layer 3 คืออะไร
Jonathan

Layer 3 เป็นผู้ให้บริการดาต้าเซ็นเตอร์เช่นเดียวกับผู้ให้บริการเครือข่าย พวกเขายังให้บริการเซิร์ฟเวอร์ DNS ที่มั่นคงด้วย
Hengjie

15

มีเซิร์ฟเวอร์ DNS ที่เปิดใด ๆ ที่เชื่อถือได้หรือไม่

คุณบอกว่ามันOpenDNS

208.67.222.222
208.67.220.220

3
ฉันจะดูaboutdebian.com/dns.htmสำหรับภาพรวมที่ดีของวิธีต่างๆที่คุณสามารถตั้งค่าเซิร์ฟเวอร์ DNS ของคุณเอง
Kenneth Cochran

1
+1 สำหรับ OpenDNS ฉันใช้ทั้งที่ทำงานและที่บ้าน บริการสุดยอด.
DWilliams

4
ระวังว่าเซิร์ฟเวอร์ชื่อ OpenDNS เป็นคนโกหก: พวกเขาเขียนคำตอบ DNS ใหม่เพื่อนำคุณไปยังบริการโฆษณาหรือตรวจสอบปลายทางบางแห่ง
bortzmeyer

1
@bortz ฉันไม่ได้เห็นพวกเขาโกหก แต่พวกเขาเปลี่ยนเส้นทางไปยังหน้า Landing Page + โฆษณาในกรณีที่ URL มีรูปแบบไม่ถูกต้อง การตรวจสอบคือการเลือกและปิดโดยปริยาย
hyperslug

12
เซิร์ฟเวอร์ DNS สาธารณะของ Google ที่ 8.8.8.8 และ 8.8.4.4 ก็ค่อนข้างดีเช่นกัน
LawrenceC

6

หากคุณใช้ Windows - คุณควรดูSimple DNS Plus - เป็นเซิร์ฟเวอร์ DNS เต็มรูปแบบที่มาพร้อมกับปลั๊กอินเซิร์ฟเวอร์ DHCP - และมี GUI ที่ใช้งานง่าย

[หมายเหตุ: ผลิตภัณฑ์นี้ได้รับการพัฒนาโดยผู้เขียนบทความนี้]


ฉันใช้ windows เป็นหนึ่งในเครื่องของฉัน แต่มันไม่ได้เปิดอยู่เสมอ เครื่อง Linux มักเปิด
Roy Rico

เพียงกล่าวถึงนี่ไม่ใช่วิธีแก้ปัญหาฟรี มีการเสนอรุ่นทดลองใช้ 14 วันและใบอนุญาตด้านการศึกษา ไม่เช่นนั้นคุณจะต้องดึงแป้งสาลีระหว่าง $ 70> $ 300
CyberFox

5

Unboundค่อนข้างง่ายรองรับไฟล์ปรับแต่งสไตล์การผูกและเชื่อถือได้พอสมควร หากเซิร์ฟเวอร์นั้นเป็นกล่องชนิด 'เกตเวย์' แบบสแตนด์อะโลนและคุณต้องการสิ่งพิเศษอื่น ๆ อีกสองสามรายการคุณอาจต้องการดูไฟร์วอลล์ / เกตเวย์ distro ที่เรียกว่าแก้ให้หายยุ่งได้เช่นกัน


4

หากคุณมีกล่อง linux คุณจะต้องตั้งค่า DNSMASq ให้มีที่อยู่ในพื้นที่ของคุณและใช้เป็นเซิร์ฟเวอร์ DNS ที่ส่งต่อ / แคชสำหรับที่อยู่ภายนอก นี่ก็มักจะเป็นสิ่งที่ใช้ในการแจกแจงลินุกซ์สำหรับเราเตอร์ที่บ้านเช่น openwrt / ddwrt / มะเขือเทศ

อีกวิธีหนึ่ง, บนเครือข่าย Apple / Mac ส่วนใหญ่ที่คุณต้องการใช้ Bonjour / Zeroconf ซึ่งทั้งคอมพิวเตอร์ Linux และ Apple สามารถสื่อสารเพื่อรับ DNS / การแก้ปัญหาระดับออกอากาศ

ตามที่ได้กล่าวไว้ในเครือข่ายไฮบริดที่มีระบบปฏิบัติการทั้งสามที่ทำงานอยู่คุณจะต้องการเซิร์ฟเวอร์ DNS ในพื้นที่ที่มีการส่งต่อไปยัง OpenDNS, GoogleDNS หรือ ISP DNS ท้องถิ่นของคุณโดยขึ้นอยู่กับตำแหน่ง / ความต้องการของคุณ


2

4.2.2.1 & 4.2.2.2 เป็นสิ่งที่ฉันใช้

แก้ไข: นั่นคือเกี่ยวกับเซิร์ฟเวอร์สาธารณะ ง่ายต่อการจดจำและฉันไม่คิดว่าฉันเห็นพวกเขาล้มเหลวเนื่องจากฉันใช้มัน


Iv'e เคยเห็นมาก่อน ใครเป็นคนจัดการ? ประชาชนได้รับอนุญาตให้ใช้พวกเขาหรือไม่? พวกเขาน่าเชื่อถือแค่ไหน?
Roy Rico

Verizon ดูเหมือนว่าพวกเขาจะไม่สนใจ มาก.
hyperslug

พวกเขาเป็นเซิร์ฟเวอร์ DNS แบบเปิดฟรีสำหรับการใช้งานสาธารณะ พวกเขาทั้งรวดเร็วและเชื่อถือได้
วอลเตอร์

3
ฉันได้เห็น 4.2.2.2 ไม่เพียงพอสำหรับลูกค้าของเรา (ผู้ที่ต้องการ DNS ที่เชื่อถือได้สำหรับการประมวลผลบัตรเครดิต!) ที่ฉันเปลี่ยนเป็น DNS สาธารณะหรือ OpenDNS ของ Google ทุกครั้งที่ฉันเห็นพวกเขา การเปลี่ยนจากเซิร์ฟเวอร์ของ Verizon ล้างปัญหานี้ทันที
Stephen Jennings

2

เราเตอร์บรอดแบนด์ใด ๆ ให้บริการทั้ง DNS และ DHCP สำหรับเครือข่ายท้องถิ่น หากคุณต้องการรับการเชื่อมต่อจากอินเทอร์เน็ตไปยังเครื่องท้องถิ่นคุณต้องใช้เราเตอร์ที่รองรับ DynDNS และ Incomming PortForwarding

หากคุณเลือกหนึ่งรายการจากรายการฮาร์ดแวร์ที่สนับสนุน DD-wrtคุณสามารถแฟลชด้วยเฟิร์มแวร์นั้นและจะสนับสนุนคุณสมบัติใด ๆ ที่คุณอาจต้องการในเครือข่ายขนาดเล็กของคุณ


4
ฉันไม่คิดว่าเราเตอร์บรอดแบนด์ส่วนใหญ่จะให้บริการ DNS อย่างน้อยก็ไม่มีเฟิร์มแวร์ที่ให้มา เพียงแค่ให้ DHCP และใช้สิ่งนั้นเพื่อบอกให้ระบบของคุณใช้เซิร์ฟเวอร์ DNS ของ ISP ตอนนี้ถ้าคุณกระพริบเฟิร์มแวร์ของบุคคลที่สามเช่น DD-WRT, OpenWRT หรือ Tomato พวกเขาก็สามารถให้บริการ DNS ได้เช่นกัน
afrazier

1

สำหรับการเรียกใช้เซิร์ฟเวอร์ DNS บน LAN ของคุณให้ดูที่ 'pdnsd' ซึ่งเป็น nameserver สำหรับ * nix


1

เซิร์ฟเวอร์ DNS ฟรีบางตัวที่คุณสามารถใช้สำหรับการส่งต่อ:

1.1.1.1 - Cloudflare
1.0.0.1 - Cloudflare
4.2.2.1 - Layer 3
4.2.2.2 - Layer 3
4.2.2.3 - Layer 3
8.8.8.8 - Google
8.8.4.4 - Google
208.67.222.222 - OpenDNS
208.67.220.220 - OpenDNS

0

หากคุณดาวน์โหลดโปรแกรมการเปรียบเทียบ DNS จากข้อความลิงก์จะทำการเปรียบเทียบรายการเซิร์ฟเวอร์ DNS สาธารณะเช่นเดียวกับเซิร์ฟเวอร์ DNS ในเครื่องของคุณ หลังจากเรียกใช้โปรแกรมนี้ให้ลองคัดลอกเซิร์ฟเวอร์ที่เร็วที่สุดในการตั้งค่า DNS บนเราเตอร์ของคุณจากนั้นต่ออายุเซสชัน DHCP ของคุณและทำการทดสอบอีกครั้ง

หากเราเตอร์ของคุณอนุญาตให้เพิ่มทั้งเราเตอร์และหนึ่งในเซิร์ฟเวอร์ DNS ภายนอกที่รวดเร็วไปยังรายการเซิร์ฟเวอร์ DNS ที่ส่งไปยังไคลเอนต์ DHCP (แต่เลือกเซิร์ฟเวอร์อื่นจากที่คุณป้อนสำหรับที่อยู่เซิร์ฟเวอร์เราเตอร์ DNS)


0

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


-1

บางทีฉันกำลังพูดอะไรโง่ ๆ ในกรณีนี้ฉันจะเพิ่ม IP และชื่อไปยังไฟล์โฮสต์บนเครื่องแต่ละเครื่อง ..

192.168.0.120 tv.local

192.168.0.80 studiopc.local

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