鉴于以下配置,我如何撤消routers
内部选项group
,以便某些机器不会被告知外部的默认网关是什么group
?
group {
# A bunch of options go here which should apply to all clients.
option domain-name-servers ...
option routers 192.168.0.1;
# This host should be told about the default gateway. This is just an example,
# there are many more.
host example1 { }
group {
# This group should have no default gateway supplied by the DHCP server,
# but otherwise inherit all the options from the parent group.
option routers 0.0.0.0;
host example2 { }
}
# There are many other groups that I have omitted for simplicity.
group { }
}
就我而言,我使用的是从中国购买的一些 IP 摄像机,它们会打电话回家(实际上是位于美国的服务器),但仍然无法在设备本身上禁用此功能。我已经在防火墙处阻止了流量,但我希望它甚至不会走那么远,通过告诉摄像头没有可用的默认网关,因此它不知道将发往我的网络外部的数据包发送到哪里。
当我使用上述配置时,0.0.0.0
ISC DHCP 服务器会忽略该选项,并且它仍然给出从父组继承的网关。
有没有办法完全覆盖routers
父级的选项group { }
?
答案1
使用“option dhcp-parameter-request-list”限制 DHCP 服务器可以返回给客户端的参数。请参阅手册页DHCP 选项 (5)。在最里面的组中添加如下内容:
option dhcp-parameter-request-list 1,2,6,12,15,42,51,53,54,61,119;
请注意,路由器选项的代码编号为 3,因此我们将该选项排除在允许列表之外。看RFC-2132查看 DHCP 选项及其代码的列表。
答案2
好吧,我想出了一个不太理想的解决方法,即将网关设置为本地主机:
option routers 127.0.0.1;
这并不理想,因为主机认为它的互联网连接已断开,而不是根本没有连接,但总比没有好!