我已经(试图)在Ubuntu14.04(信任)上设置dnscache来执行双重堆栈来服务请求和查询权威的名称服务器。
为了明确起见,我使用的是dbndns包,它有fefe提供的IPv6修补程序。
我安装了dbndns &dnscache运行包。我确定/etc/service/dnscache/env/IP是0.0.0.0,/etc/service/dnscache/env/IPSEND是0.0.0.0。
我还在/etc/service/dnscache/root/ip中添加了我们的IP范围。
我现在可以使用dig在另一台机器上通过IPv4和IPv6加载aaaa和记录。但是testpv6.com有一个测试,用于从IPv6唯一权威的名称服务器加载记录。为了测试这一点,它加载了http://ds.v6ns.test-ipv6.com/ip/?callback=?如果我为其挖掘主机名,ds.v6ns.test-ipv6.com使用8.8.8.8 (谷歌的启用IPv6的DNS服务器),我将得到AAAA记录。但是,(通过IPv4和IPv6)对dbndns缓存执行相同的操作不会返回结果。
IPSEND需要改变吗?如果是的话,该怎么办?我不想破坏仅用于IPv4的权威名称服务器的解析内容。
发布于 2014-10-27 00:16:21
不幸的是,即使修补了dbndns,它也不会以这种方式工作。
您需要两个dnscache实例才能工作,一个实例具有特定的IPv4地址(与之前一样使用它),另一个实例具有特定的IPv6地址:
root@fw0:/service# grep '' dnscache*/env/IP*
dnscache/env/IP:10.66.1.1
dnscache/env/IPSEND:198.51.100.1
dnscache6/env/IP:2001:db8:10:30::1
dnscache6/env/IPSEND:0.0.0.0将10.66.1.1替换为您的私有IPv4,将198.51.100.1替换为您的公共IPv4,将2001:db8:10:30::1替换为您的( public,duh) IPv6地址。然后它对我起作用:
# dig aaaa ds.v6ns.test-ipv6.com @2001:db8:10:30::1
; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> aaaa ds.v6ns.test-ipv6.com @2001:db8:10:30::1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32403
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;ds.v6ns.test-ipv6.com. IN AAAA
;; ANSWER SECTION:
ds.v6ns.test-ipv6.com. 360 IN AAAA 2001:470:1:18::119https://serverfault.com/questions/627912
复制相似问题