header_cclogo.gif header_cctext.gif header_psutext.gif vision.gif
rd1.gif
  Home arrow ทำง่ายใช้เป็น - Made Easy arrow ยกเลิกแล้ว--การติดตั้ง DHCP + PXE server ด้วยโปรแกรม dhcp (13-12-2550)
 
 



ยกเลิกแล้ว--การติดตั้ง DHCP + PXE server ด้วยโปรแกรม dhcp (13-12-2550) พิมพ์ ส่งเมล์
User Rating: / 42
แย่ดีที่สุด 
Contributed by วิภัทร -   
จันทร์, 16 พฤษภาคม 2005
บันทึกนี้ยกเลิกแล้ว โปรดใช้บันทึกใหม่ได้ที่ http://opensource.cc.psu.ac.th/Ubuntu

DHCP server Made-EASY
วิภัทร ศรุติพรหม wipat.s@psu.ac.th

เวบไซต์ที่เกี่ยวข้อง http://rd.cc.psu.ac.th , http://share.psu.ac.th/planet/tank-it และ http://opensource.psu.ac.th
คำถามต่างๆ โปรดใช้กระดานความรู้้ที่
http://rd.cc.psu.ac.th/component/option,com_mamboboard/Itemid,55/


ประวัติการปรับปรุง
ครั้งที่ 2.3    13-12-2550   โดย: วิภัทร

เป็นคำแนะนำติดตั้งโปรแกรม dhcp เพื่อเป็น DHCP server
ต้นแบบทดสอบด้วย linux ubuntu 6.06, fedora core 4 ใช้งานภายในมหาวิทยาลัยสงขลานครินทร์

