当使用python示例并尝试从bind9服务器进行查询时,python dnslib.server服务器会收到以下错误:
Mar 5 20:07:23 mx1 named[1868]: success resolving '85.31.199.1.domain.example/A' (in 'domain.example'?) after disabling EDNS
Mar 5 20:41:29 mx1 named[1868]: success resolving '141.36.123.190.domain.example/A' (in 'domain.example'?) after reducing the advertised EDNS UDP packet size to 512 octets有什么建议或解决方案可以用python dnslib.server库解决这个问题吗?
发布于 2018-03-07 11:43:32
EDNS是DNS名称服务器的一个特定功能,尽管不是一个新功能。但它需要特定的支持(处理它的代码)。
您所看到的是,作为客户端的bind9检测到它所说的服务器也缺乏EDNS支持,因此会退回到以前的一些正常设置。
您的库的changelog包含以下内容:
之后什么也没有,所以看起来不太好。
代码源码显示了两个很有前途的类:
EDNS0EDNSOption它似乎是在解析服务器使用的RR.parse中的记录时使用的,但它可能正在工作或不工作,我们无法判断,因为您没有显示您的代码以及它如何使用库。
因此,简而言之,要么是库有问题,它的EDNS代码需要改进,要么是使用它的程序存在问题。
相关的问题是,你为什么使用这个库,它只是实验/学习还是真正在它的基础上构建一个产品?在最后一种情况下,根据您正在做的事情,缺乏EDNS支持可能会给您带来问题(例如DNSSEC)。
https://stackoverflow.com/questions/49117812
复制相似问题