修复 VPN 上的 DNS 查找缓存失败问题

修复 VPN 上的 DNS 查找缓存失败问题

我在 AWS 上有一个 OpenVPN 实例,用于控制对管理工具的访问。我有一个内部 Route53 区域和一个 BIND 实例,OpenVPN 将其设置为客户端 DNS。一切正常,但每当我打开笔记本电脑时,如果我打开了仪表板,grafana.mydomain.com它会尝试解析到公共 Route53 区域并失败,因为此记录仅在私有区域中。当 VPN 稍后连接时,之前的故障会保留 5 分钟的缓存。

有什么方法可以修复此行为(无需修改客户端计算机)?例如在连接到 VPN 时清除 DNS 缓存或减少错过的查找被缓存的时间?

答案1

在 pfSense 上,有一个 VPN 服务器配置选项:

强制 DNS 缓存更新

在连接启动时运行“net stop dnscache”、“net start dnscache”、“ipconfig /flushdns”和“ipconfig /registerdns”。

这会使 Windows 识别推送的 DNS 服务器。

在 OpenVPN 配置文件(服务器端)中,其内容如下:

push "register-dns"

OpenVPN 2.4 手册中是这样说的:

–注册DNS

在启动连接时运行 ipconfig /flushdns 和 ipconfig /registerdns。

这会使 Windows 识别推送的 DNS 服务器。

https://openvpn.net/community-resources/reference-manual-for-openvpn-2-4/

它似乎会在非 Windows 客户端上生成一个可以忽略的警告:

https://community.openvpn.net/openvpn/ticket/570

相关内容