你好,我们公司自建的GSLB智能DNS服务,把部分来自阿里云的请求都识别为海外请求了,造成了不少问题。
造成请求被识别为海外请求的原因,是合作伙伴使用阿里云的服务器,用的是阿里云的DNS服务100.100.2.136、100.100.2.138, 然后这些DNS对外向我司的权威域名服务发起请求的时候,其所在的服务器公网IP,在我们这边被识别为海外机房了,于是将这些请求路由到海外机房去了。
所以想知道你们的DNS服务,是否有使用谷歌8.8.8.8等之类的海外DNS,或者能否公布你们自建DNS的服务器所使用的对外公网IP(非公共DNS的BGP anycast IP,是发起主动请求的单播IP),我们这边才好对GSLB做下调整
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云的公共DNS服务(100.100.2.136、100.100.2.138)是阿里云自建的全球分布式DNS系统,它并不是基于谷歌的8.8.8.8或其他海外DNS服务。阿里云DNS旨在为用户提供快速、安全、稳定的域名解析服务,并在全球范围内通过BGP Anycast技术部署了多个节点,以实现低延迟和高可用性。
关于您提到的需要获取阿里云DNS服务器对外发起请求时使用的公网IP地址,情况稍微复杂一些。通常,DNS解析请求是由客户端(如用户设备或合作伙伴服务器)发起的,而DNS服务器响应这些请求。这意味着,从您的GSLB角度来看,看到的源IP应该是发起查询请求的实际客户端IP,而非DNS服务器自身的“对外主动请求”的IP地址。阿里云DNS作为接收查询并返回结果的一方,其自身在处理查询时不向外部发起请求,因此没有一个固定的“对外公网IP”用于此类场景。
对于您遇到的问题,建议采取以下几种解决方式:
检查GeoIP数据库:确认您的GSLB系统中使用的GeoIP数据库是否准确无误,有时数据库中的IP地址地理位置信息可能过时或不准确,导致误判。
使用EDNS Client Subnet (ECS):如果您的DNS解析支持EDNS Client Subnet扩展,可以考虑启用该功能。这将使得DNS解析请求携带客户端的真实子网信息到权威域名服务器,帮助更精确地定位用户位置,从而避免误导向海外机房。
与阿里云技术支持联系:虽然阿里云不会提供特定的“对外主动请求”的单播IP列表,但如果您遇到了具体的技术难题,可以通过阿里云官方渠道联系技术支持,他们可能会提供更专业的指导或解决方案,尤其是在涉及到如何更好地与阿里云基础设施交互的问题上。
调整GSLB策略:考虑根据实际业务流量模式和来源,细化GSLB的路由策略,比如增加更多的识别规则或采用更智能的路由算法,以减少误判的可能性。
希望这些建议能对您有所帮助!如果有进一步的技术细节需要了解,直接咨询阿里云官方支持会是最直接有效的方式。