Networking
DHCPCD 不委託分配的 IPv6 前綴
我一直在嘗試讓 IPv6 PD
dhcpcd
在我的家庭伺服器上工作,ppp
並radvd
允許 SLAAC 工作並最終替換我的 ISP 提供的路由器。不幸的是,通過 RAdhcpcd
在介面上接收的前綴ppp0
僅被配置為該介面上的地址,而不是也被委託給正在執行的lan
介面radvd
。我錯過了什麼?
/etc/dhcpcd.conf:
# Ignore changes on docker interfaces denyinterfaces veth* duid # Persist interface configuration when dhcpcd exits. persistent option domain_name_servers, domain_name, domain_search, host_name option interface_mtu require dhcp_server_identifier slaac private noipv6rs waitip 6 ipv6only #Prefix Delegation interface ppp0 option rapid_commit ipv6rs iaid 1 ia_pd 1/::/64 lan/0/64 #don't use ISP DNS servers nohook resolv.conf
/etc/radvd.conf:
interface lan { AdvSendAdvert on; prefix ::/64 { AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; };
lan
和(我的wan.7
ISP 需要 VLAN 7,所以這是 ppp 綁定的)介面由systemd-networkd
(雖然 DHCP 不由它處理)管理,但ppp0
由ppp
.
舊執行緒,但這是Google在 2022 年推出的使用 isc-dhcp-client 配置 IPv6 PD 的少數熱門產品之一,因此它的價值:
在早期版本的 isc-dhcp-client 中存在一個已知限制,該限制會阻止此配置在 PPPoE 介面(如 ppp0)上成功。即使完全按照官方文件中輸入的所有參數,配置最終也會由於 ppp0 是“不受支持的介面類型”而失敗(請參閱 syslog)。該問題已在上游得到解決,但截至 2022 年 4 月,該修復尚未滲透到 Debian 11 等更“保守”的發行版。直接從上游 git 建構軟體包可能會解決問題,但即使是官方 Debian Wiki 也推薦如果您需要通過 PPPoE 進行前綴協商,請使用 Wide-dhcp6-client 等替代工具來解決此問題。