2005/Jun/03

การติดตั้งและคอนฟิก dhpd บน RedHat

ในที่นี้ผมขอกล่าวการติดตั้งและคอนฟิกแบบ RPM นะครับ

การติดตั้ง dhcp
ถ้าได้ติดตั้ง
dpcp ตั้งแต่ตอนลงลีนุกซ์ตอนแรกแล้วก็ไม่ต้องติดตั้งอีกนะครับ การตรวจสอบว่าเครื่องลง dhcp ไว้แล้วยังทำได้ 2 วิธีดังนี้ครับ

1.ดูที่
Service Configurations (System Settings-->Server Settings-->Serviecs) ว่ามี Service ชื่อ dhcpd แล้วหรือยัง
2.ใช้คอมมานต์ไลน์สอบถามดูดังนี้ครับ
:

#rpm -q dhcp
dhcp is not installed

ถ้าคำตอบออกมาเป็น
package dhcp is not installed ก็แสดงว่ายังไม่ได้ติดตั้ง ถ้าติดตั้งแล้วอาจจะขึ้นมาว่า dhcp-3.0pl1-23 (ตัวเลขอาจจะต่างกันบ้างนะครับ)

การติดตั้ง
dhcp แบบ rpm มีสองแบบคือ แบบที่ติดตั้งจาก GUI (X Window) กับแบบใช้คอมมานด์ไลน์

การติตั้งแบบใช้
GUI (X Window)
(ในที่นี้ขอเสนอแบบใช้เมนู Add/Remove Applications)
1.ไปที่เมนู System Settings-->Add/Remove Applications
2.ที่หัวข้อ Servers-->Network Servers ให้คลิ๊กปุ่ม Details ด้านขวามือ แล้วเลือกรายการ dhcp
3.ให้เลือก Update และใส่แผ่นดิสถ์ตามที่บอกมาคือแผ่นที่ 2

การติดตั้งโดยใช้คอมมานต์ไลน์
1.ใสแผ่นดิสก์แผ่นที่ 2
2.
mount ซีดีรอมด้วยคำสั่ง
#mount /mnt/cdrom
3.เข้าไปยัง directory ของ RPM ด้วยคำสั่ง
#cd /mnt/cdrom/RedHat/RPMS
4.ติดตั้งด้วยคำสั่ง
#rpm -ivh dhcp-3 <กด Tab> (ซึ่ง ปุ่ม Tap จะเติมเต็มให้เป็น dhcp-3.0pl1-23.i386.rpm)
5.คงจะติดตั้งไม่มีปัญหานะครับ

การคอนฟิก dhcp
ไฟล์คอนฟิกของ dhcp คือ /etc/dhtpd.conf ซึ่งไฟล์นี้ตอนนี้ยังไม่มีนะครับเราต้องสร้างขึ้นมาใหม่แล้วใสค่าพารามิเตอร์ต่าง ๆ ลงไป ฉะนั้นตอนนี้ก็สร้างไฟล์ชื่อ /etc/dhcpd.conf โดยใช้ Text Editor ใด ๆ นะครับ ซึ่งข้อมูลในไฟล์ผมขอเสนอเป็นดัวอย่างแบบง่าย ๆ ดังต่อไปนี้


ddns-update-style ad-hoc;
server-identifier 192.168.1.1;
option domain-name "itwizard.info";
option domain-name-servers 192.168.1.1;

subnet 192.168.1.0 netmask 255.255.255.0 {
max-lease-time 120000;
default-lease-time 48000;
option domain-name "itwizard.info";
server-name "dhcp server";
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.1.1,192.168.1.2;
option routers 192.168.1.1;
range 192.168.1.2 192.168.1.254;

}

หรืออาจจะเป็นดังนี้ :

