我目前正在使用一个非常简单的OpenVPN设置,我从不同设备连接到OpenVPN服务器,然后访问由运行在同一系统上的Apache服务器托管的网站。要访问该服务器,我必须在VPN内使用其IPv4地址(例如10.1.0.1)。
我想使用真实的'像myserver.local这样的名字。有没有办法在不设置DNS服务器的情况下执行此操作? OpenVPN-Client可以只添加一个条目到本地hosts文件吗?
答案 0 :(得分:1)
不是没有设置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
您可以通过将tun0
添加到interface=tun0
来限制dnsmasq,它只侦听/etc/dnsmasq.conf
- OpenVPN的接口。您可以将push "dhcp-option DNS 10.8.0.1"
添加到/etc/openvpn/server.conf
。
此解决方案的缺点是,您必须将每台服务器添加到/etc/hosts
,但对于几台服务器,我认为没问题。