用Python制作DNS查询消息
我一直在使用Scapy来制作数据包和测试我的网络,但我内心的程序员渴望知道在没有Scapy的情况下如何做到这一点 例如,如何使用套接字创建DNS查询(我假设将使用套接字)用Python制作DNS查询消息,python,tcp,tcp-ip,Python,Tcp,Tcp Ip,我一直在使用Scapy来制作数据包和测试我的网络,但我内心的程序员渴望知道在没有Scapy的情况下如何做到这一点 例如,如何使用套接字创建DNS查询(我假设将使用套接字) 感谢您打开您要使用的UDP套接字: s=socket.socket(socket.AF\u INET、socket.SOCK\u流、socket.IPPROTO\u UDP 要发送或使用: query=craft\u dns\u query()#这部分由您来完成 s、 发送到(查询,(socket.inet_aton(“8.8
感谢您打开您要使用的UDP套接字:
s=socket.socket(socket.AF\u INET、socket.SOCK\u流、socket.IPPROTO\u UDP
要发送或使用:
query=craft\u dns\u query()#这部分由您来完成
s、 发送到(查询,(socket.inet_aton(“8.8.8.8”,53))
要接收响应,请使用:
response=s.recv(1024)
你必须参考DNS上的文档,才能真正地制作消息和处理响应。@MarcB的链接是一个很好的研究对象。此外,你可以查看Scapy源代码的内部内容来获得一些想法。DNS主要使用UDP。另一个有趣的方法是嗅探,然后发送相同的数据。这伴随着RFC和参考实现应该提供良好的学习体验。Barry,你是在问“我如何发送数据包”还是“如何制作数据包”?