首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >OpenVPN:没有DNS转发

OpenVPN:没有DNS转发
EN

Server Fault用户
提问于 2012-08-13 04:40:26
回答 2查看 4K关注 0票数 1

我已经能够在运行Ubuntu10.04的VPS上设置一个路由OpenVPN。我能够平两种方式,以及打开任何网站使用IP地址在客户端。然而,通过域名,它不工作。

由于我对OpenVPN和Linux非常陌生,所以我不确定从哪里开始故障排除。由于服务器是VPS,所以我无法访问它的本地网络,但我已经迫于压力,我应该能够将我的服务器设置为我的VPN客户端的DNS服务器。使用DNS服务器作为我的VPN客户端服务器。在此基础上,我尝试添加push“dhcp-选项DNS 10.x.x.x",但没有结果。

除了包含push“重定向网关def1”之外,我的服务器端配置看起来与示例配置类似。

我的客户端配置看起来像这样,

代码语言:javascript
运行
复制
client
dev tun
proto udp
remote my.server.com 1194
resolv-retry infinite
nobind
user nobody
group nobody
persist-key
persist-tun
ca ca.crt
cert sovos.crt
key sovos.key
comp-lzo
verb 6

更新:我发现服务器确实正确地推送了DNS设置,即当我连接到客户端上的resolv.conf时,中的值会发生变化。然而,我仍然无法进行查找,甚至使用公共DNS服务器,如谷歌的。

EN

回答 2

Server Fault用户

回答已采纳

发布于 2012-08-15 01:34:41

原来iptables配置得很糟糕。

这些设置有效,其中XX是我的eth0 ip。

代码语言:javascript
运行
复制
#Make vpn clients who connect on the tun interface able to reach the internet through the main interface (eth0)
iptables -t nat -A POSTROUTING -s 10.8.0.0/255.255.255.0 -j SNAT --to-source XX.XX.XX.XX
票数 0
EN

Server Fault用户

发布于 2012-08-13 06:35:44

您的服务器必须实际运行DNS服务器才能正常工作,而默认情况下它不会运行。你的选择基本上是:

  1. 不要推送DNS服务器,让客户端在本地网络上使用DNS服务器。如果本地DNS服务器与客户端不在同一子网上,则此操作可能无法工作。
  2. 推送像Google (8.8.8.8和8.8.4.4)这样的公共DNS服务器,客户端将通过VPN访问这些服务器。
  3. 在VPN服务器上运行DNS服务器(德斯马斯克可能是最容易设置的),并将其推送到客户端。
票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/416849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档