不少部署双宽带接入的企业、工作室用户,在搭配VPN实现跨站点互联或者远程内网访问时,经常遇到域名解析异常、DNS泄露、内网资源访问失败的问题,多数故障根源并非VPN链路本身连通性出错,而是双链路并行运行环境下DNS路由优先级、转发规则的配置冲突。本文从实际运维排查的视角出发,完整覆盖双宽带环境VPN:DNS配置检查的全流程操作方法,帮用户逐层定位配置隐患,减少无意义的反复调试。

运维人员在双宽带接入环境下开展VPN DNS配置排查工作
配置前的基础环境校验前提
双宽带环境的核心特征是两条完全独立的公网接入链路,多数场景下属于不同运营商线路,或者一条为办公专线、一条为普通家用宽带,很多用户默认把两条宽带的公共DNS地址全部填入本地路由表的全局配置中,开启VPN之后系统会随机选择可用的DNS服务器发起请求,这是绝大多数DNS配置故障的前置诱因。
正式开展双宽带环境VPN:DNS配置检查之前,首先要确认当前使用的VPN运行模式,站点到站点的IPsec VPN的DNS配置是在网关侧统一向所有内网终端下发,远程访问的SSL VPN的DNS是在客户端完成连接之后动态推送,两类场景的配置生效位置完全不同,混同操作很容易出现配置修改不生效的问题。
逐层递进的DNS配置检查实操步骤
第一步先做链路层面的DNS归属排查,先断开所有VPN连接,分别禁用其中一条宽带、保留单条链路接入,使用系统自带的nslookup或者dig工具测试常用公网域名的解析结果,确认两条链路本身的DNS服务运行正常,避免把运营商侧的DNS服务故障误判成VPN配置问题,这一步的预期结果是单链路下所有公网域名都能返回正常IP,飞鸟加速器官网没有解析超时或者跳转到错误站点的情况。
第二步重新开启VPN连接之后,在网关后台或者本地客户端的路由表中查看DNS服务器的优先级,双宽带环境下很多操作系统默认会把物理网卡的DNS优先级排在虚拟VPN网卡前面,哪怕VPN链路已经正常连通,系统还是会优先调用物理宽带的DNS做解析,这时候就会出现DNS泄露、访问VPN内网域名失败的问题,这一步的预期结果是VPN虚拟网卡的DNS服务器优先级,要高于两张物理宽带网卡的DNS优先级。
第三步做分流场景下的DNS策略校验,很多双宽带环境会预先配置策略路由,比如指定内网业务走VPN加密链路,普通公网访问走其中一条宽带降低带宽占用,这时候要单独给VPN内网域名配置专属的DNS转发规则,不能复用公网宽带的DNS服务器,不然内网域名的解析请求会被发到公网DNS,直接返回不存在的报错,这里可以测试多个不同的内网业务域名,确认所有请求都能指向VPN分配的内网DNS地址。
第四步做双链路切换场景的DNS一致性校验,手动把网络流量从第一条宽带切到第二条宽带,保持VPN连接不中断,这时候查看全局DNS配置有没有被新切换的宽带的DNS服务器覆盖,很多双宽带的负载均衡设备会在链路切换的时候自动重写全局DNS配置,直接把VPN推送的DNS规则冲掉,导致VPN的内网域名全部解析失败。
常见故障场景的快速排错思路
遇到部分域名能正常解析、飞鸟加速器官网部分域名解析失败的情况,不要直接修改全局DNS配置,先通过端口镜像抓包查看DNS请求的出口地址,如果解析请求是从非VPN绑定的宽带链路发出去的,说明是策略路由的DNS引流规则漏配,只需要补充对应域名的DNS转发走VPN虚拟网卡的规则就可以修复。
遇到VPN断开之后公网域名也全部解析失败的情况,说明之前的配置操作把物理宽带的DNS规则误删了,这时候回到双宽带网关的基础网络设置页,重新补全两条宽带对应的公网DNS地址,再刷新系统路由表就可以快速恢复公网访问能力。
配置操作的常见误区规避
很多用户为了图方便直接把第三方公共DNS地址填进VPN的DNS配置栏,在双宽带环境下这种操作很容易让内网解析请求跑到公网DNS,不仅会出现解析失败,还可能导致原本只能走VPN加密链路的业务流量被旁路到公网宽带,出现企业数据泄露的合规风险。
不要同时给VPN虚拟网卡配置多个不同网段的DNS服务器,双宽带环境下系统的DNS轮询机制会随机把请求发往不同的DNS地址,反而会大幅提升解析出错的概率,VPN场景下只需要保留一个对应内网服务的专属DNS地址即可,飞鸟多余的DNS条目要及时清理。
飞鸟加速器 