ddns-update-style ad-hoc;
subnet 192.168.1.0 netmask 255.255.255.0 {
max-lease-time 120000;
default-lease-time 48000;
option domain-name "itwizard.info";
server-name "dhcp server";
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.1.1,192.168.1.2;
option routers 192.168.1.1;
range 192.168.1.2 192.168.1.254;
}

รายละเอียดจะหามาให้เพิ่มเติมครับ

การ
Start dhcp
อาจจะ start ได้จาก Service Configurations หรือจากคอนมานต์ไลต์ดังนี้ :
#service dhcpd start หรือ
#/etc/rc.d/init.d/dhcpd start

ดูผลว่าได้จ่าย IP ไปให้เครื่องไหนบ้าง
ไฟล์ที่ใช้เก็บข้อมูลว่าเครื่อง
Client ได้ใช้ IP Address ไหนไปบ้างดูได้ที่ไฟล์ /var/lib/dhcp/dhcpd.leases ซึ่งข้อมูลในไฟล์อาจจะเป็นดังนี้ :

lease 192.168.1.74 {
starts 5 2003/10/10 08:23:11;
ends 5 2003/10/10 21:43:11;
binding state active;
next binding state free;
hardware ethernet 00:00:21:cc:55:99;
uid "\001\000\000!\314U\231";
client-hostname "lobby";
..........................................................................
..........................................................................

lease 192.168.1.65 {
starts 5 2003/10/10 09:19:23;
ends 5 2003/10/10 22:39:23;
binding state active;
next binding state free;
hardware ethernet 00:02:44:40:9f:95;
uid "\001\000\002D@\237\225";
client-hostname "aree";
}

การตรวจสอบสถานะการทำงานของ
dhcp
การตรวจสอบสถานะการทำงานของ dhcp ว่ามีการเปลี่ยนแปลงอย่างไรบ้าง สามารถดูผลได้จากไฟล์ /var/log/messages ซึ่งสามารถใช้คำสั่งดูผลแบบที่เห็นผลการเปลี่ยนแปลงได้ตลอดเวลา ด้วยคำสั่ง :

#tail -f /var/log/messages

ซึ่งข้อความในไฟล์นี้ที่เกี่ยวกับ dhcp ก็เช่น :

DHCPACK
DHCPREQUEST
DHCPDISCOVERY
DHCPOFFER
DHCPNAK

ดังตัวอย่าง (ตัดมาส่วนหนึ่ง) ที่ใช้งานจริงต่อไปนี้ :

<<<<<<<<.............>>>>>>>>>>>>


Oct 13 08:09:07 itwizard dhcpd: DHCPACK on 192.168.1.64 to 00:20:78:03:99:3e (sanitate) via eth1
Oct 13 08:10:19 itwizard dhcpd: DHCPDISCOVER from 00:50:ba:5f:b5:6b (education) via eth1
Oct 13 08:10:20 itwizard dhcpd: DHCPREQUEST for 192.168.1.70 (192.168.1.1) from 00:50:ba:5f:b5:6b (education) via eth1
Oct 13 08:10:20 itwizard dhcpd: DHCPACK on 192.168.1.70 to 00:50:ba:5f:b5:6b (education) via eth1
Oct 13 08:11:36 itwizard login(pam_unix)[13934]: session opened for user ksornby (uid=0)
Oct 13 08:11:36 itwizard -- ksorn[13934]: LOGIN ON pts/0 BY ksorn FROM 202.129.16.28
Oct 13 08:11:43 itwizard su(pam_unix)[13966]: session opened for user root byksorn(uid=501)
Oct 13 08:12:03 itwizard dhcpd: DHCPDISCOVER from 00:20:78:0d:55:af (yukyik) via eth1
Oct 13 08:12:04 itwizard dhcpd: DHCPOFFER on 192.168.1.67 to 00:20:78:0d:55:af(yukyik) via eth1

<<<<<<<<.............>>>>>>>>>>>>


edit @ 2005/06/03 16:20:20

Comment

Comment:

Tweet