解决Cisco AnyConnect VPN客户端的DNS优先级问题

Cisco AnyConnect VPN的客户端是一个工作于并行隧道(Split Tunnel)模式下的VPN软件,它可以方便的同时使用内外网两不误。它通过连接VPN后动态激活平时禁用的VPN虚拟网络适配器,并根据远端网关的配置应用相应的DNS和路由配置,实现了与默认网络环境无缝并行。但正是在其上述设计中的一个理想假设,为“中国特色”的互联网环境下使用它埋下了一个隐藏很深的问题。

如果你所连接的VPN网络本身是与Internet连通的,而且DNS也可解析外网的网址,由于AnyConnect会将VPN网络适配器的优先级提升到最高,因此远端的DNS配置会取代本地网络(例如家里的宽带网络)。如果你的本地网络和远程网络是同一接入线路,倒还感觉不到这之中的差别。但如果其中一个是电信线路,另一个是联通(网通)线路,你就会遇到一个很悲惨的状况:本地网络访问国内主要网站的速度会显著降低,因为DNS对大型网站CDN的解析结果是和你现有路由完全不同的线路,想象一下在你的联通(网通)宽带下访问电信线路的网站,那种感觉……

继续阅读解决Cisco AnyConnect VPN客户端的DNS优先级问题