Cấu hình DHCP trên Linux
Trang 1DHCP ( Dynamic Host Configuration Protocol ) được sử dụng với muc đích tập trung hoá việc quản lý
và ấn định cấu hình TCP/IP của các máy client Với những đặc điểm thuận lợi giúp cho người quản trị tiết kiệm thời gian trong việc cài đặt và quản trị một hệ thống mạng TCP/IP như sau
- Quản lý việc cấp phát địa chỉ ip cho các máy client khi có yêu cầu
- Cung cấp những thông tin cấu hình mạng như subnet mask, default router, DNS Server
- DHCP có thể làm việc thông qua nhiều TCP/IP router và ấn định IP dựa theo subnet mask gửi tới do
đó bạn không cần phải cấu hình lại máy tính khi di chuyển qua những subnet khác nhau
- Địa chỉ ip chỉ được cấp phát trong một khoảng thời gian nhất định, những địa chỉ ip không tiếp tục sử dụng sẽ bị thu hồi lại
- Hỗ trợ BOOTP client
Để sử dụng DHCP bạn cần phải có một DHCP Server để đáp ứng ( cung cấp địa chỉ ip và thông tin cấu hình mạng ) các yêu cầu từ các máy DHCP client gửi tới và ngược lại trên các máy client cung cần phải
có DHCP client để gửi các request
Có thể tóm tắt quá trình hoạt động DHCP request-resspond như sau:
- Lease request: dhcp client gửi broadcast gói tin dhcp request (địa chỉ nguồn là 0.0.0.0, địa chỉ đích là
255.255.255.255 và địa chỉ MAC của client) , gói tin này được mở bởi DHCP Server
- Ip lease offer: DHCP Server ấn định cho client địa chỉ ip, subnet mask, domain name, địa chỉ name
server, khoảng thời gian mà những thông tin cấu hình này client được phép sử dụng hợp lệ
- Lease selection: client chấp nhận những thông tin cấu hình được cung cấp và nó gửi sẽ gửi một gói tin
broadcast để thông báo với các DHCP Server không cần gửi các thông tin cấu hình khác cho nó nữa
- DHCP Server gửi đến client một gói tin ack và khi đó client đã được cấu hình TCP/IP và hoạt động bình thường
- Lease renew: khi sử dụng những thông tin cấu hình được cung cấp đến một nửa khoảng thời gian
được phép ( default-lease-time ) DHCP client nếu muốn tiếp tục sử dụng sẽ gửi một request mới tới DHCP Server
File cấu hình của DHCP Server là /etc/dhcpd.conf được đọc và phân tích bởi dhcpd File gồm một loạt những khai báo và tham số cấu hình
Cấu hình DHCP :
Cài đặt : #rpm –ivh packagename.rpm
Tạo tập tin cấu hình /etc/dhcpd.conf và chỉnh sửa nội dung tập tin này
ddns-update-style interim;
ignore client-updates;
subnet 192.168.1.0 netmask 255.255.255.0 {
Trang 2range 192.168.1.128 192.168.1.254;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name "your-domain.org";
option domain-name-servers 40.175.42.254, 40.175.42.253; option netbios-name-servers 192.168.1.100;
# option ipforwarding off;
default-lease-time 21600;
max-lease-time 43200;
option time-offset -18000;
# option ntp-servers 192.168.1.1;
# option netbios-name-servers 192.168.1.1;
# option netbios-node-type 2;
host ns2 {
next-server ns2.your-domain.com;
hardware ethernet 00:02:c3:d0:e5:83;
fixed-address 40.175.42.254;
}
host laser-printer-lex1 {
hardware ethernet 08:00:2b:4c:a3:82;
fixed-address 192.168.1.120;
}
}
Trang 3Thông tin cấu hình được áp dụng với subnet 192.168.1.0/255.255.255.0
range: ấn định giới hạn địa chỉ ip cung cấp cho các client Bạn có thể ấn định nhiều giải địa chỉ ip trong
cùng một subnet mask ở đây
option subnet mask: ấn định giá trị subnet mask mặc định được sử dụng bởi DHCP client
option broadcast-address: ấn định giá trị địa chỉ broadcast mặc định được sử dụng bởi DHCP Client option routers: ấn định địa chỉ routers được sử dụng bởi DHCP client
option domain-name-servers: ấn định địa chỉ DNS server cho DHCP Client
option netbios-name-servers: ấn định địa chỉ WINS server
option ipforwarding off: không cho phép các dhcp request được phép forward qua máy DHCP server
( máy dhcp server co nhiều card mạng )
default-lease-time và max-lease-time: ấn định khoảng thời gian (tính theo giây) máy client có thể giữ
địa chỉ ip
host ns2 {
next-server ns2.your-domain.com;
hardware ethernet 00:02:c3:d0:e5:83;
fixed-address 40.175.42.254;
}
ấn định máy có địa chỉ MAC là 00:02:c3:d0:e5:83 sẽ có địa chỉ ip là 40.175.42.254
host laser-printer-lex1 {
hardware ethernet 08:00:2b:4c:a3:82;
fixed-address 192.168.1.120;
}
ấn định cho máy in có địa chỉ MAC 08:00:2b:4c:a3:82 sẽ có địa chỉ ip là 192.168.1.120
Hoạt động cấp phát địa chỉ ip và thông tin cấu hình mạng của dhcp server sẽ được ghi log vào file
/var/lib/dhcp/dhcpd.leases (lease database) để dùng trong những trường hợp service restart hay
system reboot nó sẽ vẫn biết được những thông tin cấu hình mà nó đã cấp phát cho client, đảm bảo hệ thống vẫn làm việc bình thường
Trang 4Khi DHCP Server chạy lần đầu nó sẽ không có file này, bạn có thể đơn giản tạo một file dhcp.leases trống
Những mục log trong file này có dạng:
lease ip-address { statements }
ví dụ:
lease 192.168.1.128 {
starts 2 2004/12/01 20:07:05;
ends 3 2004/12/02 08:07:05;
hardware ethernet 00:00:e8:4a:2c:5c;
uid 01:00:00:e8:4c:5d:31;
client-hostname "Node1";
}
Có nghĩa là máy client có tên host là Note 1, địa chỉ MAC 00:00:e8:4a:2c:5c đã được cấp địa chỉ ip là 192.168.1.128 trong khoảng thời gian 2004/12/01 20:07:05 đến 2004/12/02 08:07:05
Với mục đích giới hạn kích thước file "lease database" sau một khoảng thời gian nó sẽ được đổi tên thành /var/lib/dhcp/dhcpd.leases~ và một file /var/lib/dhcp/dhcpd.leases mới sẽ được tạo
Với những mạng LAN được phân cách bởi router bạn phải config để router cho phép relay những DHCP request
Tương tự như những dịch vụ bạn có thể sử dụng DHCP thông qua script khởi động của nó
/etc/init.d/dhcpd start|stop|status|