dns - 如何为基于 OpenVPN 的 VPN 内的服务器设置域名?

标签 dns openvpn domain-name

我目前正在使用一个非常简单的 OpenVPN 设置,我从不同的设备连接到 OpenVPN 服务器,然后访问由在同一系统上运行的 Apache 服务器托管的网站。要访问该服务器,我必须在 VPN 内使用其 IPv4 地址(例如 10.1.0.1)。

我想使用“真实”名称,例如 myserver.local。有没有办法在不设置 DNS 服务器的情况下做到这一点? OpenVPN-Client 可以只在本地主机文件中添加一个条目吗?

最佳答案

不需要设置 DNS 服务器,但让一个 DNS 服务器工作非常容易,并且可以在 VPN 后面受到限制。

我在 Ubuntu 14.04 上使用 dnsmasq 正是为了这个目的。只需安装它并将所有主机添加到 /etc/hosts - 按以下方式归档:

# Clients on the VPN
10.8.0.1 vpn.lan vpn.lan
10.8.0.8 service1.lan service1
10.8.0.6 service2.lan service2

您可以限制 dnsmasq,使其仅监听 tun0 -OpenVPN接口(interface)添加interface=tun0/etc/dnsmasq.conf 。您可以通过添加 push "dhcp-option DNS 10.8.0.1" 将 DNS 服务器推送到您的客户端给您/etc/openvpn/server.conf .

此解决方案的缺点是,您必须将每个服务器添加到 /etc/hosts ,但对于几个服务器我认为还可以。

关于dns - 如何为基于 OpenVPN 的 VPN 内的服务器设置域名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22504234/

相关文章:

vpn - OSX 客户端上的 OpenVPN + obfsproxy

amazon-web-services - Erlang 节点通过 vpn 通信

windows - 如何通过 openVPN 隧道 "Split tunnel"重定向某些流量?

azure - 通过其他供应商购买的域名可以与从 Azure 购买的 SSL 证书一起使用吗?

networking - DNS 名称可以看起来像 IP 地址吗?

dns - 将子域指向另一台主机上的另一个域

ruby-on-rails - 从 Rails 中的主机/URL 获取基本域名

php - 读取初始通信数据包时与 MySQL 服务器失去连接,系统错误 : 111

networking - 使用 A 记录代替名称服务器

Delphi/Indy 通过主机名查找解析 DNS 域