Dante 的接口名称可能同时展开为 IPv4 和 IPv6 地址。但这并不会让现有的仅限 IPv4 的访问规则匹配 IPv6 客户端。

这是一种常见的半成品双栈改造:SOCKS 监听器在 IPv6 地址上变得可达,但规则仍然只描述 IPv4 的源和目的范围。

分别检查地址和规则

Dante 可以为监听地址使用重复的 internal 条目或合适的接口名称。实际地址取决于服务配置它们时接口上可用的地址。

然后检查客户端规则和 SOCKS 规则。像 0.0.0.0/0 这样的地址表达式是 IPv4,而不是适用于所有地址族的通用写法。Dante 记录了与地址族无关的形式,但当只应允许某个特定客户端子网时,不要使用宽泛的形式。

在修改地址族的同时保留身份验证和目的地限制。添加 IPv6 不应意外移除对 IPv4 用户有效的限制。

启动时机也可能有影响。如果地址是在服务启动后才分配的,请检查 Dante 实际绑定到了什么,而不是假定接口名称总是包含后来才出现的地址。

最后,IPv6 客户端连接和 IPv6 网站连接是两项独立的要求。目标客户端可能通过一种地址族连接,而代理通过另一种地址族访问目的地。要诊断失败连接的地址族,而不只是看机器是否被称为双栈。

相关文章