410 likes | 664 Views
DNS. D omain N ame S ystem. 210.247.125.102. 55.175.142.44. 103.111.71.63. 232.210.174.196. 42.175.95.190. 77.30.123.97. 147.52.66.109. มีหมายเลขไอพีใดบ้าง ?. www.ivao.aero. www.wu.ac.th. www.kapook.com. www.manager.co.th. www.webchat.org. www.pangya.in.th. www.fevergame.net.
E N D
DNS Domain Name System
210.247.125.102 55.175.142.44 103.111.71.63 232.210.174.196 42.175.95.190 77.30.123.97 147.52.66.109
www.ivao.aero www.wu.ac.th www.kapook.com www.manager.co.th www.webchat.org www.pangya.in.th www.fevergame.net www.aero.rtaf.mil.th www.nasa.gov
The Domain Name System is the system that translates Internet domain names into IP numbers. DNS คือระบบซึ่งจะทำการแปลงชื่อโดเมน ให้กลายเป็น หมายเลขไอพี (Domain -> IP) 1http://www.webprosgroup.com/glossary.htm
DNS HOST Domain (ASCII) IP IP / TCP Connection USER Established
กาลครั้งหนึ่ง ณ ARPANET • Host.txt ใช้ในการเก็บชื่อของ Host และ หมายเลข IP • ทุกคืน จะมีการประมวลผลหนึ่งครั้ง • ดี – ถ้ามีเครื่องในเครือข่ายไม่มาก • ไม่ดี - ถ้ามีเครื่องอยู่ในเครือข่ายมาก
ทำไมถึงไม่ดี ? • Host.txt จะใหญ่ขึ้นเรื่อยๆ -> ใหญ่เกินไป • ยิ่งมีข้อมูลมาก ยิ่งใช้เวลาในการประมวลผลในแต่ละครั้งนาน • จึงทำให้เกิด DNS ขึ้นมา
Top-Level Domain (TLD) • Generic -> ทั่วไป • Countries -> แต่ละประเทศ
UPDATE TLD !!!! • November, 2000. ICANN (International Corporationfor assigned Names and Numbers) กำหนด TLD เพิ่มขึ้นมาอีก 4 ชื่อ • Biz (Businesses) • Info (Information) • Name (People Names) • Pro (Professions)
With New NAMES • Aero (Aerospace Industry) • Coop (Co-Operatives) • Museum (Museums)
ปัญหาของการจดทะเบียน TLD • ความเหมาะสมของการจดทะเบียน • ผู้จดทะเบียนเป็นใคร • ใครคือผู้รับรองสถานะของผู้จดทะเบียน • ผู้ที่ไม่มีหน่วยงาน หรือ เอกสารรับรอง
โดเมนในระดับที่สอง (Second-Level Domain) • การจัดตั้งทำได้ง่ายกว่าTLD • ตรวจสอบว่าชื่อโดเมนยังว่างหรือไม่ ? • ถ้าว่าง ผู้ลงทะเบียนก็ต้องชำระค่าธรรมเนียม (รายปี)
Path ของ Domain TH TLD – Countries AC สถานศึกษา (Academic) มหาวิทยาลัยวลัยลักษณ์ WU.ac.th WU CES Eng ศบศ. สำนักวิศวฯ Eng.wu.ac.th Ces.wu.ac.th
ลักษณะของโดเมน • Case Insensitive • ชื่อรองลงมามีอักขระได้ไม่เกิน 63 ตัวอักษร • ชื่อโดเมนทั้งหมดจะต้องยาวไม่มากกว่า 255 ตัวอักษร • แต่ละโดเมนจะควบคุม บริหารจัดการภายใต้โดเมนของตัวเอง • การสร้างโดเมนใหม่ ต้องได้รับอนุญาตจากโดเมนหลักก่อนเสมอ
Resource Record • ทุกๆ โดเมนจะมี Resource Record อยู่ 1 ชุดเสมอ • สิ่งที่บรรจุอยู่ใน Resource Record คือ IP และอาจจะมีข้อมูลอื่นๆ อยู่ด้วย • เมื่อโปรแกรม Resolver ส่ง Domain Name มาให้กับ DNS ก็จะได้ Resource Record กลับไป • ดังนั้นหน้าที่หลักจริงๆ ของ DNS คือ แปลง Domain Name ให้เป็น Resource Record
Resource Record ประกอบด้วย 5 ส่วน • Domain Name • Time_To_Live • Class • Type • Value
Domain Name • บอกชื่อของ Record นั้น • อาจมีหลาย Record ใน 1 Domain • แต่ละฐานข้อมูลจะเก็บข้อมูลของหลายๆ Domain • มักถูกใช้เป็น Primary Key • ลำดับที่เก็บข้อมูล ไม่ได้เรียงตามลำดับความสำคัญ
Time_To_Live • บอกสถานะของแต่ละ Record • ข้อมูลที่มีความเสถียรมาก จะได้รับการกำหนดค่าให้มาก • ข้อมูลที่มีความสำคัญน้อย จะได้รับการกำหนดค่าให้น้อย
Class • โดยทั่วไปไม่ค่อยงานมากนัก • สำหรับข้อมูลที่ใช้กับอินเทอร์เนตจะมีค่าเป็น IN เสมอ • สำหรับข้อมูลของระบบอื่นๆ อาจเป็นค่าอื่นได้
Type ใช้บอกชนิดของ Record • SOAนำเสนอแหล่งที่มาหลักข้อมูลเกี่ยวกับชื่อของ zone server, admin’s email, flags และ Timeout • Aมีความสำคัญมากที่สุด ซึ่งเป็นที่อยู่ของ IP (ขนาด 32 บิต) ของโฮสตัวหนึ่ง ซึ่งต้องมีอย่างน้อย 1 หมายเลข • MXมีความสำคัญรองลงมาจาก A Record ใช้ในการระบุชื่อโฮสที่มีหน้าที่ในการรับ-ส่ง อีเมล์ • NSทำการระบุ Name Server • CNAMEใช้ในการสร้างชื่อรอง (Alias)
PTRมีลักษณะการทำงานคล้ายกับ CNAME คือ แปลงจากชื่อหนึ่งไปยังอีกชื่อหนึ่ง แต่ PTR เป็นข้อมูลชนิดหนึ่งของ DNS ซึ่งมักจะนำมาแปลงชื่อให้กลายเป็นไอพี (Reverse Lookups) • HINFOบอกชนิดของเครื่อง และ OS ของเครื่องโดเมน • TXTช่วยให้โดเมนสามารถแสดงตัวเองได้ในวิธีการเฉพาะ • ทั้ง HINFO และ TXT เป็นส่วน Option ซึ่งไม่จำเป็นต้องใช้งานก็ได้
Value • อาจจะเป็นตัวเลข หรือ ชื่อโดเมน หรือ ชื่อที่เป็นกลุ่มตัวอักษร ซึ่งความหมายของค่านี้ จะขึ้นอยู่กับชนิดของ Record
ทำไมจึงไม่เห็นเป็น IP ที่ใช้ในการหา TLD • เพราะหมายเลขไอพีนี้ถูกใช้สำหรับการหาโฮสที่อยู่ไกลออกไป แต่ไม่ได้เป็นส่วนหนึ่งของโดเมน cs.vu.nl ดังนั้นจึงไม่มีข้อมูลเก็บอยู่ในแฟ้มข้อมูลนี้ แต่จะได้รับมาจากเครื่อง Server ที่เป็น Root แทน ซึ่งจะเก็บหมายเลขทั้งหมดไว้ใน System Configuration File และจะถูกนำมาไว้ใน DNS Cache ในตอนเริ่มต้นการทำงาน • ในโลกนี้มี Root Server อยู่ประมาณ 12 เครื่อง แต่ละเครื่องจะทราบไอพีของ TLD Server ทุกเครื่อง ดังนั้นถ้าคอมพิวเตอร์เครื่องหนึ่งทราบ IP ของ Root Server อย่างน้อย 1 เครื่อง ก็จะสามารถค้นหาข้อมูลชื่อ DNS ตัวใดก็ได้
Name Servers • หากมองในแง่ทฤษฏีแล้ว เครื่อง Name Server เพียงเครื่องเดียวก็สามารถจัดเก็บฐานข้อมูล DNS ไว้ได้ทั้งหมดและให้บริการแก่ผู้ใช้ได้ • หากมองในแง่การปฏิบัติแล้ว Server เครื่องนี้จะทำงานจนเกินขีดความสามารถ จนกระทั่งหยุดให้บริการ ไม่สามารถให้บริการได้ และ หากเครื่องนี้หยุดทำงานเมื่อใด Internet ทั้งระบบก็จะต้องหยุดการทำงานไปด้วยเช่นกัน
เพื่อป้องกันปัญหาดังกล่าว DNS Name Space จึงถูกแบ่งออกเป็นหลายส่วน ที่ไม่คาบเกี่ยวกัน เรียกว่า “โซน (Zones)”
แต่ละโซนบรรจุไว้ด้วยส่วนหนึ่งของต้นไม้และมี Name Server ที่บันทึกข้อมูล เกี่ยวกับการให้บริการในพื้นที่นั้นๆ • โดยปกติโซนหนึ่งจะมี Name Server ตัวหลัก 1 ตัวซึ่งจะได้ข้อมูลมาจากแฟ้มข้อมูลในดิสก์เครื่องตนเอง และจะมี Name server ตัวสำรองอีกอย่างน้อย 1 ตัวซึ่งจะรับข้อมูลมาจาก NS ตัวหลัก
การแบ่งขอบเขตโซน • การแบ่งขอบเขตขอบเขตของโซนที่อยู่ภายในโซนโซนหนึ่งนั้น จะขึ้นอยู่กับผู้บริหารในโซนนั้นๆ ซึ่งการตัดสินใจนี้จะขึ้นอยู่กับ จำนวน และ สถานที่ตั้งของ NS ที่ต้องการมีไว้ใช้งาน
เมื่อ Resolver มีคำถามเกี่ยวกับชื่อโดเมน ก็จะค้นหาคำตอบโดยการส่งคำถามไปยัง NS ตัวหนึ่ง ที่อยู่ในโซนของตนเอง ถ้าโดเมนที่กำลังตามหานั้นอยู่ในการดูแลของ NS ก็จะส่ง Authoritative Resource Record1กลับคืนมา • หากโดเมนนั้นอยู่ไกลออกไปและไม่มีข้อมูลของโดเมนนั้นอยู่ที่ NS ของตนเองเลย NS ก็จะทำการส่งคำถาม ไปถาม NS ของระดับบนสุดของโดเมน (TLD) 1.Authoritative Record คือ ข้อมูล Record ที่ถูกส่งมาจากผู้มีอำนาจในการบริหาร Record ดังนั้น จึงเป็นข้อมูลที่ถูกต้องเสมอ
Resolver จะส่งคำถามไปยัง NS ของตนเอง นั่นคือ CS.VA.NL ซึ่งภายในคำถามนี้จะบรรจุชื่อโดเมนที่กำลังตามหาอยู่ หากไม่มี NS ตัวใดทราบเลย ก็จะส่งคำถามต่อไปยัง EDU Name Server ซึ่งจะทราบโดเมนทั้งหมดที่อยู่ภายใต้ตนเอง เมื่อพบข้อมูลแล้ว จะส่งข้อมูลกลับไป ตามลำดับ
เมื่อ Record เดินทางมาถึง NS ของ CS.VA.NL แล้ว ข้อมูลนี้จะถูกเก็บไว้ใน Cache เผื่อมีการเรียกใช้งานในครั้งต่อไป แต่ข้อมูลนี้จะไม่ใช่ Authoritative Resource Record เนื่องจากการเปลี่ยนแปลงแก้ไขที่ cs.yale.edu จะไม่ถูกส่งต่อไปยัง Cache ในทุก Server ดังนั้นข้อมูลที่ถูกเก็บอยู่ จึงไม่ควรถูกเก็บไว้นานเกินไป ดังนั้นจึงต้องมีการกำหนด TTL
หากบาง Server ไม่สนับสนุนวิธีการทำ Recursive Query ก็จะส่งชื่อของ NS ตัวถัดไปมาให้แทน
Q&A คำถามครับ ?