这个问题让我抓狂不已,因为我根本不敢相信 dnsmasq 可以默认以这种方式工作。
这绝对是荒谬的
好的,dnsmasq 已安装 2.79-1
并且服务器正在用作 VPN 服务器,其中使用 strongswan 和 ipsec。
/etc/dnsmasq.conf:
bind-interfaces
interface=eth0
cache-size=500
no-negcache
no-hosts
domain-needed
resolv-file=/etc/resolv.dnsmasq
no-poll
/etc/resolv.conf:
nameserver 127.0.0.1
/etc/resolv.dnsmasq:
nameserver 8.8.8.8
nameserver 8.8.4.4
现在我可以进行 DNS 查询了
但
查询被转发到 8.8.8.8。因此 8.8.8.8 看到的是客户端 IP,而不是服务器 IP
这会造成 DNS 泄漏,使得 VPN 服务器基本上毫无用处。
这怎么能是标准配置呢?我该如何解决这个问题,以便服务器 NAT 的 DNS 查询和客户端 IP 始终受到保护?
编辑
另一个解决方案是在 strongswan 配置中指定 dns 服务器,但据我所知,strongswan 不允许在 rightdns 属性中使用动态 ip,因此需要指定 IP,这就是为什么它当前设置为 VPN 服务器的公共 IP。或者我可以在 ipsec 接口上设置 VPN 服务器 IP;例如 10.10.10.254。
也许有一种简单的方法可以做到这一点???