在我的网络中,我希望我的Linux DHCP服务器根据计算机插入的位置分配IP地址。我和提出这个问题的人的情况几乎相同: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?
感谢您的时间和帮助!
答案 0 :(得分:0)
我找到了DHCP snooper。它似乎提供了我需要的钩子。我可以操作DHCP请求以使用我的脚本的结果设置opt 82,并通过再次解析opt 82来完成剩余的ISC DHCP。我还没有尝试,但我很乐观。