วิธีติดตั้ง DHCP server ด้วยโปรแกรม dhcp
*** แหล่งข้อมูลต้นฉบับ dhcp คือ http://www.isc.org/sw/dhcp
  1. ติดตั้งโปรแกรม dhcp
    หากเป็น ubuntu ใช้คำสั่ง
    apt-get install dhcp3-server

    หากเป็น fedora ใช้คำสั่ง
    yum install dhcp

  2. หากเป็น fedora แก้ไขให้ทำงานทุกครั้งที่บูทเครื่อง
    chkconfig dhcpd on

  3. ตัวอย่างข้อกำหนดของระบบ dhcp server
    • ติดตั้งบน server หมายเลข IP คือ 10.0.0.5
    • ใช้งานบน network หมายเลข 10.0.0.0 mask 255.255.255.0
    • ปล่อยหมายเลข IP ตั้งแต่ 10.0.0.20 ถึง 10.0.0.50
    • default gateway คือ 10.0.0.1

    การตั้งค่าต่างๆ ให้จัดการที่แฟ้ม config file ชื่อ dhcpd.conf
    หากเป็น ubuntu อยู่ที่ /etc/dhcp3/dhcpd.conf
    หากเป็น fedora อยู่ที่ /etc/dhcpd.conf

    การกำหนดค่าตัวอย่างดังนี้

    • หากเป็น ubuntu หรือ fedora ต้องใส่ค่านี้สำหรับ dhcp เวอร์ชั่น 3.x
      ddns-update-style none;

    • *** ค่า domain-name-servers ตั้งให้เป็น ip ที่ถูกต้อง
      subnet 10.0.0.0 netmask 255.255.255.0 {
        range 10.0.0.20 10.0.0.50;
        option domain-name-servers a.b.c.d;
      ### เปลี่ยนค่า a.b.c.d เป็นเลข ip ของ DNS server
        option routers 10.0.0.1;
      }

  4. สั่งให้ทำงาน
    หากเป็น ubuntu ใช้คำสั่งว่า
    /etc/init.d/dhcp3-server start

    หากเป็น fedora ใช้คำสั่งว่า
    /etc/init.d/dhcpd start

  5. หลังจากแก้ไขแฟ้ม dhcpd.conf แล้วต้องสั่งให้ระบบอ่านค่าที่ปรับใหม่ได้
    หากเป็น ubuntu ใช้คำสั่ง
    /etc/init.d/dhcp3-server force-reload

    หากเป็น fedora ใช้คำสั่ง
    /etc/init.d/dhcpd reload

  6. กรณีที่มีการใช้บน server เดี่ยวกันร่วมกับโปรแกรม shorewall
    ต้องแก้ไขแฟ้ม /etc/shorewall/interfaces
    ที่ให้ interface ของ zone ที่มีเป็น dhcp server ให้เพิ่มคำว่า dhcp เข้าไปด้วย
    ดังตัวอย่าง
    net     eth0            detect          dhcp
    แล้วต้อง reload โปรแกรม shorewall ใหม่ ด้วยคำสั่ง /etc/init.d/shorewall reload

  7. ตัวอย่างการปรับปรุงแก้ไขแฟ้ม dhcpd.conf
    • ปล่อยเลข ip อัตโนมัติ
      subnet 10.0.0.0 netmask 255.255.255.0 {
        range 10.0.0.20 10.0.0.50;
      }

    • ต้องการ fix หมายเลข ip เข้ากับ MAC ของ lan card
      host ip1684-26 {
        hardware ethernet 00:01:03:18:BB:4E;
        fixed-address 192.168.4.26;
      }

    • ต้องการอนุญาติให้เฉพาะ lan card ที่ได้ fix หมายเลข ip เข้าใช้งานเท่านั้น
      deny unknown-clients;

    • การจัดทำแบบให้บางส่วนต้อง fix และบางส่วนเป็น dynamic
      host ncd2 { hardware ethernet 0:c0:c3:88:2d:81; }
      host ncd3 { hardware ethernet 0:c0:c3:00:14:11; }
      subnet 10.0.0.0 netmask 255.255.255.0 {
         option routers 10.0.0.254;
      # Unknown clients get this pool.
         pool {
           option domain-name-servers bogus.example.com;
           max-lease-time 300;
           range 10.0.0.200 10.0.0.253;
           allow unknown-clients;
         }
      # Known clients get this pool.
         pool {
            option domain-name-servers ns1.example.com,ns2.example.com;
            max-lease-time 28800;
            range 10.0.0.5 10.0.0.199;
            deny unknown-clients;
         }
      }

  8. ตัวอย่างใช้เป็น PXE server
    ปัจจุบัน DHCP server สามารถทำตัวเป็น PXE server ได้ด้วย
    ตัวอย่างนี้กำหนดให้ TFTP เป็นเตัวเดียวกับ DHCP server คือ10.0.0.1

    แก้ไขให้แฟ้ม dhcpd.conf มีเพิ่มประมาณว่า

    option option-150 code 150 = text ;
    filename "pxegrub";
    if exists dhcp-parameter-request-list {
      option dhcp-parameter-request-list = concat(option dhcp-parameter-request-list,96);
    }

    subnet 10.0.0.0 netmask 255.255.255.0 {
      option routers 10.0.0.1;
      group {
        next-server 10.0.0.1;
        host ip1000-11 { hardware ethernet 00:11:5B:82:2C:6D; fixed-address 10.0.0.11; option option-150 "(nd)/menu01.lst"; }
        host ip1000-12 { hardware ethernet 00:11:5B:7C:DF:EC; fixed-address 10.0.0.12; option option-150 "(nd)/menu02.lst"; }
      } 
    }
แก้ไขล่าสุดเมื่อ ( อังคาร, 05 สิงหาคม 2008 )
< Prev   Next >
 
 
header_cclogo.gif ศูนย์คอมพิวเตอร์ มหาวิทยาลัยสงขลานครินทร์
อำเภอหาดใหญ่ จังหวัดสงขลา 90110
โทร. 0-7428-2095 โทรสาร. 0-7428-2111
วันและเวลาทำการ : วันจันทร์-ศุกร์ (เว้นวันหยุดราชการ) เวลา 08.00-17.00 น.