การติดตั้งและปรับแต่ง DHCP Server บน Fedora Core 6
DHCP มาจาก Dynamics Host Configuration Protocol เป็นกระบวนการจัดสรรคุณสมบัติต่างๆ เพื่อใช้ในการเชื่อมต่อเครือข่าย ให้กับเครื่องภายในเครือข่ายแบบอัตโนมัติ ซึ่งคุณสมบัติต่างๆ นั้นมีทั้งหมายเลขไอพี (IP address) , เกตเวย์ (Gateway) , DNS เซิร์ฟเวอร์
ขั้นตอนการติดตั้ง DHCP Server
ขั้นตอนที่ 1
ใส่แผ่น CD/DVD ของ Fedora Core 6 Linux แล้วทำการเมาท์ แล้วไปยังพาธที่เก็บไฟล์สำหรับติดตั้งซอฟต์แวร์ ดังนี้
|
[root@netserv ~]# mount /dev/cdrom /mnt/cdrom mount: block device /dev/cdrom is write-protected, mounting read-only [root@netserv ~]# cd /mnt/cdrom/Fedora/RPMS/ [root@netserv RPMS]# |
ขั้นตอนที่ 2
ทำการติดตั้งโดยใช้คำสั่ง rpm ซึ่งซอฟต์แวร์สำหรับติดตั้ง DHCP เซิร์ฟเวอร์ในแผ่น Fedora Core 6 มีชื่อไฟล์เป็น dhcp-3.0.4-21.fc6.i386.rpm มีวิธีการดังนี้
|
[root@netserv RPMS]# rpm -ihv dhcp-3.0.4-21.fc6.i386.rpm warning: dhcp-3.0.4-21.fc6.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2 Preparing... ######################## [100%] 1:dhcp ########################### [100%] [root@netserv RPMS]# |
ขั้นตอนการปรับแต่ง DHCP Server
โดยปกติแล้วคอนฟิกกูเรชั่นไฟล์หลักๆ ที่ใช้ในการปรับแต่ง DHCP Server จะอยู่ที่ /etc/dhcpd.conf เราสามารถคัดลอกไฟล์ตัวอย่างของ dhcpd.conf ไปไว้ที่ /etc ได้ ซึ่งไฟล์ตัวอย่างนี้จะอยู่ที่ /usr/share/doc/dhcp-<version>/dhcpd.conf.sample เราสามารถคัดลอกได้ ดังนี้
|
# cp /usr/share/doc/dhcp-3.0.4/dhcpd.conf.sample /etc/dhcpd.conf cp: overwrite `/etc/dhcpd.conf'? Y |
ก่อนการปรับแต่ง DHCP Server ให้ทำการตรวจสอบก่อนว่า เราจะแจกจ่ายหมายเลขไอพีสำหรับเครือข่ายกลุ่มไหน มีซับเน็ตเป็นอย่างไร เครื่องไหนเป็นโดเมนเนมเซิร์ฟเวอร์ (DNS Server)
ซึ่งในการปรับแต่ง สามารถทำได้ดังนี้
ขั้นตอนที่ 1
ทำการแก้ไขค่าของ subnet ให้เป็นเครือข่ายวงที่เราจะแจกจ่ายไป ซึ่งมีค่า subnet เป็น 192.168.2.0 และใช้ netmask เป็น 255.255.255.0 ดังนี้
|
จาก subnet 192.168.0.0 netmask 255.255.255.0 { เป็น subnet 192.168.2.0 netmask 255.255.255.0 { |
ขั้นตอนที่ 2
ทำการตั้งค่าของ default gateway ที่จะแจกไปให้กับเครื่องในเครือข่าย ซึ่งในที่นี้จะใช้คำว่า routersโดยแก้ไขให้เป็นหมายเลขไอพีของการ์ดแลนใบที่เป็นเครือข่ายภายใน ในที่นี้คือ eth1 ซึ่งมีหมายเลขไอพีเป็น 192.168.2.1 โดยแก้ไข ดังนี้
|
จาก option routers 192.168.0.1; เป็น option routers 192.168.2.1; |
ขั้นตอนที่ 3
ค่าของ subnet-mask ที่จะแจกจ่ายไปให้กับเครื่องลูกข่ายใช้งานในที่นี้ใช้ค่ามาตรฐาน ดังนี้
|
option subnet-mask 255.255.255.0; |
ขั้นตอนที่ 4
ปิดการแจกจ่าย nis-domain ผ่านทาง DHCP Server เนื่องจากว่า NIS เป็นเซอร์วิสสำหรับการแชร์ public key ในระบบเครือข่ายที่ใช้ลินุกซ์ด้วยกัน ดังนี้
|
จาก option nis-domain "domain.org"; เป็น #option nis-domain "domain.org"; |
ขั้นตอนที่ 5
ทำการตั้งค่าของโดเมนที่จะแจกจ่ายให้กับเครื่องลูกข่าย ในที่นี้ตั้งเป็น linux-server-1.com ดังนี้
|
จาก option domain-name "domain.org"; เป็น option domain-name "linux-server-1.com"; |
ขั้นตอนที่ 6
ทำการตั้งค่าของโดเมนเนมเซิร์ฟเวอร์ (Domain Name Server) ในที่นี้ตั้งเป็นหมายเลขไอพีของเครื่องเซิร์ฟเวอร์ที่ตั้งขึ้นมา หรือตั้งเป็นไอพีของโดเมนเนมเซิร์ฟเวอร์อื่นก็ได้เช่นกัน ซึ่งสามารถมีได้หลายตัว คั่นด้วยเครื่องหมายคอมม่า (,) ดังนี้
|
จาก option domain-name-servers 192.168.1.1; เป็น option domain-name-servers 192.168.2.1 , 10.101.150.23; |
ขั้นตอนที่ 7
ทำการปรับแต่งช่วงของหมายเลขไอพี ที่จะแจกจ่ายไปยังเครื่องในเครือข่ายภายใน ตัวอย่างเช่น ต้องการแจกจ่ายไปยังเครือข่าย 192.168.2.0 โดยเริ่มต้นตั้งแต่หมายเลข 192.168.2.11 ไปจนถึง 192.168.2.250 ซึ่งหมายเลขไอพีที่เหลือ ที่ไม่ได้แจกจ่ายไป เนื่องจากสำรองไว้สำหรับเครื่องเซิร์ฟเวอร์อื่นๆ ซึ่งสามารถทำได้ดังนี้
|
จาก range dynamic-bootp 192.168.0.128 192.168.0.254; เป็น range 192.168.2.11 192.168.2.250; |
การปรับแต่งในไฟล์ /etc/dhcpd.conf เสร็จเรียบร้อย ค่าอื่นๆ ที่ไม่ได้กล่าวถึงให้ใช้ค่ามาตรฐานที่ระบบตั้งมาให้ ซึ่งค่าที่สำคัญมีดังนี้
-
default-lease-time เป็นค่าที่กำหนดระยะเวลาปกติที่เครื่องลูกข่ายจะใช้หมายเลขไอพีเดิมได้ ตราบใดที่ยังร้องขอภายในช่วงเวลานี้ หน่วยเป็นวินาที
-
max-lease-time เป็นค่าที่กำหนดระยะเวลาสูงสดที่เครื่องลูกข่ายจะใช้หมายเลขไอพีเดิมได้ ตราบใดที่ยังร้องขอภายในช่วงเวลานี้ หน่วยเป็นวินาที
ตรวจสอบการทำงาน
ขั้นตอนที่ 1
หลังจากทำการปรับแต่งข้อมูลในไฟล์ /etc/dhcpd.conf เสร็จเรียบร้อยแล้ว ให้ทำการเปิดการใช้งานเซอร์วิส dhcpd , ปิดการใช้งาน และรีสตาร์ทเซอร์วิส ดังนี้
|
[root@netserv ~]# /etc/init.d/dhcpd start Starting dhcpd: [ OK ] [root@netserv ~]# /etc/init.d/dhcpd stop Shutting down dhcpd: [ OK ] [root@netserv ~]# /etc/init.d/dhcpd restart Shutting down dhcpd: [FAILED] Starting dhcpd: [ OK ] |
ขั้นตอนที่ 2
จากนั้นให้ตรวจสอบที่เครื่องลูกข่าย ว่าได้รับหมายเลขไอพีหรือไม่
ขั้นตอนที่ 3
ที่ฝั่งเซิร์ฟเวอร์ สามารถตรวจสอบการใช้หมายเลขไอพีได้จากไฟล์ /var/lib/dhcpd/dhcpd.leases
โดยใช้คำสั่ง cat , less , more อ่านข้อมูลในไฟล์ ดังนี้
|
[root@netserv ~]# cat /var/lib/dhcpd/dhcpd.leases ... lease 192.168.2.249 { starts 6 2007/05/19 16:25:29; ends 6 2007/05/19 22:25:29; binding state active; next binding state free; hardware ethernet 00:16:d3:96:69:6f; uid "\001\000\026\323\226io"; client-hostname "CP"; } ... |
ขั้นตอนที่ 4
เมื่อระบบทำงานได้ถูกต้องแล้ว ให้เรากำหนดให้เซอร์วิส dhcpd ทำงานทุกครั้งเมื่อเปิดเครื่องเข้าสู่ระบบ
|
[root@netserv ~]# chkconfig dhcpd on |


