我有一台 Ubuntu 22.04,上面有 Oracle VM VirtualBox 7.0.4。我在 VirtualBox 上创建了几个虚拟机(所有 Linux 虚拟机)。我需要 DHCP 为特定虚拟机分配相同的 IP 地址。我安装了软件包isc-dhcp-server
并进行了更改,/etc/dhcp/dhcpd.conf
但它每次都会分配另一个 IP 地址(在同一子网中)。
/etc/dhcp/dhcpd.conf
我对文件 做了这些更改 。vmr120
是在 VirtualBox 上运行的 Linux VM 的名称:
host vmr120 {
hardware ethernet 08:00:27:be:df:f7;
fixed-address 192.168.1.22;
}
然后我重新启动了 DHCP 服务器:
sudo systemctl restart isc-dhcp-server.service
但当我启动虚拟机时 vmr120
,我看到 IP 地址又 192.168.1.7
不确定我还需要做哪些其他更改,或者我在指定条目时犯了什么错误dhcpd.conf
。
答案1
如果您有为常规 DHCP 分配保留的地址块的池声明,则基于 MAC 的声明需要首先出现在 中/etc/dhcp/dhcpd.conf
。否则,如果基于 MAC 的客户端已经拥有来自过去池的条目(无论是否过期),它将再次获得该旧 IP 地址。
来自我的文件的示例/etc/dhcp/dhcpd.conf
:
...
host serv-bb {
hardware ethernet 52:54:00:27:1b:2e;
fixed-address 192.168.111.215;
}
host serv-xx {
hardware ethernet 52:54:00:60:ea:0e;
fixed-address 192.168.111.216;
}
host serv-ff {
hardware ethernet 52:54:00:27:1b:4e;
fixed-address 192.168.111.217;
}
# The Basic DHCP allocated addresses
subnet 192.168.111.0 netmask 255.255.255.0 {
range 192.168.111.3 192.168.111.50;
}