我公司是国际化公司,在中国设有子公司,并使用Google Apps提供电子邮件,日历,联系方式等。
但不幸的是,我们知道中国的大防火墙阻止谷歌(以及许多其他像Facebook,Twitter等)。
我们有到新加坡办事处的VPN链接,因此我将本地DHCP配置为在新加坡分配DNS服务器,以便获得正确的谷歌服务器' IP。谷歌的流量将通过新加坡并成功访问谷歌。 (我们使用新加坡DNS,因为有时中国GFW会进行DNS中毒,因此无法信任当地的中国DNS提供商)
但我们并不想将所有流量路由到新加坡,所以我也设置了流量分割路线规则:
所有流向中国IP范围的流量将直接通过本地互联网连接。
所有流向非中国IP的流量都将通过VPN隧道进入新加坡。
这个解决方案工作正常,直到最近我发现新加坡服务器会将一些中国网站(例如baidu.com,taobao.com,jd.com等)解析为位于中国境外的IP(例如IP)在香港,在美国的IP等等。)我想它可以解决一些镜像主机或CDN主机等问题。因此,所有网页浏览流量都将通过新加坡。
这种外部IP仍然有效,但与使用本地DNS / Internet链接访问这些网站相比速度相当慢(这是有道理的,因为路由将比本地目标IP更长)。
所以我的问题是有没有好的做法来解决这个问题?
我的想法是在我的本地DNS服务器上进行选择性DNS解析:
使用本地DNS提供商设置本地DNS服务器以解析所有DNS请求,但以下情况除外:
在本地服务器中添加一些DNS条目列表(例如* .google.com,* .facebook.com),并在新加坡设置辅助DNS提供商。
每当客户端尝试解析* .google.com时,本地DNS服务器都会注意到并将请求传递给新加坡DNS提供商,因此会绕过中国GFW DNS中毒并获取正确的目标IP。
有人可以推荐怎么做吗?或者推荐更好的解决方案?
提前致谢!
答案 0 :(得分:0)
我认为您想要做的是“条件转发”,我在SimpleDNS中看到过...... http://www.simpledns.com/help/v50/index.html?df_forward.htm
显然,这也可以在Windows DNS服务中使用... https://technet.microsoft.com/en-us/library/cc794735(v=ws.10).aspx