在我的网络中,我希望我的Linux DHCP服务器根据计算机插入的位置分配IP地址。我的情况与询问以下SO问题的人几乎相同:Assigning IP Addresses to a Physical Location,但我没有这样的情况智能思科交换机。但是,我的Netgear交换机有些智能,可以向SNMP请求它作为MAC地址的端口。
这样,我编写了一个Shell脚本,当给定MAC地址时,该脚本会回答IP池。现在,我需要一个DHCP服务器,该服务器在DHCP请求中询问该脚本,并从返回的IP池中分配一个租约。我的第一个想法是自定义ISC dhcpd源,但我没有找到MAC地址生成IP池的位置。
谁能帮助我通过ISC dhcpd源找到自己的方式?还是有人知道另一个易于以这种方式自定义的DHCP服务器?还是可以轻松实现DHCP服务器(最好使用C,C ++,Haskell或Python)的库?
感谢您的时间和帮助!
最佳答案
我找到了DHCP snooper。它似乎恰好提供了我需要的钩子。我可以使用脚本结果操纵DHCP请求以设置opt 82,然后通过再次解析opt 82对ISC DHCP进行其余操作。我还没有尝试过,但我很乐观。
关于linux - 支持基于端口的IP池的DHCP服务器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19847217/