openvpn dns 服务器连接后无法解析转发的 DNS 查找,仅限本地

openvpn dns 服务器连接后无法解析转发的 DNS 查找,仅限本地

我正在使用 OpenVPN 服务器(在 Ubuntu 服务器 14.04 上)和 Mac OS X Yosemite 客户端(使用 TunnelBlick v 3.50 build 4265)。除了 VPN 服务器的 DNS 服务器之外,其他都运行良好,尽管它是在客户端上设置的,但它只解析本地内联网的 DNS 查询,而不会转发到解析器进行互联网查找。同一个 DNS 服务器(绑定)在本地内联网和 OpenVPN 服务器上运行良好。

一旦 VPN 连接,就会出现以下输出。

$ dig -x www.google.com

; <<>> DiG 9.8.3-P1 <<>> -x www.google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 12157
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;com.google.www.in-addr.arpa.   IN  PTR

;; Query time: 1884 msec
;; SERVER: 10.0.0.9#53(10.0.0.9)
;; WHEN: Fri May  8 10:32:22 2015
;; MSG SIZE  rcvd: 45

答案1

另一个解决方案是,通过在 /etc/bind/named.conf.options 中添加此行来添加对 10.1.0.0/24 网络的递归,如下所示:

allow-recursion { 10.1.0.0/24; };

答案2

解决方案(来自评论)在绑定中添加允许递归(这是从绑定 9.4 左右的默认允许设置更改而来的)

可能的解决方案:

  • 尝试使用公共 DNS 服务器,如谷歌著名的 8.8.8.8/8.8.4.4。
  • 通过在 server.conf 中添加此行,将 10.0.0.9 IP 的路由推送到 VPN 客户端:

推“路由 10.0.0.9 255.255.255.255”

另一种选择:在绑定配置上添加/允许 VPN IP 的 DNS 递归。

我希望它能起作用。

相关内容