如何在 isc-dhcp-server 中为每个子网声明固定地址?

如何在 isc-dhcp-server 中为每个子网声明固定地址?

在 Ubuntu 上,我使用 isc-dhcp-server 在每个子网中编写了一些主机声明,并且每个网络接口的每个固定地址都已成功租用。该 DHCP 服务器上插入了两个网卡。

但如何纠正这个警告呢?

dhcpd[11328]:警告:主机声明是全局的。它们不限于您声明的范围。

这篇文章关于相同的警告消息答案主机声明超出子网定义。我认为在我涉及两张牌的情况下情况并非如此。

答案1

主机定义始终是全局的。

所以我的路由器上有 3 个网络; “LAN”10.0.0.0/24、“访客”10.100.100.0/24 和“IoT”10.100.200.0/24

dhcpd.conf的配置如下

subnet 10.0.0.0 netmask 255.255.255.0 {
  authoritative;
  option routers      10.0.0.1;
  blah;
}

subnet 10.100.100.0 netmask 255.255.255.0 {
  authoritative;
  option routers      10.100.100.1;
  blah;
}

subnet 10.100.200.0 netmask 255.255.255.0 {
  authoritative;
  option routers      10.100.200.1;
  blah;
}

host machine1 {
  hardware ethernet xx:xx:xx:xx:xx:xx;
  fixed-address 10.0.0.13;
  option host-name "machine1";
}

host machine2 {
  hardware ethernet yy:yy:yy:yy:yy:yy;
  fixed-address 10.100.200.15;
  option host-name "machine2";
}

DHCPd 正确计算出machine1LAN 上和machine2IoT 子网上的位置,并发送与该子网相关的正确配置(网络掩码、默认路由、DNS 服务器等)。

如果您有一台可以连接到多个接口的计算机,并且希望它们获得不同的地址,那么您可以多次列出主机。以我的手机为例:

host s8 {
  hardware ethernet aa:aa:aa:aa:aa:aa;
  fixed-address 10.0.0.34;
  option host-name "s8";
}

host s8-guest {
  hardware ethernet aa:aa:aa:aa:aa:aa;
  fixed-address 10.100.100.9;
  option host-name "s8-guest";
}

现在它将获得不同的地址,具体取决于它所在的网络。

如果该网络没有静态条目,那么它将获得动态地址。如果子网上没有空闲地址,则不会为其分配任何地址。

相关内容