หากเรามีระบบที่ใช้ IP ในการระบุโหนดบนอินเทอร์เน็ตทำไมต้องมี DNS?
หากเรามีระบบที่ใช้ IP ในการระบุโหนดบนอินเทอร์เน็ตทำไมต้องมี DNS?
คำตอบ:
แม้ว่าคนอื่นจะแนะนำว่า DNS ไม่จำเป็นสำหรับอินเทอร์เน็ตในการทำงาน แต่ฉันไม่เห็นด้วย DNS ไม่จำเป็นสำหรับเครือข่ายที่ทำงานบน IP แต่สำหรับอินเทอร์เน็ต อย่างที่เราทราบทุกวันนี้จำเป็นอย่างยิ่ง !!
หากฉันจดทะเบียนชื่อโดเมนกับ godaddy และไม่ชอบ godaddy อีกต่อไปฉันสามารถไปที่ผู้ให้บริการรายอื่นและเก็บชื่อโดเมนของฉันไว้
สิ่งเดียวกันนี้ไม่สามารถทำได้กับที่อยู่ IP เนื่องจากมีการจัดสรรที่อยู่ IP ให้กับ บริษัท บางแห่งและไม่สามารถนำติดตัวไปกับคุณได้
DNS ไม่เพียงจับคู่ชื่อที่มนุษย์สามารถอ่านได้ไปยังที่อยู่ IP เท่านั้น แต่ยังแยกไคลเอนต์จากรายละเอียดเฉพาะของจุดปลายเครือข่ายที่ต้องการเชื่อมต่อด้วย
ที่ช่วยให้ผู้ให้บริการสามารถใช้ระบบความพร้อมใช้งานสูงและเปลี่ยนแปลงรายละเอียดการใช้งานโดยไม่ส่งผลกระทบต่อลูกค้า
มันทำได้อย่างแน่นอน! แต่คุณจะมีรายการจำนวน/etc/hosts
มาก
อย่างจริงจังแม้ว่า "อินเทอร์เน็ต" (ระบบของเครื่องที่ส่งเนื้อหาไปยังผู้ใช้) จะยังคงทำงานได้ตามปกติ "เว็บ" (คอลเลกชันของข้อมูลที่ค้นหาง่าย ๆ ที่ถูกส่งผ่าน "อินเทอร์เน็ต") จะพังอย่างรวดเร็วเพราะไม่มีใคร (ยกเว้น geeks จริง) จะจดจำที่อยู่ IP เพื่อไปยัง Google
เพราะฉันไม่ต้องการที่จะจำได้ว่า Google เป็น 74.125.45.100
ด้วย DNS ที่อยู่ IP เดียวสามารถให้บริการเว็บไซต์สำหรับหลายโดเมนได้ (อย่างน้อยถ้าพวกเขากำลังเรียกใช้ HTTP / 1.1) หากไม่มี DNS ทุกเว็บไซต์จะต้องมีที่อยู่ IP โดยเฉพาะและเว็บไซต์เหล่านั้นจะหมดเร็ว
ความแตกต่างระหว่าง IP และชื่อ DNS คือ IP ระบุที่ตั้งเซิร์ฟเวอร์ในขณะที่ชื่อ DNS อนุญาตให้คุณระบุบริการเอง ชัยชนะที่ยิ่งใหญ่ที่คุณได้รับจาก DNS นั้นไม่มากจนจำชื่อ DNS ได้ง่ายกว่า แต่คุณมีเลเยอร์ที่เป็นนามธรรมของบริการและการติดตั้งใช้งาน ดังนั้นการใช้งานพื้นฐานสามารถเปลี่ยนแปลงได้เซิร์ฟเวอร์สามารถเลื่อนไปมาได้โดยที่ผู้ใช้ไม่สังเกตเห็น
อินเทอร์เน็ตสามารถทำงานได้โดยปราศจากมันได้หรือไม่ ไม่นานนักสิ่งแรกที่ต้องทำคือการใช้บริการที่คล้ายกับ DNS เพื่อแก้ไขปัญหาทั้งหมดที่ DNS ขาดหายไป หากไม่มีการเชื่อมโยงหลายมิติของ DNS ไปยังหน้าเว็บอื่น ๆ จะเป็นการหยุดพักอย่างง่ายดายเพื่อที่ว่าเวิลด์ไวด์เว็บจะไม่สามารถทำงานได้อย่างถูกต้อง
ในแง่หนึ่ง DNS เป็นรูปแบบพื้นฐานของเครือข่ายที่กำหนดแอดเดรสของเนื้อหาซึ่งคุณพูดในสิ่งที่คุณต้องการ แต่ไม่ใช่วิธีเดินทาง คุณบอกว่าwww.google.com
เพราะคุณรู้ว่า google ทำการค้นหา แต่คุณไม่รู้ว่าบนเซิร์ฟเวอร์อยู่ที่ไหนคุณลงเอยในท้ายที่สุดสิ่งทั้งหมดนั้นถูกแยกออกไปจากคุณด้วย DNS
ทุกคนที่นี่ดูเหมือนจะลืมว่าไม่มี DNS การจดจำที่อยู่ IP ไม่ใช่ตัวเลือกเดียว ARPANET ไม่มี DNS และนั่นคือที่มาของไฟล์โฮสต์ จากวิกิพีเดีย :
ARPANET ซึ่งเป็นบรรพบุรุษของอินเทอร์เน็ตไม่มีฐานข้อมูลชื่อโฮสต์แบบกระจายเช่นระบบชื่อโดเมนที่ทันสมัยสำหรับการดึงที่อยู่โหนดเครือข่ายของโฮสต์โดยใช้ชื่อโฮสต์ แต่ละโหนดเครือข่ายเก็บรักษาแผนที่ของตนเองของโหนดเครือข่ายที่จำเป็นต้องทราบและกำหนดชื่อให้กับผู้ใช้ที่จดจำ [... ] ARPANET ขนาดเล็กใช้ประโยชน์จากไฟล์โฮสต์ที่เป็นประโยชน์ [... ] อย่างไรก็ตามการบำรุงรักษาไฟล์โฮสต์กลายเป็นภาระที่ใหญ่กว่าในผู้ดูแลระบบ [... และ] ธรรมชาติของศูนย์กลางและเสาหินของ ในที่สุดไฟล์โฮสต์จำเป็นต้องมีการสร้างระบบชื่อโดเมนแบบกระจาย
คุณต้องใช้ DNS เพื่อแปลชื่อโดเมน (เช่น www.google.com) เป็น IP (64.233.169.147) หากทุกอย่างใช้ IP คุณก็ไม่จำเป็นต้องใช้ DNS
เหตุผลเดียวกับที่คุณสามารถเก็บชื่อไว้ในโทรศัพท์มือถือของคุณเพื่ออ้างอิงหมายเลขโทรศัพท์ :)
ไม่มีข้อกำหนดสำหรับมัน ความหรูหราที่บริสุทธิ์
หากไม่มี DNS ประเภทใด Google สามารถทำหน้าที่เป็น 'การเรียงลำดับ' DNS เพื่อให้ผู้คนค้นหาเว็บไซต์ได้ (วันนี้คุณจะไปที่ xyz.com ในโลกที่ไม่มี DNS คุณจะไปที่ 75.125.127.100 และ google xyz และมันจะทำให้คุณเป็นอย่างนั้น)
อินเทอร์เน็ตจะใช้งานได้ ฉันต้องการเป็นส่วนหนึ่งของอินเทอร์เน็ตหรือไม่ ไม่มีทาง.
มีบางกรณีที่ "อินเทอร์เน็ต" ไม่จำเป็นต้องใช้ DNS ตัวอย่างเช่นหากคุณใช้โปรโตคอลที่ไม่ต้องการ DNS (ตัวอย่างเช่นโปรแกรมแชร์ไฟล์แบบเพียร์ทูเพียร์)
นอกจากนี้ internets ส่วนตัวบางส่วนไม่จำเป็นต้องใช้ DNS (แต่ส่วนใหญ่ใช้ www ในระดับหนึ่งซึ่งมักจะหมายถึงพวกเขามีอยู่แล้ว)
อาจมีเว็บเซิร์ฟเวอร์บางตัวที่มีหลายไซต์ในนั้นที่ใช้ IP และพอร์ตเดียวกันสำหรับการรับส่งข้อมูลเพื่อให้ DNS เป็นวิธีการใช้งานไซต์ที่แตกต่างกัน
นี่คือเหตุผลที่ดีสำหรับการรักษาระบุตำแหน่ง (IPS) และตัวบ่งชี้ (ชื่อโดเมน) เฉพาะกิจการ: RFC 5887 หากคุณรวม บริษัท ทั้งสองเข้าด้วยกันและต้องการให้เครือข่ายของพวกเขากลายเป็นหนึ่งเดียวคุณควรหวังว่าเครือข่ายของพวกเขาจะได้รับการกำหนดค่าโดยใช้ตัวระบุไม่ใช่ตัวระบุตำแหน่ง
ใช่อินเทอร์เน็ต "ใช้งานได้" โดยไม่มี DNS แพ็กเก็ต IP ถูกกำหนดเส้นทางตามที่อยู่ IP และซับเน็ตมาสก์ เราเตอร์ต่างๆระหว่างต้นทางและปลายทางไม่สนใจชื่อแทนที่มนุษย์อ่านได้
อย่างไรก็ตามสำหรับมนุษย์ "www.google.com" นั้นง่ายต่อการจดจำมากกว่า "74.125.225.209" ด้วยเหตุผลเดียวกับที่ "1600 Amphitheatre Parkway" จำได้ง่ายกว่า "37.423156, -122.084917" ในทั้งสองกรณีข้อมูลเดียวกันจะถูกส่ง แต่ในทั้งสองกรณีหนึ่งก็ง่ายต่อการจดจำอย่างมาก สำหรับมนุษย์กันแน่
อินเทอร์เน็ตอยู่ในระดับต่ำหรือไม่? แน่นอน - จุดทั้งหมดของที่อยู่ IP และ IP สแต็คทั้งหมดคือการช่วยแพ็คเก็ตเส้นทางจากที่หนึ่งไปอีกที่หนึ่งด้วยความช่วยเหลือของโปรโตคอลอื่น ๆ ซึ่งไม่ขึ้นอยู่กับระบบชื่อโดเมน
ในทางกลับกันระบบ DNS ช่วยให้สิ่งที่ดีบางประการ - ประการแรกมันช่วยให้หาวิธีที่เป็นมิตรกับมนุษย์เพื่อหาโฮสต์ ประการที่สองสำหรับโปรโตคอลที่รับรู้ถึง DNS เช่น HTTP คุณสามารถเลือกเนื้อหาที่จะส่งตามปลายทางที่ต้องการ (เช่น virtualhosts) ซึ่งอนุญาตให้ใช้ทรัพยากรที่มีอยู่ได้อย่างมีประสิทธิภาพมากขึ้น การกำหนดเส้นทางตามภูมิศาสตร์ไปยังเซิร์ฟเวอร์ที่ใกล้กว่าและสิ่งแฟนซีอื่น ๆ ที่ทำให้ชีวิตง่ายขึ้น
อินเทอร์เน็ตจะทำงานโดยไม่ใช้ DNS หรือไม่ อย่างแน่นอน มันจะเป็นความเจ็บปวดที่สุด? อาจเป็นได้ - และถ้า DNS ล่มในวันพรุ่งนี้บริการจำนวนมากบนอินเทอร์เน็ตจะถูกทำลาย
ไม่เครือข่าย Stack Exchange ไม่สามารถทำงานได้หากไม่มี DNS
เพื่อพิสูจน์มันมาหา IP ของstackoverflow.com
:
$ host stackoverflow.com
stackoverflow.com has address 198.252.206.16
ไปที่สิ่งนั้นในเบราว์เซอร์ของคุณแล้วคุณจะพบหน้าข้อผิดพลาดที่บอกว่า:
ไม่พบ 198.252.206.16
ไซต์คำถาม & คำตอบ 198.252.206.16 ดูเหมือนยังไม่มีอยู่…ยัง
(ฉันขอโทษที่ฉันไม่สามารถเชื่อมโยงได้ Stack Exchange จะไม่ให้ฉันป้อนลิงค์ไปยัง IP
นี่คือสิ่งที่คุณจะได้รับหากคุณไปที่ไซต์ Stack Exchange ที่ไม่มีอยู่จริงhsdkgujahr.stackexchange.com
ยกเว้นว่ามีข้อความว่า "ไซต์ถามตอบยังhsdkgujahr.stackexchange.com
ไม่มีอยู่ ... ยัง"
ตอนนี้ลองตรวจสอบ IP ของsuperuser.com
:
$ host superuser.com
superuser.com has address 198.252.206.16
ขอให้สังเกตว่าที่อยู่ IP เหมือนกันทุกประการ ในความเป็นจริงถ้าคุณทำการค้นหา DNS สำหรับไซต์ Stack Exchange ใด ๆคุณจะได้รับ IP เดียวกัน
หากมีการจับคู่ IP เดียวกับหลายเว็บไซต์เซิร์ฟเวอร์จะทราบได้อย่างไรว่าเว็บไซต์ใด
คำตอบคือส่วนหัว HTTP Host
จะถูกส่งไปยังเซิร์ฟเวอร์พร้อมกับคำขอและมีชื่อ DNS ที่ครบถ้วนของเซิร์ฟเวอร์
ดังนั้นหากไม่มี DNS คุณจะไม่สามารถไปยังไซต์ Stack Exchange ที่คุณโปรดปราน (หรือไซต์โครงการ SourceForge พวกเขาทำงานในลักษณะเดียวกัน)
198.252.206.16 stackoverflow.com
ในไฟล์โฮสต์ของคุณแล้วลองไปที่stackoverflow.comและคุณจะพบว่ามันใช้งานได้แม้ว่าคุณเพิ่งจะปิดการใช้งาน DNS จริง? ไม่มีทาง. แต่อินเทอร์เน็ตสามารถทำงานได้โดยไม่มี DNS คุณจะไม่สามารถรับ IP สำหรับไซต์ต่าง ๆ ได้