DNS (ระบบชื่อโดเมน) คืออะไรและทำงานอย่างไร
เผยแพร่แล้ว: 2020-12-09คำจำกัดความของ DNS คืออะไร?
DNS ซึ่งย่อมาจาก Domain Name System ถูกใช้เป็นสื่อกลางในการแปลชื่อโดเมนเป็นที่อยู่ IP ตามลำดับ เมื่อไคลเอนต์เริ่มต้นการสืบค้นคำขอ DNS เก็บฐานข้อมูลของชื่อโดเมนทั้งหมดและที่อยู่ IP ที่ลงทะเบียนไว้ในเครือข่าย
ถือได้ว่าเป็นเครื่องบันทึกการเข้างานสำหรับเว็บไซต์ต่างๆ ที่มีอยู่ในอินเทอร์เน็ต ในกรณีของ DNS จะรักษาฐานข้อมูลของชื่อโดเมนของเว็บไซต์ทั้งหมดและที่อยู่ IP (Internet Protocol) ที่ใช้งานได้ทั่วโลก
ประวัติของ DNS
ต้นกำเนิดของ DNS นั้นย้อนกลับไปในสมัยของ ARPANET เมื่อมีคอมพิวเตอร์เพียงไม่กี่เครื่องที่จะรับรายการในฐานข้อมูล ไฟล์ HOSTS.TXT ได้รับการดูแลโดย Stanford Research Institute ซึ่งประกอบขึ้นเป็นข้อมูลของเครื่องทั้งหมด และถูกคัดลอกโดยเครื่องโฮสต์ทั้งหมดเพื่อให้มีการอัปเดตต่อไป
Jon Postel จาก Information Sciences Institute ขอให้ Paul Mockapetris ออกแบบการนำ DNS ไปใช้ครั้งแรกที่ University of California, Irvine ในปี 1983 จากนั้นในปี 1984 BIND (Berkeley Internet Name Domain) ถูกสร้างขึ้นโดยนักเรียนสี่คนคือ Douglas Terry Mark Painter, David Riggle และ Songnian Zhou สำหรับเครื่อง Unix
หลังจากแก้ไขในปี 1985 โดย Kevin Dunlap ต่อมาได้มีการย้ายไปยังเครื่อง Windows และยังคงเป็น DNS ที่ใช้กันอย่างแพร่หลายมากที่สุดในโลก
DNS ทำงานอย่างไร – ตัวอย่าง DNS ง่าย ๆ
เพื่อให้เข้าใจการทำงานพื้นฐานของ DNS ให้ฉันแนะนำตัวอย่างของโรงแรมให้คุณ สมมติว่าคุณต้องไปเยี่ยมเพื่อนที่โรงแรมบางแห่ง ตอนนี้คุณจะทำอย่างไร? คุณจะไปถึงแผนกต้อนรับของโรงแรมและขอหมายเลขห้องของเพื่อนของคุณจากพนักงานต้อนรับ
ในการดำเนินการ คุณจะต้องบอกชื่อเพื่อนของคุณกับพนักงานต้อนรับ ซึ่งจะตรวจสอบชื่อเดียวกันในฐานข้อมูลของเธอและบอกหมายเลขห้องของเพื่อนของคุณให้คุณทราบ เธอจะโทรหาเพื่อนของคุณเพื่อยืนยันว่าเขาว่างหรือไม่
ตอนนี้ พยายามเชื่อมโยงตัวอย่างกับการทำงานของ DNS ในกรณีนี้ คุณเป็นไคลเอนต์ที่ส่งคำขอไปยังเซิร์ฟเวอร์ DNS พนักงานต้อนรับ และชื่อเพื่อนของคุณคือชื่อโดเมน และหมายเลขห้องของเขาคือที่อยู่ IP ของเขา
พนักงานต้อนรับจะพิมพ์ชื่อเพื่อนของคุณบนคอมพิวเตอร์ของเธอซึ่งมีฐานข้อมูลของแขกทั้งหมด เรียกว่า Domain Name Space ถ้าเพื่อนของคุณพักอยู่ในโรงแรม เธอจะแจ้งหมายเลขห้องให้คุณทราบ มิฉะนั้นจะไม่บอก
สิ่งที่คล้ายกันเกิดขึ้นในการทำงานของ DNS: เมื่อคุณพิมพ์ชื่อเว็บไซต์ในเบราว์เซอร์ของคุณ เบราว์เซอร์จะส่งคำขอไปยังเซิร์ฟเวอร์ DNS หากชื่อโดเมนของเว็บไซต์ลงทะเบียนในฐานข้อมูลกับ DNS ชื่อโดเมนนั้นจะตอบกลับด้วยที่อยู่ IP ของเว็บไซต์ที่คุณพยายามเข้าถึง เช่น 117.234.214.14
ทำความเข้าใจชื่อโดเมนและที่อยู่ IP
ทีนี้ ถ้าจะถามว่าโดเมนคืออะไร? ใช้เพื่อระบุเว็บไซต์และบริการต่างๆ บนอินเทอร์เน็ต ใช้ชื่อโดเมน www.google.com หลักการตั้งชื่อจะย้ายจากขวาไปซ้ายและในทางกลับกันสำหรับที่อยู่ IP ในชื่อโดเมนของ Google อันดับแรก DNS จะตรวจสอบ com ซึ่งย่อมาจากโดเมนเชิงพาณิชย์และเป็นโดเมนระดับบนสุด
ดำเนินการต่อ Google เป็นโดเมนย่อยของ com และต่อมา www เป็นโดเมนย่อยของโดเมน Google จุด (.) ใช้เพื่อแยกโดเมนออกจากโดเมนย่อย ชื่อโดเมนแบบเต็มสามารถมีได้เพียง 253 อักขระเท่านั้น
ตอนนี้ ถ้ามีคนต้องการทราบชื่อโดเมนที่จดทะเบียนกับที่อยู่ IP พวกเขาจะขอเซิร์ฟเวอร์ DNS ด้วยที่อยู่ IP ของเว็บไซต์ สมมติว่าที่อยู่ IP ที่ส่งคือ 31.13.79.246 DNS จะตรวจสอบก่อน 31 จากนั้น 13 จากนั้น 79 และสุดท้าย 246 โดยสรุปว่าที่อยู่ IP เป็นของ www.fb.com
DNS คล้ายกับโครงสร้างลำดับชั้นของต้นไม้ ไม่ใช่โครงสร้างทางชีววิทยา โครงสร้างข้อมูลคอมพิวเตอร์มีโครงสร้างที่แตกต่างกัน ซึ่งที่อยู่ 31 อยู่ในตำแหน่งบนสุดของต้นไม้และเป็นโดเมนหลักในลำดับชั้น ที่อยู่ 13, 79, 246 เป็นโดเมนย่อยที่ต่อเนื่องกัน
หมายเลข 246 หมายถึงเครื่องเซิร์ฟเวอร์ที่โฮสต์เว็บไซต์ www.fb.com โดเมนและโดเมนย่อยทั้งหมดเหล่านี้ไม่ได้ซับซ้อนอย่างที่คุณคิด แต่จะใช้เวลาพอสมควรกว่าจะแก้ไขให้ถูกต้อง หากคุณเพิ่งเริ่มใช้แนวคิดนี้
อ่านเพิ่มเติม: HTTP/2 คืออะไรและทำงานอย่างไร
วิวัฒนาการของ DNS
ในสมัยก่อน ไฟล์หลักได้รับการดูแลโดยเซิร์ฟเวอร์หลักหนึ่งเซิร์ฟเวอร์ซึ่งได้รับการอัปเดตด้วยตนเองโดยมีรายการของเว็บไซต์ใหม่ทุกแห่ง จากนั้นเซิร์ฟเวอร์อื่นๆ จะคัดลอกไฟล์ดังกล่าว แต่เมื่อจำนวนเว็บไซต์เพิ่มขึ้นตามเวลา การรักษาฐานข้อมูลชื่อโดเมนด้วยตนเองนั้นทำได้ยาก ดังนั้น จึงรู้สึกถึงความจำเป็นของระบบอัตโนมัติ และจากนั้นความสามารถในการอัปเดตฐานข้อมูลโดยอัตโนมัติทั่วโลกก็ถูกนำมาใช้กับ DNS รุ่นใหม่
หากคุณลงทะเบียนชื่อเว็บไซต์ของคุณกับผู้รับจดทะเบียนชื่อโดเมน จะใช้เวลาประมาณ 24 ชั่วโมงกว่าที่เว็บไซต์ของคุณจะปรากฏในฐานข้อมูล DNS ทั่วโลก
มีการแนะนำความสัมพันธ์ของเซิร์ฟเวอร์ Master-Slave โดยที่เซิร์ฟเวอร์หลักรักษาฐานข้อมูล และเซิร์ฟเวอร์ Slave ต้องคัดลอกฐานข้อมูลเท่านั้นเพื่อให้อัปเดตต่อไป เพื่ออำนวยความสะดวกในการอัปเดตฐานข้อมูล DNS แบบไดนามิก กลไกการแจ้งเตือนและ IXFR จึงถูกนำมาใช้
ใน NOTIFY เมื่อเซิร์ฟเวอร์หลักอัพเดตฐานข้อมูล จะส่งการแจ้งเตือนไปยังเซิร์ฟเวอร์รองเกี่ยวกับการอัพเดต ซึ่งจะคัดลอกฐานข้อมูล IXFR (Incremental Zone Transfer) ขจัดความจำเป็นในการคัดลอกฐานข้อมูลทั้งหมดทุกครั้งที่มีการสร้างรายการเดียว อนุญาตให้เซิร์ฟเวอร์ทาสเพิ่มเฉพาะรายการที่อัปเดตในฐานข้อมูล ซึ่งจะช่วยลดความพยายามและทำให้กระบวนการอัปเดตแบบไดนามิกเร็วขึ้น
การแก้ไขที่อยู่ IP
หมายถึงกระบวนการแปลชื่อโดเมนเป็นที่อยู่ IP ที่เกี่ยวข้อง ตัวแก้ไข DNS คือพีซีไคลเอนต์ คุณอยู่ในตัวอย่างโรงแรมนั้น ซึ่งส่งแบบสอบถามไปยังเซิร์ฟเวอร์ DNS พนักงานต้อนรับ มีสองวิธีที่ใช้สำหรับการแก้ปัญหา:
แบบเรียก ซ้ำ: ตอนนี้ ต่อด้วยตัวอย่าง DNS ของโรงแรม สมมติว่าโรงแรมมีสาขามากกว่าหนึ่งแห่งในเมือง และพนักงานต้อนรับไม่พบหมายเลขห้องของเพื่อนของคุณ จากนั้นเธอจะตรวจสอบว่าเพื่อนของคุณอยู่ที่สาขาอื่นหรือไม่โดยติดต่อพนักงานต้อนรับที่อยู่ตรงนั้น
ดังนั้น หากเซิร์ฟเวอร์ DNS ไม่พบ IP ใดๆ ที่เกี่ยวข้องกับชื่อโดเมนที่ส่งในแบบสอบถาม จะขอให้เซิร์ฟเวอร์ที่เชื่อมต่ออื่นแก้ไขที่อยู่ IP สำหรับโดเมนที่ร้องขอ จะรวบรวมข้อมูลจากเซิร์ฟเวอร์เหล่านั้นและตอบกลับคุณด้วยที่อยู่ IP ที่เหมาะสม
วนซ้ำ: สมมติว่าคุณต้องการทราบชั้นที่ห้องของเพื่อนตั้งอยู่ เพื่อทำเช่นนั้น คุณจะต้องถามพนักงานต้อนรับอีกครั้ง ในทำนองเดียวกัน ถ้าตัวแก้ไข DNS ต้องการข้อมูลเพิ่มเติมเกี่ยวกับโดเมน ตัวแก้ไข DNS จะเริ่มต้นการสืบค้นใหม่สำหรับเซิร์ฟเวอร์ DNS เดียวกัน
แคช DNS
เซิร์ฟเวอร์ DNS เก็บแบบสอบถามคำขอไว้ชั่วคราวในรูปแบบของแคชเพื่อลดเวลาตอบสนองหากมีตัวแก้ไข DNS อื่นร้องขอการสืบค้นเดียวกัน เวลาที่ข้อมูลแคชยังคงใช้ได้อยู่ ซึ่งเรียกว่า TTL (Time To Live) ถูกกำหนดโดยผู้ดูแลระบบสำหรับบันทึกการสืบค้นแต่ละรายการที่จัดเก็บไว้ในแคช
แอปพลิเคชัน DNS
แอปพลิเคชันแรกและสำคัญที่สุดของ DNS คือ nslookup ซึ่งเซิร์ฟเวอร์ DNS จะตอบกลับด้วยที่อยู่ IP ของชื่อโดเมนที่ร้องขอในแบบสอบถาม DNS ถูกใช้โดย Mail Transfer Agent (MTA) ต่างๆ เช่น Microsoft Exchange Server และ IBM Domino เพื่อให้ส่งอีเมลได้อย่างมีประสิทธิภาพมากขึ้น
DNS ยังสามารถช่วยระบุที่อยู่ IP ที่ขึ้นบัญชีดำบนอินเทอร์เน็ตและป้องกันไม่ให้ผู้ใช้เข้าถึงได้ ซึ่งจะช่วยป้องกันผู้ใช้จากอีเมลขยะและการแฮ็คที่อาจเกิดขึ้น
ข้อมูลสำหรับชื่อโดเมนแต่ละชื่อและที่อยู่ IP จะถูกเก็บไว้ในเซิร์ฟเวอร์ DNS มากกว่าหนึ่งเซิร์ฟเวอร์ เพื่อให้ดึงข้อมูลได้อย่างง่ายดายหากเกิดปัญหาขึ้นบนเซิร์ฟเวอร์เดียว
ช่องโหว่ DNS
Cache Poisoning: เรียกอีกอย่างว่า DNS Spoofing ซึ่งเป็นเทคนิคที่คนคิดร้ายใช้ พวกเขาแก้ไขข้อมูลในแคชตัวแก้ไขของเซิร์ฟเวอร์ DNS แสดงที่อยู่ IP ที่ไม่ถูกต้องไปยังตัวแก้ไข DNS อาจเปลี่ยนเส้นทางผู้ใช้ไปยังเครื่องของแฮ็กเกอร์
การตอบสนองของ DNS ไม่ได้รับการเข้ารหัส ดังนั้นจึงทำให้มีโอกาสโจมตีได้ อย่างไรก็ตาม Domain Name System Security Extensions (DNSSEC) ถูกใช้เพื่อแสดงการตอบสนอง DNS ที่ ลงนามด้วยการเข้ารหัสลับ
การโจมตีแบบ ฟิชชิ่ง สามารถวางแผนได้เนื่องจากภาพมีความคล้ายคลึงกันของอักขระบางตัวบนหน้าจอของผู้ใช้ เช่น ตัวอักษร l และ 1 ปรากฏเหมือนกันในบางหน้าจอ จึงเปลี่ยนเส้นทางผู้ใช้ไปยังที่อยู่ IP ที่แตกต่างกันโดยแสดงรูปลักษณ์และความรู้สึกเหมือนกับเว็บไซต์ดั้งเดิม .
ฉันจะค้นหา DNS ของฉันได้อย่างไร
การค้นหาที่อยู่เซิร์ฟเวอร์ DNS บนเครื่องของคุณเป็นเรื่องง่าย หากคุณใช้พีซีที่ใช้ Windows ให้ไปที่การตั้งค่า > เครือข่ายและอินเทอร์เน็ต ที่นี่ คลิกที่ Properties สำหรับการเชื่อมต่อของคุณและเลื่อนลงเพื่อค้นหาเซิร์ฟเวอร์ DNS
ใช้ DNS แบบกำหนดเอง
จะเกิดอะไรขึ้นถ้าพนักงานต้อนรับของโรงแรมนั้นช้ามากและหลายคนถามหาหมายเลขห้องพร้อม ๆ กัน? จากนั้นเธอจะไม่สามารถให้หมายเลขห้องที่ถูกต้องแก่คุณได้อย่างรวดเร็ว ดังนั้น คุณอาจขอให้บุคคลอื่นที่เคาน์เตอร์แผนกต้อนรับดูแลข้อกังวลของคุณ ในทำนองเดียวกัน เมื่อเราเชื่อมต่ออินเทอร์เน็ต โดยทั่วไปเราใช้เซิร์ฟเวอร์ DNS ที่ ISP จัดเตรียมไว้ให้
แต่ถ้าเซิร์ฟเวอร์ DNS เริ่มต้นไม่ตอบสนองหรือไม่สามารถจัดการกับข้อความค้นหาจำนวนมากในช่วงเวลาที่กำหนดได้ กรณีดังกล่าวจะลดประสบการณ์การท่องเว็บของคุณเท่านั้น แต่ไม่ต้องกังวล มีทางออกอื่น คุณสามารถกำหนดค่าระบบของคุณให้ใช้เซิร์ฟเวอร์ DNS อื่นเพื่อแก้ไขที่อยู่ IP
อ่านเพิ่มเติม: 5 เซิร์ฟเวอร์ DNS ที่ดีที่สุด – DNS สาธารณะฟรีสำหรับการเชื่อมต่อที่รวดเร็ว
เซิร์ฟเวอร์ DNS ยอดนิยมบางตัว:
DNS สาธารณะของ Google: ยักษ์ใหญ่ด้านการค้นหาได้ตั้งค่าเซิร์ฟเวอร์ DNS ระดับสูงบางตัวที่สามารถจัดการคำขอนับล้านได้ทุกเมื่อ และใช้งานได้ฟรีอย่างแน่นอน เช่นเดียวกับบริการอื่นๆ ของ Google คุณสามารถกำหนดค่าเครื่องของคุณให้ใช้ที่อยู่ DNS ต่อไปนี้:
8.8.8.8 และ 8.8.4.4
OpenDNS: นี่คือบริษัทเอกชนที่ให้บริการเซิร์ฟเวอร์ DNS ที่ปลอดภัยและเชื่อถือได้ฟรี เพียงกำหนดค่าที่อยู่ต่อไปนี้ในเครื่องของคุณ:
208.67.222.222 และ 208.67.220.220
สำหรับผู้อ่านที่ไม่ทราบวิธีกำหนดค่า DNS บนเครื่องของคุณ โปรดดูที่ลิงค์ด้านล่าง:
แนะนำ: วิธีรับความเร็วอินเทอร์เน็ตที่เร็วขึ้นโดยใช้ DNS Hack
ไขลาน
DNS เป็นหัวข้อที่มีความสำคัญสูงสุดนับตั้งแต่การถือกำเนิดเป็นวิธีที่เป็นระบบในการรักษาฐานข้อมูลขนาดใหญ่ของเว็บไซต์และเซิร์ฟเวอร์นับล้านทั่วโลก หากไม่มี DNS ก็จะทำให้ชื่อโดเมนและที่อยู่ IP ยุ่งเหยิงไปหมด และจะใช้เวลานานกว่าจะค้นหา google.com จากกลุ่มชื่อโดเมนทั้งหมดอย่างจับจด
DNS ได้ปรับปรุงกระบวนการความละเอียดของ IP ให้คล่องตัว และถ้าไม่มี DNS อยู่ตรงนั้น ฉันรู้ว่าคุณจะเผาวงจรสมองของคุณเพื่อที่จะจำที่อยู่ IP เหล่านั้นทั้งหมด และให้ฉันถามคุณว่าคุณจำที่อยู่ IP ของ Facebook ที่ฉันกล่าวถึงข้างต้นได้ไหม และอย่าเพิ่งเลื่อนขึ้นตอนนี้ แม้ว่าฉันจะจำไม่ได้เพราะ DNS อยู่ที่นั่นเพื่อจดจำมันสำหรับเรา เราเพียงต้องการแสดงความขอบคุณสำหรับงานอันสูงส่งที่ DNS ได้ทำมาตลอดสามทศวรรษที่ผ่านมา และมันเร็วขึ้น ฉลาดขึ้น และเชื่อถือได้มากขึ้น
ดูวิดีโอนี้เกี่ยวกับ DNS:
อ่านเพิ่มเติม: การโจมตี DDoS ทำงานอย่างไร
ตอนนี้คุณก็รู้แล้วว่า DNS คืออะไรและมีวัตถุประสงค์อะไร ฝากความคิดของคุณในความคิดเห็นและพยายามกำหนดค่าเซิร์ฟเวอร์ DNS โดยใช้ลิงก์ในบทความ
หากคุณชอบตัวอธิบายง่ายๆ นี้ ให้ดูส่วน Short Bytes ของเรา เรานำหัวข้อเทคโนโลยีที่ซับซ้อนมาแบ่งเป็นบทความสั้นๆ ที่เข้าใจง่าย