应用场景
大多数场景下,用户业务VPC NAT出口一般默认使用BGP线路。由于BGP协议特点,不管域名解析返回的地址是否是本网内的地址,终端也会选择最佳路由请求目标服务IP。
但是如果用户VPC NAT网关绑定单线IP,VPC内终端在业务访问时,可通过DNS智能解析方式返回地址。以实现终端就近访问业务IP,提升访问速度。
方案原理图
223.5.5.5
/223.6.6.6
是阿里云公共DNS的服务地址,阿里云公共DNS支持ECS (Edns-Client-Subnet) 协议,可以将客户端子网信息传递给权威DNS服务器。如果权威DNS服务器同样支持ECS协议,则可以基于客户端的子网信息提供更优化的解析结果,以提升用户访问速度;若您业务域名解析请求量比较高,建议您在阿里云公共DNS产品控制台将网关出口IP地址绑定,防止请求量太高被限速。具体操作请参考绑定网络出口解析请求源IP。
实现效果
业务VPC1内ECS发起
www.cloud-example.com
的域名查询请求;域名查询请求命中转发规则,请求流量转发至出站VPC终端节点;
域名查询请求在出站VPC经由NAT网关电信IP转发至阿里云公共DNS进行递归查询;
基于阿里云公共DNS ECS协议,NAT网关电信IP子网信息会被携带至
cloud-example.com
的权威DNS侧,权威DNS根据智能解析规则,返回电信IP地址2.2.XX.XX
;业务VPC1内的ECS通过NAT网关电信IP地址对目标地址
2.2.XX.XX
发起业务请求,网内访问,时延更低。
前提条件
您已经创建了VPC和交换机,具体操作请参考搭建IPv4专有网络;
您已经创建了弹性公网IP实例,具体操作请参考申请EIP;
您已经创建了公网NAT网关,具体操作请参考创建公网NAT网关;
您已经为公网NAT网关绑定了EIP,具体操作请参考绑定EIP;
您已经为公网NAT网关创建了SNAT条目,具体操作请参考创建SNAT条目;
设置方法
一、创建出站终端节点
登录到云解析DNS控制台。
单击左侧导航栏 内网DNS解析 (PrivateZone),在页面右上角选择 配置管理模式 ,再单击 转发管理 按钮。
在 转发管理 页面选择 出站终端节点 页签,再点击 创建出站终端节点 。具体操作请参考创建出站终端节点。
重要出站VPC 务必选择NAT网关绑定的VPC。
二、创建转发规则
登录到云解析DNS控制台。
单击左侧导航栏 内网DNS解析(PrivateZone),在页面右上角选择 配置管理模式 ,再单击 转发管理 按钮。
在 转发管理 页面先单击 转发规则 页签,再单击 创建转发规则 。具体操作请参考创建转发规则。
重要外部DNS系统的IP地址填写阿里云公共DNS地址:
223.5.5.5
及223.6.6.6
。
三、设置规则生效范围
登录到云解析DNS控制台。
单击左侧导航栏 内网DNS解析(PrivateZone),在页面右上角选择 配置管理模式 ,再单击 转发管理 按钮。
在 转发管理 页签先单击 转发规则 ,再单击目标转发规则 操作 列的 转发规则生效范围 按钮。具体操作请参考关联规则生效范围。
重要规则生效范围务必设置为绑定NAT网关的VPC。
拨测验证
在业务VPC1的ECS上执行命令:dig www.cloud-example.com
,解析应答返回电信的IP地址2.2.XX.XX
。