具有多个作用域的DHCP服务器向VLAN发出错误的IP

我们正在重组我们的networking,并configuration我们的路由器/ DHCP服务器如下:

# public internet connection auto eth0 iface eth0 inet static address 192.168.10.10 netmask 255.255.0.0 gateway 192.168.0.1 # intranet auto eth1 iface eth1 inet static address 10.0.0.1 netmask 255.128.0.0 # DHCP relay for WLAN auto eth2 iface eth2 inet static address 10.254.0.1 netmask 255.255.0.0 # DHCP relay for VPN auto eth3 iface eth3 inet static address 10.253.0.1 netmask 255.255.0.0 

DHCP服务器设置为在eth1,eth2和eth3上侦听,并configuration了以下范围:

 subnet 10.0.0.0 netmask 255.128.0.0 { range 10.100.0.0 10.100.255.255; option routers 10.0.0.1; } subnet 10.254.0.0 netmask 255.255.0.0 { range 10.254.1.0 10.254.255.255; option routers 10.254.0.1; } subnet 10.253.0.0 netmask 255.255.0.0 { range 10.253.0.0 10.253.255.255; option routers 10.253.0.1; } 

所以 – 无线设备连接到我们的Wi-Fi路由器。 每个Wi-Fi路由器都是静态地址(例如,10.254.0.2,网关设置为10.254.0.1)。 但是,通过Wi-Fi连接的设备正在获取VPN地址(10.253.0.0)。

此外 – 我想要在10.100.xx范围内的桌面电脑也获得VPN地址。

这是在Ubuntu 12.04上。

我在互联网上发现的所有文件都表明这是正确的configuration – 但我认为我一定错过了一些东西。

恐怕上面的问题和Stemen的评论几乎总结了一下,但是我想我会把它解释清楚: VLAN和子网是不一样的 。 在任何新设备获得IP地址之前,无论是networking还是DHCP服务器,都不知道您的计划认为应该结束的子网是什么,所以设备只是进行通用的DHCP广播,并得到DHCP服务器的“默认”范围,似乎是10.253 / 16。

你有两个select:

  1. 您可以在物理上和逻辑上重新configuration您的networking,前提是您拥有可pipe理的交换机基础结构和VLAN。 这将在无线子网上的设备所使用的networking端口与VLAN子网上的设备和桌面子网上的设备所使用的networking端口之间进行逻辑分隔。 DHCP服务器将需要被告知关于VLAN,并且将需要在它们中的每一个上不同的逻辑networking设备; 交换机必须允许来自DHCP服务器的数据包根据它们所在的VLAN进行标记。您需要亲密地了解您的交换机基础设施,并阅读关于VLAN和802.1q标记的信息 (如果您想这样做)。
  2. 您可以使用特定于每个子网的MAC地址列表来configurationDHCP服务器,然后当服务器被告知应该在特定子网上的设备出现时,将为其提供来自适当池的DHCP租用而不是默认的池。

这两者都不是免维护的select,但我发现(1)涉及大部分预先努力,而(2)涉及许多正在进行的努力,因为新设备来自和离开您的networking。

编辑 :HorusKol,我在下面的注释中指出你的观点:但是请注意,VPN范围现在是默认的,所以你仍然可以select(2),只要你可以列出桌面上的所有主机和无线子网。 默认情况下,所有其他设备都可以从VPN池中获取其地址。