【发布时间】:2021-03-12 15:24:37
【问题描述】:
我使用 dnspython 查询 DNS 服务器并获得响应;我的回复以dns.resolver.Answer 对象的形式出现。
我想使用 python 套接字将此 DNS 回复转发到其他地方,为此我需要此消息的原始形式,如下所示:
b'\x01\x01\x00\x00\x01\x00\x00\x00\x00\x00\x00\x03www\x10googletagmanager\x03com\x00\x00\x01\x00\x01'
我使用了文档和.__dict__,发现dns.resolver.Answer包含:
{'qname': <DNS name www.example.com.>, 'rdtype': <RdataType.A: 1>, 'rdclass': <RdataClass.IN: 1>, 'response': <DNS message, ID 1111>, 'nameserver': '8.8.8.8', 'port': 53, 'canonical_name': <DNS name www.example.com.>, 'rrset': <DNS www.example.com. IN A RRset: [<0.0.0.0>]>, 'expiration': 0000}
很遗憾,没有 DNS 响应的原始字节消息。
我怎样才能,可能使用另一个库,转换 dns.resolver.Answer
到原始字节对象?
【问题讨论】: