使用dnslib python创建DNS数据包

时间:2014-08-11 20:42:31

标签: python dns packet-injection

将dnslib与python 2.6一起使用

我创建了以下代码

#!/usr/bin/env python

from dnslib import *
import sys

a = DNSRecord.question(sys.argv[1])

print a.pack()

当我尝试执行以下操作时

a = DNSRecord.question(sys.argv[1],"A MX NS AAAA dnssec trace multiline")

dnslib.dns.DNSError:QTYPE:反向查找无效:​​[A MX NS AAAA dnssec跟踪多行]

我想做的事情非常简单

制作一个数据包,其中设置了以下标志,只是打包打包数据

这可以使用dnslib吗?

1 个答案:

答案 0 :(得分:0)

  1. tracemultiline是“挖掘”特定的标志,会影响挖掘的行为,而不是电汇协议。

  2. dnssec标志设置EDNS0 OPT RR中的DNSSEC OK(又名DO)位,您需要创建该位并放入其中的“附加”部分。查询。但是,dnslib中的EDNS0支持非常差。

  3. 您不能在一个问题中放置多个QTYPE(即A MX NS AAAA) - 您需要为每个问题单独提问。