การติดตั้ง dns server ด้วยโปรแกรม bind


การติดตั้ง dns server ด้วยโปรแกรม bind

การติดตั้ง dns server ด้วยโปรแกรม bind

    1. สมมติว่า name server ของ ISP ที่ให้บริการ มีหมายเลข ip คือ 10.0.0.5  และ name server ของเราเป็นเลข 10.0.1.3

      ก่อนติดตั้ง ให้ทดสอบว่า server เครื่องนี้ สามารถท่องอินเทอร์เนตได้อย่างสมบูรณ์

    2. ลองใช้ 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

    1. โปรแกรม bind ที่ติดตั้งบน linux fedora core 4 จะเป็น name server แบบ caching only คือเป็น name server ที่ไม่ต้องมีการส่งข้อมูลออกไปให้ name server อื่นๆ ทำหน้าที่ไปค้นหา ip จาก name server แต่เพียงอย่างเดียว

      ติดตั้งโปรแกรม bind ด้วยคำสั่ง
      yum  install  bind  bind-utils  bind-chroot

      ตั้งให้ทำงานทุกครั้งที่บูทเครื่อง ด้วยคำสั่ง
      chkconfig named on

      สั่งให้ DNS sever ทำงาน ด้วยคำสั่ง
      service named start

      สามารถปรับแต่งค่าได้ที่แฟ้ม /var/named/chroot/etc/named.conf
      แล้วต้องสั่งให้ reload ใหม่ด้วยคำสั่ง
      service named reload

    2. หากต้องการทำเป็น name server แบบ forward only
      ต้องแก้ไขแฟ้ม /var/named/chroot/etc/named.conf ให้มีข้อมูลประมาณดังตัวอย่าง

      options {
              directory "/var/named";
              forward first;
                 forwarders {
                      10.0.0.5;
                  };
      };

      แก้ไขเสร็จแล้ว ให้สั่ง reload name server ใหม่ด้วยคำสั่ง
      service named 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.yahoo.akadns.net.
      Name:   www.yahoo.akadns.net
      Address: 209.191.93.52

      ถึงตอนนี้แสดงว่า name server ของเราทำงานเป็นแบบ forward only  ได้แล้ว

    3. หากต้องการทำเป็น 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.yahoo.akadns.net.
      Name:   www.yahoo.akadns.net
      Address: 209.191.93.52

      แสดงว่าใช้งานได้แล้ว

    4. หากต้องการทำเป็น name server สำหรับบริการทั่วๆไป
      มีตนเองเป็น primary และมี myisp.domain.com เป็น secondary

      ให้แก้ไขแฟ้ม /var/named/chroot/etc/named.conf  ดังนี้
      ****  ต้องยกเลิกหรือลบบรรทัดข้อความ(ถ้ามี)ว่า
              forward first;   ทิ้งออกไปด้วย

      **** การใส่ comment ใน zone file ให้ใส่เครื่องหมาย ";" นำหน้า

      ให้มีข้อมูล zone และ reserve zone ที่ต้องการ ดังตัวอย่าง
      zone "mydomain.com" {
         type master;
         allow-query { any; };
         file "my-domain.zone";
      };
      zone "1.0.10.in-addr.arpa" {
        type master;
        file "10-0-1.zone";
      };

      ต่อไปให้สร้างแฟ้ม /var/named/chroot/var/named/my-domain.zone
      มีข้อมูลประมาณดังตัวอย่าง
      $TTL    3D
      @               IN SOA  ns.mydomain.com. (
                                              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

      ต่อไปให้สร้างแฟ้ม /var/named/chroot/var/named/10-0-1.zone
      มีข้อมูลประมาณดังตัวอย่าง
      $TTL    3D
      @               IN SOA  ns.mydomain.com. (
                                              200611142       ; serial (d. adams)
                                              3H              ; refresh
                                              15M             ; retry
                                              1W              ; expiry
                                              1D )            ; minimum
                      NS   ns
                      NS   mysip.domain.com

      205             PTR     myserver1.mydomain.com.
      207             PTR     myserver1.mydomain.com.

      เมื่อสร้างแฟ้มเสร็จแล้ว ต้องเปลี่ยนสิทธิ์แฟ้มนี้ให้เป็นของ named ด้วยคำสั่ง
      chown named.named /var/named/chroot/var/named/my-domain.zone
      chown named.named /var/named/chroot/var/named/10-0-1.zone

      เสร็จแล้วสั่งให้ DNS ทำงานด้วยคำสั่ง
      service named restart

      ทดสอบใช้งานได้เลย
    หมายเลขบันทึก: 107659เขียนเมื่อ 30 มิถุนายน 2007 18:36 น. ()แก้ไขเมื่อ 11 กุมภาพันธ์ 2012 19:15 น. ()สัญญาอนุญาต: จำนวนที่อ่านจำนวนที่อ่าน:


    ความเห็น (0)

    ไม่มีความเห็น

    พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
    ClassStart
    ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
    ทั้งเว็บทั้งแอปใช้งานฟรี
    ClassStart Books
    โครงการหนังสือจากคลาสสตาร์ท