通過DHCP為Linux客戶端分配靜態IP,通常需要使用DHCP服務器的保留功能。以下是具體步驟:
編輯DHCP配置文件:
打開DHCP服務器的配置文件,通常是 /etc/dhcp/dhcpd.conf
。
sudo nano /etc/dhcp/dhcpd.conf
添加保留記錄: 在配置文件中添加一個保留記錄,指定客戶端的MAC地址和希望分配的靜態IP地址。
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 8.8.8.8, 8.8.4.4;
host client1 {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.101;
}
}
在這個例子中:
subnet
指定了子網。range
指定了DHCP分配的IP地址范圍。option routers
指定了默認網關。option subnet-mask
指定了子網掩碼。option domain-name-servers
指定了DNS服務器。host client1
是一個保留記錄,hardware ethernet
是客戶端的MAC地址,fixed-address
是希望分配的靜態IP地址。重啟DHCP服務器: 保存并關閉配置文件后,重啟DHCP服務器以應用更改。
sudo systemctl restart isc-dhcp-server
編輯dnsmasq配置文件:
打開dnsmasq的配置文件,通常是 /etc/dnsmasq.conf
。
sudo nano /etc/dnsmasq.conf
添加保留記錄: 在配置文件中添加一個保留記錄,指定客戶端的MAC地址和希望分配的靜態IP地址。
interface=eth0
dhcp-range=192.168.1.10,192.168.1.100,255.255.255.0,12h
dhcp-host=00:11:22:33:44:55,192.168.1.101
在這個例子中:
interface
指定了網絡接口。dhcp-range
指定了DHCP分配的IP地址范圍。dhcp-host
是一個保留記錄,00:11:22:33:44:55
是客戶端的MAC地址,192.168.1.101
是希望分配的靜態IP地址。重啟dnsmasq服務: 保存并關閉配置文件后,重啟dnsmasq服務以應用更改。
sudo systemctl restart dnsmasq
確保Linux客戶端的DHCP客戶端配置正確,通常不需要額外配置,因為DHCP客戶端會自動請求IP地址。如果需要手動配置IP地址,可以編輯網絡接口配置文件。
編輯網絡接口配置文件:
打開網絡接口配置文件,通常是 /etc/NetworkManager/system-connections/your-interface-name.nmconnection
。
sudo nano /etc/NetworkManager/system-connections/your-interface-name.nmconnection
設置靜態IP地址:
在 [ipv4]
部分添加以下內容:
[ipv4]
method=manual
address1=192.168.1.101/24,192.168.1.1
dns=8.8.8.8;8.8.4.4;
在這個例子中:
method=manual
表示手動配置IP地址。address1=192.168.1.101/24,192.168.1.1
指定了靜態IP地址和網關。dns=8.8.8.8;8.8.4.4;
指定了DNS服務器。重啟NetworkManager服務: 保存并關閉配置文件后,重啟NetworkManager服務以應用更改。
sudo systemctl restart NetworkManager
通過以上步驟,你可以通過DHCP為Linux客戶端分配靜態IP地址。