F5社区-F5技术交流中心

DNS传递真实客户端网段ECS的应用

2021-06-27 02:27:59

王亚军

BIG-IP DNS v14.0 开始支持 edns-client-subnet (ECS) 来响应客户端请求 (GSLB) 或转发客户端请求。

以下是使用此功能的快速入门。



传统 DNS 请求

首先,简单了解一下传统 DNS 请求时,客户端会向本地DNS 服务器 (LDNS) 发出请求,然后将该请求转发到该域的权威 DNS 服务器。当使用Topology或传统DNS解析规则时,是根据LDNSIP作为源地址来做DNS解析响应。如下传统DNS请求示意图

 

但是,现在互联网场景(国内目前受到ISPLDNS功能限制)或内网域名场景中,越来越多的需求是希望能够从 LDNS 服务器转发更精确的、更真实的客户端源地址信息。实现这样的需求,可以借助EDNS-Client-Subnet (ECS)机制


什么是 EDNS-Client-Subnet (ECS)

对于HTTP协议RFC标准中 HTTP 请求报文中的 X-Forwarded-For 标头就是用于传递请求客户端的真实IP地址信息,而ECS 就是在DNS请求过程中实现了类似功能。


ECS DNS 工作机制

使用 ECS功能,LDNS 服务器或者F5 BIG-IP DNS可以注入有关请求的额外数据,其中包括有关客户端源 IP 地址的信息。

在以下示意图中,就是将客户端子网Client Subnet):192.0.2.0/24 注入到DNS请求扩展报文中,从而在BIG-IP DNS 上实现基于ECS扩展信息来转发响应DNS请求

 


 

在BIG-IP DNS 上实现ECS


F5 BIG-IP DNS 可以通过两种方式使用 ECS:

  • 1. 处理BIG-IP DNSTopology请求时使用 ECS
  • 2. 注入ECS



1. 将 ECS 与 BIG-IP DNS 的Topology结合使用


有两种配置 BIG-IP DNS 以使用 ECS 的方法:

  • <a>. 在Wide IP 层面

  • <b>. 全局性


<a>. 在WideIP 上配置 ECS的配置方法:

在DNS -> GSLB -> Wdie IPs下新建或修改,在高级选项Advanced中,勾选Prefer Client Subnet

 

<b>. 全局配置 ECS方法

在DNS -> Setting -> GSLB -> Load Balancing下,勾选Prefer Client Subnet

DNS 
s.Hing, GSLB : 
static 
State pest COR 
TTL

 

2. 注入 ECS 记录

BIG-IP DNS 还可以将请求代理到其他 DNS 服务器(BIG-IP DNS 或其他供应商)。通过修改 DNS 的Profile配置来注入 ECS 记录。

在DNS -> Delivery ->ProfilesDNS,新建或者修改已新建好的DNS Profile配置,勾选并启用Insert Source Address into Client Subnet Option 选项

 

写在最后:

在DNS的不同场景中,DNS请求的真实源IP的传递相信会越来越广泛使用,完备的DNS解决方案至关重要,希望本文在您需要的时候可以起到帮助!


发布评论 加入社群

发布评论

相关文章

DNS工作机制

王亚军

2021-06-25 01:59:13 1399

DNS工作机制

王亚军

2021-06-25 01:54:38 1447

一图掌握GSLB(BIG-IP DNS)最佳配置实践

王亚军

2019-12-06 02:55:18 3974

Login

手机号
验证码
© 2019 F5 Networks, Inc. 版权所有。京ICP备16013763号-1