Configure DNS Forwarder
- Details
- Category: KB
- Published on 28/08/2012
- Hits: 34607
เครื่อง Server ของคุณเอง คงจะไม่มี Zone ของ DNS ทั้งโลกใช่ไหมครับ, DNS Server ในองค์กรคุณส่วนมากถ้าคุณทำการ Promote AD ขึ้นมาแล้ว DNS Zone ที่คุณมี ก็คือ Domain Name ของคุณเอง แล้วแบบนี้เครื่อง Client ที่ต้องการ Resolve Domain Name อื่นจะทำอย่างไรเมื่อไม่สามารถค้นหาคำตอบ Domain Name ได้
ปัญหาเบาบางแต่หนักอึ้งของ Admin หลายคนก็คือ การตั้งค่า DNS บนเครื่อง Client นี่แหล่ะครับ เพราะผมเชื่อได้เลยว่า มีแน่นอนที่เครื่อง Client ของคุณเอง ทำการตั้งค่า IP Address ของ DNS ให้ชี้ไปยัง Internet Service Provider (ISP) เพราะอยากให้ Client ใช้งานเว็บไซต์ได้ ด้วยสาเหตุที่คุณมักจะเจอปัญหาว่า ถ้าเปลี่ยน IP ของ DNS ให้ชี้ไปยัง DNS Server ภายในองค์กรของคุณเอง เช่น เครื่อง Domain Controller (ที่ติดตั้ง DNS Server ไว้พร้อมกัน) คุณจะไม่สามารถเข้าเว็บไซต์ใด ๆ ได้เลย คุณก็เลยแก้ปัญหาด้วยการนำ DNS Server ของ ISP มาใส่ให้กับ Client ทุกเครื่อง
พอคุณทำเช่นนั้นแล้ว ปัญหาที่ตามมาก็คือ Client จะ Logon เข้าสู่ระบบ Domain ช้ามาก บางครั้งใช้เวลา 5-10 นาทีกว่าจะเจอหน้า Desktop นั่นก็เพราะเมื่อเครื่อง Client ของคุณ ได้ทำการ Join Domain เข้าเป็นสมาชิก Domain ในองค์กรคุณแล้ว มันก็จะพยายามหา Domain Name ที่คุณได้เคย Join Domain เข้าไป ซึ่งแท้จริงมันก็อยู่ในองค์กรคุณนั่นแหล่ะ แต่คุณไปเปลี่ยน DNS ให้ Client วิ่งออกไปถามหาโดเมนของคุณเอง จากภายนอก มันก็ออกไปวิ่งเล่นข้างนอกสบายใจเฉิบสิครับ กว่าจะ Resolve ไป ๆ มา ๆ สุดท้ายคือ หาไม่เจอ แต่ก็ยังคงสามารถเข้าสู่ Desktop ได้ปกติ
ซึ่งแท้จริงแล้ว Client เอง ควรจะชี้ DNS ไปยังในองค์กรของคุณเอง ซึ่งแน่นอน ปัญหาจะเกิดขึ้นคือ คุณไม่สามารถเปิดเว็บไซต์ได้ เพราะด้วยกระบวนการ Resolve Domain Name นั้น มันไม่สามารถตอบคำถาม Domain Name อื่นได้เลย นอกจาก Domain Name ของคุณเอง เนื่องจาก DNS Server ในองค์กรคุณมันไม่มีข้อมูล Domain Name เครื่องอื่น และเครื่องทั่วโลก
การแก้ปัญหาก็คือ DNS Server ในองค์กรคุณ ควรจะทำสิ่งที่เรียกว่า DNS Forwarder เมื่อ DNS Server ของคุณเองไม่สามารถให้คำตอบได้ ก็จะไปถามจาก DNS Server ตัวอื่นแทนเพื่อให้ได้ IP Address กลับมา
ซึ่งตัวอย่างนี้ ผมได้สร้าง DNS Server ขึ้นมา 2 เครื่องคือ DNS domain.local มี IP Address เป็น 192.168.100.10 และ DNS dns.com มี IP Address เป็น 192.168.100.100 ซึ่งผมจะสมมติเหตุการณ์ว่า Client ต้องการจะถามหา dns.com โดยการให้เครื่อง 192.168.100.10 ไปสอบถามต่อที่เครื่อง 192.168.100.100 โดยก่อนการทำ DNS Forwarder นั้น ผมได้ทดสอบให้ Client ลองถามหา IP Address จากโดเมนที่ชื่อว่า dns.com
จะเห็นได้ว่า การสอบถาม domain.local นั้น จะได้คำตอบกลับมา แต่เมื่อ Query ถามหา dns.com กลับไม่มีคำตอบใด ๆ จนสุดท้ายก็ time-out ไปในที่สุด
Setting DNS Forwarder
เปิด DNS Manager ขึ้นมา แล้วคลิกขวาที่ DNS Server > Properties
เลือกแถบ Forwarders คลิก Edit
Dialog Edit Forwarders ให้พิมพ์ IP Address ของเครื่องที่เราจะให้ไปถาม DNS Query ต่ออีกทีในกรณีที่ DNS Server ของเราไม่มีคำตอบ แล้วคลิก OK กลับออกมา
คราวนี้มาลองกันใหม่ ให้ Client ทำการ nslookup dns.com ซ้ำอีกครั้ง
ก็จะพบว่า สามารถ Query เป็น IP Address กลับมาได้
ซึ่งในความเป็นจริง คุณก็เพียงแค่ทำ Forwarding ไปยัง DNS Server ของ ISP ที่คุณใช้งานอยู่ก็ได้ครับ หรือจะ Forward ไป 8.8.8.8 ซึ่งเป็น DNS Server ของ Google ก็ได้ เพียงเท่านี้ Client ของคุณก็จะค้นหาโดเมนเนมในองค์กรของคุณได้เร็วขึ้น แล้วก็ยังสามารถใช้งานเว็บไซต์ได้ปกติอีกด้วย