- สมมติว่า name server ของ ISP ที่ให้บริการ มีหมายเลข ip คือ 10.0.0.5 และ name server ของเราเป็นเลข 10.0.1.3
ก่อนติดตั้ง ให้ทดสอบว่า server เครื่องนี้ สามารถท่องอินเทอร์เนตได้อย่างสมบูรณ์
- ลองใช้ browser ไปที่ www.google.com ว่าใช้งานได้
- ตรวจสอบดู dns server ที่ตนเองใช้อยู่ในปัจจุบันในแฟ้ม /etc/resolv.conf
ด้วยคำสั่งว่า cat /etc/resolv.conf ได้ข้อความประมาณว่า nameserver 10.0.0.5
ตัวอย่างนี้คือระบบเลือกใช้ name server มีหมายเลข ip คือ 10.0.0.5
- ลองใช้คำสั่งว่า nslookup www.yahoo.com ได้คำตอบประมาณว่า
Server: 10.0.0.5
Address: 10.0.0.5#53
Non-authoritative answer:
www.yahoo.com canonical name = www.yahoo.akadns.net.
Name: www.yahoo.akadns.net
Address: 209.191.93.52
- ลองใช้ browser ไปที่ www.google.com ว่าใช้งานได้
- ติดตั้งโปรแกรม bind ด้วยคำสั่ง sudo apt-get install bind9 bind9-doc bind9-host dnsutils
สั่งให้ DNS sever ทำงาน ใช้คำสั่ง sudo /etc/init.d/bind9 start
ปรับแต่งค่าต่างๆได้ที่แฟ้ม /etc/bind/named.conf.options
แล้วสั่งให้ DNS server ทำงานใหม่ด้วยคำสั่ง sudo /etc/init.d/bind9 reload
- การทำเป็น name server แบบ forward only
แก้ไขแฟ้ม /etc/bind/named.conf.options ให้มีข้อมูลประมาณดังตัวอย่าง
options {
directory "/var/cache/bind";
forward first;
forwarders {
10.0.0.5;
};
auth-nxdomain no;
allow-query { any; };
};
แก้ไขเสร็จแล้ว ให้สั่ง reload name server ใหม่ ด้วยคำสั่ง sudo /etc/init.d/bind9 reload
ทดสอบผลงานด้วยคำสั่ง
nslookup www.yahoo.com 127.0.0.1
ได้ผลประมาณว่า
Server: 127.0.0.1
Address: 127.0.0.1#53
Non-authoritative answer:
www.yahoo.com canonical name = www.wa1.b.yahoo.com.
www.wa1.b.yahoo.com canonical name = www-real.wa1.b.yahoo.com.
Name: www-real.wa1.b.yahoo.com
Address: 209.131.36.158
ถึงตอนนี้แสดงว่า name server ของเราทำงานเป็นแบบ forward only ได้แล้ว
- หากต้องการทำเป็น caching only ด้วยก็ให้ทำต่อคือ
แก้ไขแฟ้ม /etc/resolv.conf เพิ่มข้อความว่า
name server 127.0.0.1 ไว้บนบรรทัดแรกสุด ประมาณว่า
nameserver 127.0.0.1
nameserver 10.0.0.5
หมายความว่า ให้เลือก query จากตนเองก่อน หากไม่พบ ก็ไปต่อที่ 10.0.0.5
แก้ไขแค่นี้ ก็ใช้ได้แล้ว ไม่ต้องไป reload หรือ restart
รอสัก 2 นาที แล้วลองทดสอบผลงานด้วยคำสั่ง
nslookup www.yahoo.com
ได้ผลประมาณว่า
Server: 127.0.0.1
Address: 127.0.0.1#53
Non-authoritative answer:
www.yahoo.com canonical name = www.wa1.b.yahoo.com.
www.wa1.b.yahoo.com canonical name = www-real.wa1.b.yahoo.com.
Name: www-real.wa1.b.yahoo.com
Address: 209.131.36.158
แสดงว่าใช้งานได้แล้ว
- หากต้องการทำเป็น name server สำหรับบริการทั่วๆไป
มีตนเองเป็น primary และมี myisp.domain.com เป็น secondary
**** ต้องยกเลิกหรือลบบรรทัดข้อความในแฟ้ม /etc/bind/named.conf.options (ถ้ามี)ว่า forward first; ทิ้งออกไปด้วย
แก้ไขที่แฟ้ม /etc/bind/named.conf.local
**** การใส่ comment ใน zone file ให้ใส่เครื่องหมาย ";" นำหน้า
ให้มีข้อมูล zone และ reserve zone ที่ต้องการ ดังตัวอย่าง
zone "mydomain.com" {
type master;
allow-query { any; };
file "/etc/bind/my-domain.zone";
};
zone "1.0.10.in-addr.arpa" {
type master;
file "/etc/bind/10-0-1.zone";
};
ต่อไปให้สร้างแฟ้ม zone ต่างๆ
แก้ไขแฟ้ม /etc/bind/my-domain.zone ให้มีข้อมูลประมาณดังตัวอย่าง
$TTL 3D
@ IN SOA localhost. root.localhost (
200611146 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
NS ns
localhost A 127.0.0.1
ns A 10.0.1.3
myserver1 A 10.0.1.207
myserver2 A 10.0.1.208
ต่อไปให้สร้างแฟ้ม reverse zone
แก้ไขแฟ้ม /etc/bind/10-0-1.zone มีข้อมูลประมาณดังตัวอย่าง
$TTL 3D
@ IN SOA localhost. root.localhost (
200611142 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
NS ns
NS myisp.domain.com
205 PTR myserver1.mydomain.com.
207 PTR myserver1.mydomain.com.
ให้ DNS ทำงานด้วยคำสั่ง sudo /etc/init.d/bind9 restart
ทดสอบใช้งานได้เลย
- ตัวอย่างการทำ name server 2 ตัว ตัวหนึ่งเป็น master อีกตัวเป็น slave เพื่อสำรองข้อมูล
สมมติว่าเลข ip ของ master เป็น 10.0.0.5 และ slave เป็น 10.0.0.6
บน master ทำการติดตั้งทำนองเดียวกับ name server ทั่วไป
แต่ให้แก้ไขแฟ้ม /etc/bind/named.conf.local เป็นประมาณตามตัวอย่างว่า
zone "mydomain.com" {
type master;
allow-query { any; };
file "/etc/bind/my-domain.zone";
allow-transfer { 10.0.0.6; };
};
บน slave ทำการติดตั้งทำนองเดียวกับ name server ทั่วไป
แต่ให้แก้ไขแฟ้ม /etc/bind/named.conf.local เป็นประมาณตามตัวอย่างว่า
zone "mydomain.com" {
type slave;
allow-query { any; };
file "/var/cache/bind/my-domain.zone";
allow-transfer { 10.0.0.6; };
};
ให้ DNS ทำงานด้วยคำสั่ง sudo /etc/init.d/bind9 reload
ทดสอบใช้งานได้เลย
วันอาทิตย์ที่ 26 มกราคม พ.ศ. 2557
ติดตั้ง bind บน ubuntu
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น