带有 OpenVPN 的云 DNS 无法在客户端上解析
Cloud DNS with OpenVPN not resolving on client
我正在尝试使用 Google Cloud Platform 的 Cloud DNS 从我的本地计算机通过 DNS 解析 Compute Engine 实例的内部 IP。我能够按照本指南在实例上设置 OpenVPN 服务器:https://www.digitalocean.com/community/tutorials/how-to-set-up-an-openvpn-server-on-ubuntu-16-04
我的 VPN 配置成功连接到 OpenVPN 服务器,并允许我 ping 我的 GCE 实例的内部 IP。托管我的 OpenVPN 服务器的实例能够解析和 ping 云 DNS 条目,但我的客户端本地计算机无法执行相同的操作。
这是连接到 VPN 服务器后我的 /etc/resolve.conf
文件的内容。
search openvpn
nameserver 169.254.169.254
我需要执行哪些额外配置才能让我的本地计算机解析 Cloud DNS 地址?
在 Compute Engine 中,DNS 解析是针对元数据服务器执行的,它始终具有 IP 169.254.169.254。这个问题是因为这个 IP 是 link-local 并且是不可路由的,因此不会在 VPN/IPSEC 上工作。
有几个solutions/workarounds:
您可以将所有内部 GCE 实例 IP 映射到您私有网络中服务器的主机文件中 - 缺点是该过程是手动且耗时的,具体取决于您拥有的实例数量。
第二个选项是内部 GCE 服务器(内部解析器)运行 可以跨网络的 DNS 服务器。 this documentation.
中提供了更多相关信息
我正在尝试使用 Google Cloud Platform 的 Cloud DNS 从我的本地计算机通过 DNS 解析 Compute Engine 实例的内部 IP。我能够按照本指南在实例上设置 OpenVPN 服务器:https://www.digitalocean.com/community/tutorials/how-to-set-up-an-openvpn-server-on-ubuntu-16-04
我的 VPN 配置成功连接到 OpenVPN 服务器,并允许我 ping 我的 GCE 实例的内部 IP。托管我的 OpenVPN 服务器的实例能够解析和 ping 云 DNS 条目,但我的客户端本地计算机无法执行相同的操作。
这是连接到 VPN 服务器后我的 /etc/resolve.conf
文件的内容。
search openvpn
nameserver 169.254.169.254
我需要执行哪些额外配置才能让我的本地计算机解析 Cloud DNS 地址?
在 Compute Engine 中,DNS 解析是针对元数据服务器执行的,它始终具有 IP 169.254.169.254。这个问题是因为这个 IP 是 link-local 并且是不可路由的,因此不会在 VPN/IPSEC 上工作。
有几个solutions/workarounds:
您可以将所有内部 GCE 实例 IP 映射到您私有网络中服务器的主机文件中 - 缺点是该过程是手动且耗时的,具体取决于您拥有的实例数量。
第二个选项是内部 GCE 服务器(内部解析器)运行 可以跨网络的 DNS 服务器。 this documentation.
中提供了更多相关信息