EDNS 客户端子网(ECS):我可以默认接收客户端 IP 吗?

EDNS 客户端子网(ECS):我可以默认接收客户端 IP 吗?

我正在将 Bind 服务版本 9.9.5 设置为仅权威服务器。我想知道我是否会收到默认包含客户端 IPS 的 EDNS 客户端子网 (ECS) 查询。我知道我可以将其配置为响应特定前缀(例如),但我不确定上游 DNS 是否在发送客户端 IP/子网之前先检查我的 NS 是否可以处理。是否有类似在 Bind 服务器上启用 ECS 来接收此类流量的方法?

答案1

正如您引用的页面中所写:

递归解析器使用 EDNS 客户端子网 (ECS) 选项将原始查询所来自的网络地址块通知给权威名称服务器,从而使权威服务器能够针对不同的解析器客户端对同一个解析器给出不同的答案。

换句话说,递归解析器只是将该选项添加到其查询中,即使是在向给定名称服务器发送第一条消息时,因此甚至在知道会发生什么之前也是如此。因此,权威名称服务器无法提前发出信号。

但是,当权威名称服务器回复时(请参阅 RFC7871 第 7.2.1 节),它基本上可以发出信号表明它使用了哪些前缀。然后,对于未来的查询,递归名称服务器可以自行调整并发送不同的前缀,如规范中所述:

SCOPE PREFIX-LENGTH 值比 SOURCE PREFIX-LENGTH 长,表明提供的前缀长度不够具体,无法选择最合适的定制响应。未来在指定网络内查询该名称时应使用较长的 SCOPE PREFIX-LENGTH。影响递归解析器是否使用较长长度的因素包括运营商希望为其用户提供的隐私屏蔽量,以及对缓存的额外资源影响。

相反,较短的 SCOPE PREFIX-LENGTH 表示提供的位数多于必要位数,并且答案适用于更广泛的地址范围。它可以短至 0,以表示答案适用于 FAMILY 中的所有地址。

即使如此,权威名称服务器也无法强制递归名称服务器发送特定的 ECS 前缀甚至根本无法强制发送选项,它仍然只能由递归名称服务器控制。

相关内容