我创建了一个测试网络。这是一个星型 VPN 网络,包含: - 1 个主路由器 - 2 个子路由器(DrayTek Vigor 2920) - 每个路由器后面都有一个客户端 - 主路由器后面有一个 PowerDNS 机器
现在网络似乎运行正常,我可以从一个位置访问其他位置的计算机。在每个位置我都可以对该网络中的机器进行 DNS 查找。
问题是反向查找效果不佳。例如:
在子路由器 1 中,我可以反向查找每台机器的名称,但子路由器 1 网络内的机器除外。当我在子路由器 2 中的机器上时,我可以反向查找每台机器(也可以从子路由器 1 查找),但子路由器 2 网络中的机器除外。当我在主路由器后面的机器上时,每次反向查找都可以正常工作。
这一切都让我认为这一定是 VPN 网络中的路由存在问题。
VPN 设置如下:
主路由器IP:
ip 10.20.0.254
mask: 255.255.255.0
路由器 1 IP:
ip 10.20.1.254
mask 255.255.255.0
路由器 2 IP:
ip 10.20.2.254
mask 255.255.255.0
主路由器至路由器 1 的 VPN 信息:
Remote Network IP: 10.20.1.254
Remote Network Mask: 255.255.255.0
Local Network IP: 10.20.0.254
Local Network Mask: 255.255.255.0
VPN 信息路由器 1 到主路由器:
Remote Network IP: 10.20.0.0
Remote Network Mask: 255.255.255.0
Local Network IP: 10.20.2.254
Local Network Mask: 255.255.255.0
我正在使用 PowerDNS 与 Mysql 和 PDNS 递归器
配置pdns.conf:
allow-recursion=127.0.0.1
cache-ttl=60
config-dir=/etc/powerdns
daemon=yes
disable-axfr=yes
guardian=yes
lazy-recursion=yes
local-address=0.0.0.0
local-port=5300
log-dns-details=yes
log-failed-updates=yes
logfile=/var/log/pdns.log
logging-facility=0
loglevel=4
module-dir=/usr/lib/powerdns
query-cache-ttl=60
recursor=127.0.0.1:53
setgid=pdns
setuid=pdns
socket-dir=/var/run
wildcard-url=yes
gmysql-host=localhost
gmysql-port=3306
gmysql-dbname=pdns
gmysql-password=Password
gmysql-user=pdns
gmysql-socket=/var/run/mysqld/mysqld.sock
递归器配置文件
allow-from=127.0.0.0/8, 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, ::1/128, fe80::/10
local-address=127.0.0.1, 10.20.0.4
local-port=53
log-common-errors=yes
max-negative-ttl=3600
quiet=yes
setuid=pdns
version-string=PowerDNS Recursor 3.3
如果我启动 PDNS-Recursor 或执行 pdns_recursor 状态,则会看到以下内容:
Sep 25 14:47:00 PowerDNS Recursor 3.6.1 ([email protected]) (C) 2001-2014 PowerDNS.COM BV
Sep 25 14:47:00 Using 32-bits mode. Built on 20140910211642 by [email protected], gcc 4.7.2.
Sep 25 14:47:00 PowerDNS comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it according to the terms of the GPL version 2.
Sep 25 14:47:00 Reading random entropy from '/dev/urandom'
Sep 25 14:47:00 Only allowing queries from: 127.0.0.0/8, 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, ::1/128, fe80::/10
Sep 25 14:47:00 Will not send queries to: 127.0.0.0/8, 10.0.0.0/8, 100.64.0.0/10, 169.254.0.0/16, 192.168.0.0/16, 172.16.0.0/12, ::1/128, fe80::/10, 0.0.0.0, ::
Sep 25 14:47:00 If using IPv6, please raise sysctl net.ipv6.route.max_size, currently set to 4096 which is < 16384
Sep 25 14:47:00 NOT using IPv6 for outgoing queries - set 'query-local-address6=::' to enable
Sep 25 14:47:00 Redirecting queries for zone 'test.openforest.' to: 127.0.0.1:5300
Sep 25 14:47:00 Redirecting queries for zone '20.10.in-addr.arpa.' to: 127.0.0.1:5300
Sep 25 14:47:00 Inserting rfc 1918 private space zones
Sep 25 14:47:00 Exception: Resolver binding to server socket on port 53 for 10.20.0.4: Address already in use
现在我最担心的是“不会发送查询到:”部分