我正在将bind9设置为本地网络的DNS服务器。对于来自运行服务器的计算机的DNS查询,服务器按预期工作,但不响应来自网络上其他计算机的查询。在DNS服务器上运行tcpdump时,我看到来自其他机器的查询到达,但在bind9日志中看不到任何响应或任何指示错误的内容。任何有关此问题的可能来源或调试方法的建议都将不胜感激!
详细说明:
在Ubuntu上运行bind9。我的配置是:
options {
directory "/etc/bind";
listen-on port 53 {100.1.1.2; };
listen-on-v6 port 53 { none; };
allow-query { any; };
dnssec-validation no;
};
zone "mydomain.com" IN {
type master;
file "mydomain.com.db";
allow-update { none; };
};
zone "1.1.100.in-addr.arpa" {
type master;
file "revp.100.1.1";
};区域文件是
$ORIGIN mydomain.com.
$TTL 5; 3600
@ IN SOA dns admin.mydomain.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
; DNS Servers
NS dns
; Machine Names
localhost IN A 127.0.0.1
dns IN A 100.1.1.2
bar IN A 100.1.1.10
baz IN A 100.1.1.11使用sudo named -c /etc/bind/named.conf -g -d100启动named。查看日志,它确实在监听正确的IP (我看到listening on IPv4 interface enp6s0, 100.1.1.2#53)。在运行带有dig baz.mydomain.com @100.1.1.2的DNS服务器的同一台机器上测试DNS查找,我从DNS服务器得到了一个答案,在named日志中有相应的条目。我还在sudo tcpdump -i lo -u port 53中看到了DNS请求。
接下来,在PC栏上,我运行了dig baz.mydomaain.com @100.1.1.2。此请求没有从DNS服务器获得任何响应,并且我在DNS日志中看不到任何内容。查看DNS服务器上的sudo tcpdump -u port 53,我看到来自bar的DNS请求,但没有响应,所以这似乎不是防火墙问题。
对下一步有什么建议吗?
发布于 2021-02-02 20:55:50
我将从不使用MCI通信服务地址块开始,并使用来自RFC1918的适当的网络块:
NetRange: 100.0.0.0 - 100.19.255.255
CIDR: 100.16.0.0/14, 100.0.0.0/12
NetName: V4-VZO
NetHandle: NET-100-0-0-0-1
Parent: NET100 (NET-100-0-0-0-0)
NetType: Direct Allocation
OriginAS: AS19262
Organization: MCI Communications Services, Inc. d/b/a Verizon Business (MCICS)
RegDate: 2010-12-28
Updated: 2018-01-10
Ref: https://rdap.arin.net/registry/ip/100.0.0.0然后,当然可以使用wireshark (或tcpdump)来查看数据包被路由到哪里。但是,强烈反对使用他人的网络。
发布于 2021-02-02 23:55:09
好吧,这被证明是一个基本的防火墙问题。长话短说,我没有意识到tcpdump会在防火墙之前看到数据包,所以看到入站DNS请求并不意味着它们会到达服务器。多!
https://stackoverflow.com/questions/66007365
复制相似问题