我们在远程子网上build立一个带有DCHP Helper的两分支MPLS。 DHCP服务正在CentOS盒子上运行。
所以我有两个子网:
有两个问题:
现在,我如何在我的configuration文件中指定两个networking? 这是我提出的,这是行不通的:
shared-network CompleteNetwork { subnet 192.168.2.0 netmask 255.255.254.0 { option subnet-mask 255.255.254.0; option broadcast-address 192.168.3.255; option routers 192.168.2.1; #reserved pool for Guests (freely distributed) pool { range 192.168.3.101 192.168.3.150; } # ----A Laptop Computer for testing sake host TestSubject { hardware ethernet AA:BB:00:11:22:33; fixed-address 192.168.2.205; } #... } subnet 192.168.0.0 netmask 255.255.254.0 { option subnet-mask 255.255.254.0; option broadcast-address 192.168.3.255; option routers 192.168.1.1; #reserved pool for Guests <------ ONLY RANGE DISTRIBUTED FREELY pool { range 192.168.0.101 192.168.0.150; } # ----A Laptop Computer for testing sake host TestSubject { hardware ethernet AA:BB:00:11:22:33; fixed-address 192.168.1.205; } #... } }
[编辑]
所以我现在明白,要在两个networking上有相同的设备,我必须指定一个不同的主机名。 我现在也明白,我不需要shared-network
一部分。
另外,我是否有权使用这样的networking在这两个子网广播?
首先,将所有内容都包含在“共享networking”中是没有必要的。 从man dhcpd.conf:
共享networking语句用于通知DHCP服务器某些IP子网实际上共享相同的物理networking。 共享networking中的任何子网都应在共享networking语句中声明。 …如果共享networking中的任何子网具有可用于dynamic分配的地址,则将这些地址收集到该共享networking的公共池中,并根据需要分配给客户端。 无法区分客户端应启动的共享networking的哪个子网。
这不是你的设置情况 – 两个networking在物理和逻辑上是分开的。
其次,你得到关于两个TestSubjects的错误,因为dhcpd不允许你有两个同名的主机。 更改其中之一的名称,即使MAC地址是相同的,我敢肯定,错误将消失,您的主机预订将按预期工作。
主机声明中的名称不必与客户端认为它的主机名应该匹配 – 在这种情况下,它更多是一个任意的标识符。 服务器根据接收到请求的子网和硬件地址将客户端与主机声明进行匹配。
最后,第二个子网的广播地址应该是192.168.1.255(对不起,我错过了这个!)你真的在这里设置了两个独立的三层networking(假设这是一个三层MPLS VPN)。
在ISC dhcpd的手册页中有很多很好的参考信息 – 我强烈build议通过man dhcpd和man dhcpd.conf来阅读。
关于以这种方式build立您的networking的智慧 – 我同意这可能不是一个理想的configuration,特别是如果您的两个站点之间的唯一链接是单个MPLS VPN。 我为一个为我们的客户提供MPLS服务的小型电信公司工作。 我知道我们有一些客户在主要位置运行一台DHCP服务器。 我知道这一点,因为当他们的广域网连接断开时,他们惊慌地打电话给我们的NOC,要求我们在我们的CPE路由器上启用DHCP服务器。 如果在远程办公室有一些设备可以提供所需的DHCP服务,那么如果您在本地启用DHCP,则您的networking将更具弹性。 如果您必须通过WAN链接运行DHCP,我强烈build议至less将租期设置为较高的值。 通过互联网添加备份链接(如假设每个站点具有独立的互联网连接),也可以帮助确保DHCP服务的可用性。