我在networking上使用ISC dhcp服务器版本4.1进行DHCPv6前缀委托。 当服务器为客户端分配前缀时,服务器不会为请求前缀的客户端创build该前缀的路由。 这是一个pfsense的function请求 ,描述了我正在努力完成的任务。 缺less自定义和重buildisc-dhcp(这是我正在考虑的选项),我一直无法确定自动创build这些路由的方法。
我也考虑写一个脚本(也许是一个cron作业)来parsing租约文件并创build路由。 该文件不包含足够的信息来创build路由; 它缺less前缀分配给的链路本地地址或mac地址。 这是租赁文件的摘录。 IA-PD的前3个字节和后3个字节看起来是来自请求者的八进制编码的MAC地址的最后三个字节。
ia-pd "\236\250\366'\000\001\000\001\031[D\275\010\000'\366\250\236" { cltt 1 2013/06/24 18:32:37; iaprefix 4001:1234:5678:dff0::/60 { binding state active; preferred-life 7200; max-life 604800; ends 1 2013/07/01 18:32:37; } }
有一个可接受的方式来创build来自前缀委托请求的路线吗? 或者,还有另一种方式来获得租约的链接本地地址?
其他参考:
事实certificate,答案是“API是否提供了足够的信息来工作?” 是ISC DHCP 4.3.1,“不,它不”。 不过,我刚刚花了大量的时间把补丁集放在一起,以扩展服务器以提供(只)足够的信息来添加和删除路由。 我的更改可在https://github.com/mpalmer/isc-dhcp的client-address-data-expression分支中find。 在contrib中有一个脚本来演示如何使用它。
你提到你使用dhcpd作为前缀委托,所以这显然是运行在某种types的ix盒子上的,通常这不是路由器。 通常的设置是让客户端运行OSPFv3或其他路由协议。 它将接收前缀委派,为其连接的接口分配适当的链路前缀,然后将这些路由通告给networking中的其他路由器。 如果由于某种原因,你正在Linux / BSD机器上运行路由,而不想或者不能移动它,那么我build议运行Quagga 1 ,把合适的路由插入到服务器的路由表中。