บทนำ (Overview)
ก่อนหน้าเราได้ทดลองการ “Ping” เพื่อหาข้อมูลสำหรับเครื่องให้บริการ (http://blog.itselectlab.com/?p=195) เช่น “IP address” และ “TTL response” เป็นต้น ในบทความนี้จะแสดงให้เห็นถึงการรวบรวมข้อมูลของ “DNS record” โดยใช้คำสั่ง “nslookup”
“nslookup” (name server lookup) คือเครื่องมือสำหรับผู้ดูแลระบบเครือข่ายคอมพิวเตอร์ มีลักษณะเป็น “command-line” ทำหน้าที่ค้นหาข้อมูลของระบบ “Domain Name System” (DNS) เพื่อให้ได้ชื่อ “Domain” หรือหมายเลข “IP” หรือข้อมูล DNS อื่นๆ เช่น ชื่อ “E-mail server” เป็นต้น
DNS (Domain Name System) คืออะไร
การเชื่อมต่อสื่อสารระหว่างคอมพิวเตอร์นั้น ไม่ว่าจะเป็น “LAN” “Wifi” หรือ “Internet” ซึ่งจะมีหมายเลข “IP address” ประจำอุปกรณ์คอมพิวเตอร์ทั้งหมด และแม้แต่เว็บไซต์ต่าง ๆ ที่เราท่องไปตาม “Internet” ก็ดันมีหมายเลข “IP address” ด้วยเช่นกัน (เหตุเพราะต้องติดตั้งบน Web server) แต่ปัญหาคือเลข “IP address” ดันเป็นเลข 12 ตัว ซึ่งมันจำยาก ดังนั้นจึงมีการเปลี่ยนแปลงชื่อให้จำง่ายเรียกว่า “Domain Name”และมีกระบวนการหรือระบบที่สามารถแปลงระหว่าง ชื่อ เป็นเลข “IP address” จึงเรียกว่า DNS นั้นเอง…
ขั้นตอน (Steps)
- ทดสอบโดยใช้คำสั่ง nslookup และตามด้วยคำสั่ง “set type=a”
C:\Users\thaisingle>nslookup Default Server: 203-144-206-49.static.asianet.co.th Address: 203.144.206.49> set type=a > itselectlab.com Server: 203-144-206-49.static.asianet.co.th Address: 203.144.206.49 Non-authoritative answer: Name: itselectlab.com Address: 202.43.45.132 Aliases: www.itselectlab.com
- ทดสอบโดยใช้ “cname” เพื่อหาข้อมูลเพิ่มเติม
> set type=cname > itselectlab.com Server: 203-144-206-49.static.asianet.co.th Address: 203.144.206.49 itselectlab.com primary name server = cloud-ns15.XXX.com responsible mail addr = arica\.XXX.gmail.com serial = 1416390633 refresh = 10800 (3 hours) retry = 3600 (1 hour) expire = 604800 (7 days) default TTL = 10800 (3 hours)
- ทดสอบโดยใช้ “mx” (Mail exchange) ของ “server” ที่ตรวจสอบ
> set type=mx > itselectlab.com Server: 203-144-206-49.static.asianet.co.th Address: 203.144.206.49 Non-authoritative answer: itselectlab.com MX preference = 10, mail exchanger = mx2.chaiyohosting.com
สรุปผลการทดลอง (Conclusion)
ชื่อ “Domain name” เป็นสิ่งสำคัญในระบบโดเมนเพื่อให้คนสามารถจดจำการเข้าถึงได้ง่ายขึ้นมากกว่าเลขหมาย “IP” แต่อย่างไรก็ตามในระบบนี้ก็ถูกใช้เป็นสิ่งแรกๆ ในการรวบรวมข้อมูลของ “Hacker” เพราะฉนั้นควรคำนึงความปลอดภัยของ “Server” เหล่านี้ด้วย ส่วนเพิ่มเติมอื่น ๆ ของการทดลองมีดังนี้
- ถ้าพบว่ามี Error เช่น “DNS request timeout” เป็นไปได้ว่า Firewall อาจกรอง “DNS query” ที่ส่งไปสอบถามยัง “Server”
- Name Servers จะทำการค้นหาข้อมูลที่ร้องขอมาตรวจสอบ IP address โดยการหาข้อมูลจากฐานข้อมูลตัวเอง หรือจะส่งร้องขอไปยัง “Name Server” อื่น ซึ่งถ้า “Name Server” มีข้อมูลของส่วนโดเมน แสดงว่า “Server” นั้นเป็นเจ้าของโดเมนเองเรียกว่า “Authoritative” แต่ถ้าเกิดไม่มีเรียกว่า “Non-Authoritative”