ValueError: слишком много значений для распаковки (ожидается 2) при попытке создать DNS-сообщение с кодом scapy + ничего не возвращает при использовании в CMD - PullRequest
2 голосов
/ 17 мая 2019

Я пытаюсь создать функцию, которая выполняет DNS-запрос с использованием Scapy.но я наткнулся на ошибку при создании запроса.

Это мой код:

from scapy.layers.inet import IP, UDP
from scapy.layers.dns import DNS, DNSQR
from scapy.all import sr1

message = IP(dst="8.8.8.8") / UDP(dport=53, sport=8280) / DNS(rd=1, qd=DNSQR(qname=target), iface="eth1")
result = sr1(message, verbose=10)
print(result[DNS].summary())

Я также заметил, что мой код вообще не возвращает IP-адреса, когда я выполняю его в CMD, он не связан с проблемойЯ верю, но это проблема, тем не менее, вы также можете ее исправить.

Спасибо всем: D

ВАЖНО: Я смог решить проблему.похоже, что Scapy 2.4.2 прослушивается.Я использовал его в PyCharm 2018, и у scapy была проблема с распознаванием интерфейсов, которые я ему дал, даже если они должны быть распознаны как допустимые интерфейсы.Чтобы решить проблему, просто понизьте версию до 2.4.0, например, и она должна снова заработать!: D

...