การติดตั้งและปรับแต่ง DNS Server แบบ Caching-Only
ระบบโดเมนเนม (Domain Name System) หรือ DNS เป็นระบบที่ใช้ในการแปลงชื่อเว็บไซต์ ให้เป็นหมายเลขไอพี หรือแปลงหมายเลขไอพี ให้เป็นชื่อเว็บไซต์
ถ้าไม่มีการใช้ระบบโดเมนเนม เมื่อเราต้องการเข้าเว็บไซต์ต่างๆ เราต้องใช้หมายเลขไอพีแทน แต่เนื่องจากว่าหมายเลขไอพีของเครื่องเซิร์ฟเวอร์ ในระบบอินเตอร์เน็ตนั้น มีอยู่จำนวนมหาศาล จึงเป็นการยากที่จะจดจำหมายเลขไอพีว่า หมายเลขไอพีนี้เป็นของเซิร์ฟเวอร์ หรือว่าเว็บไซต์ใด
พื้นฐานคำสั่งเกี่ยวกับ DNS
คำสั่ง host จะใช้ในการตรวจสอบ dns อย่างง่าย
ตัวอย่างการใช้งาน
|
$ host www.cphow.com www.cphow.com has address 202.43.35.234 $ host 202.43.35.234 234.35.43.202.in-addr.arpa domain name pointer www.cphow.com. |
คำสั่ง nslookupใช้ในการตรวจสอบการแปลงหมายเลขไอพี กับ โดเมนเนม
ตัวอย่างการใช้งาน
|
$ nslookup www.cphow.com Server: 202.12.97.1 Address: 202.12.97.1#53
Name: www.cphow.com Address: 202.43.35.234 |
ซอฟต์แวร์ที่ใช้ในการติดตั้ง
ซอฟต์แวร์ที่ใช้ในการติดตั้ง DNS Server ที่ได้รับความนิยมมากที่สุดในปัจจุบันนั้น มีชื่อว่า BIND มาจาก Berkeley Internet Name Domain ซึ่งมีอยู่แล้วในแผ่น Fedora Core 6 Linux แผ่นที่ 2
ขั้นตอนการติดตั้ง BIND
ขั้นตอนที่ 1
ใส่แผ่น Fedora Core 6 Linux แล้วทำการเมาท์แผ่น แล้วไปยังไดเรคเทอรี Fedora/RPMS
|
# mount /dev/cdrom /mnt/cdrom # cd /mnt/cdrom/Fedora/RPMS |
ขั้นตอนที่ 2
ทำการติดตั้งไฟล์ bind-9.3.2-41.fc6.i386.rpm และ bind-chroot-9.3.2-41.fc6.i386.rpm ดังนี้
|
# rpm -ihv bind-9.3.2-41.fc6.i386.rpm bind-chroot-9.3.2-41.fc6.i386.rpm warning: bind-9.3.2-41.fc6.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2 Preparing... ########################################### [100%] 1:bind ########################################### [ 50%] 2:bind-chroot ########################################### [100%] Locating /var/named/chroot//etc/named.conf failed: [FAILED] |
ขั้นตอนการปรับแต่ง DNS Server แบบ Caching-Only
ขั้นตอนที่ 1
ไฟล์คอนฟิกกูเกชั่นหลักจะอยู่ที่ /etc/named.conf หรือในบางครั้งอาจจะพบว่าอยู่ที่ /var/named/chroot/etc/named.conf เนื่องจากว่ามีการจัดการเรื่องของความปลอดภัย ที่เรียกว่า chroot โดยเป็นการจำลองพาธเสมือนขึ้นมา เราต้องคัดลอกไฟล์ต้นฉบับจาก /usr/share/doc/bind-9.3.2/sample/etc/named.conf ไปยัง /var/named/chroot/etc/named.conf และจะมีไฟล์ที่เกี่ยวข้องที่ต้องคัดลอกไปเหมือนกัน
-
/usr/share/doc/bind-9.3.2/sample/etc/named.root.hints คัดลอกไปยัง /var/named/chroot/etc/
-
/usr/share/doc/bind-9.3.2/sample/etc/named.rfc1912.zones คัดลอกไปยัง /var/named/chroot/etc/
ดังนี้
|
# cp /usr/share/doc/bind-9.3.2/sample/etc/named.conf /var/named/chroot/etc/named.conf # cp /usr/share/doc/bind-9.3.2/sample/etc/named.root.hints /var/named/chroot/etc/ # cp /usr/share/doc/bind-9.3.2/sample/etc/named.rfc1912.zones /var/named/chroot/etc/ |
จากนั้นทำการคัดลอกไดเรคเทอรี # usr/share/doc/bind-9.3.2/sample/var/ ไปยัง /var/named/chroot/var/ ดังนี้
|
# cp -r /usr/share/doc/bind-9.3.2/sample/var/* /var/named/chroot/var/ |
ขั้นตอนที่ 2
ทำการสร้างคีย์สำหรับการอัพเดตข้อมูล dns โดยใช้คำสั่ง /usr/sbin/dns-keygen ดังนี้
|
[root@netserv etc]# /usr/sbin/dns-keygen xxxxYhdtKBA5BnHdJnyNRp9dkFYLFcIFgOZsxxxx |
เมื่อได้คีย์เรียบร้อยแล้ว ให้นำไปใส่ไว้ส่วนของ key ddns_key ในไฟล์ named.conf ดังนี้
|
จาก key ddns_key { algorithm hmac-md5; #secret "use /usr/sbin/dns-keygen to generate TSIG keys"; }; |
|
เป็น key ddns_key { algorithm hmac-md5; #secret "use /usr/sbin/dns-keygen to generate TSIG keys"; secret "xxxxYhdtKBA5BnHdJnyNRp9dkFYLFcIFgOZsxxxx"; }; |
ขั้นตอนที่ 2
ทำการเพิ่มส่วนของ forwarders โดยข้างในเป็นหมายเลขไอพีของ DNS Server ที่เราใช้งานอยู่ ดังนี้
|
จาก options { ... // Put files that named is allowed to write in the data/ directory: directory "/var/named"; // the default dump-file "data/cache_dump.db"; statistics-file "data/named_stats.txt"; memstatistics-file "data/named_mem_stats.txt"; }; |
|
เป็น options { ... // Put files that named is allowed to write in the data/ directory: directory "/var/named"; // the default dump-file "data/cache_dump.db"; statistics-file "data/named_stats.txt"; memstatistics-file "data/named_mem_stats.txt"; forwarders { 202.69.137.83; 202.47.249.4; }; }; |
ตรวจสอบการทำงานของ DNS Server แบบ Caching-Only
ก่อนอื่นให้ตรวจสอบเซอร์วิส named ว่าทำงานได้ถูกต้องหรือไม่ โดยทำการ start , stop , restart เซอร์วิส ดังนี้
|
# /etc/init.d/named start # /etc/init.d/named stop # /etc/init.d/named restart |
- Add new comment
- Printer friendly version






- 1491 reads


