我尝试通过以下选项禁用未绑定的 IPv6 查找:
do-ip6: 否
首选 ip6: 否
真正的prefer-ip6应该只有在do-ip6为yes时才生效。无论如何,我使用 tcpdump 转储流量,但仍然看到向我的转发服务器发出 IPv6 查询。
如果我已禁用它,为什么 unbound 仍尝试执行 IPv6?是否有另一个隐藏选项正在默默地启用它?
答案1
该do-ip6
设置阻止 unbound 通过 IPv6 发送或接收 DNS 查询。它不会阻止 unbound 通过 IPv4 讨论 DNS IPv6 记录。
unbound.conf
从(强调我的)的手册页:
do-ip6:(是或否)
启用或禁用是否应答或发出 ip6 查询。默认为是。如果禁用,则不会在 IPv6 上应答查询,也不会在 IPv6 上将查询发送到互联网名称服务器。使用此选项,您可以禁用用于发送 DNS 流量的 ipv6 传输,它不会影响 DNS 流量的内容,其中可能包含 ip4 和 ip6 地址。
同样,prefer-ip6
控制 unbound 是否更喜欢使用 IPv6 与可通过 IPv4 和 IPv6 访问的 DNS 服务器进行通信。
要阻止反向 IPv6 查询,也许你可以这样做?
local-zone: ip6.arpa. refuse
阻止有关 IPv6 地址的转发查询需要过滤掉有关 AAAA 记录的任何查询。但单个查询可能包含有关多种记录类型的问题,然后软件必须从查询中删除特定于 IPv6 的记录类型,或者拒绝整个查询。
答案2
您可以过滤掉所有包含 AAAA 记录的响应,如下所示:
server:
private-address: ::/0 # filters out all AAAA