Запрос DNS со Scapy через IPv6 - PullRequest
       28

Запрос DNS со Scapy через IPv6

0 голосов
/ 30 сентября 2019

Я видел много примеров того, как отправлять DNS-запросы через Scapy, но ни одного для IPv6. Для справки, я использую Python 3, и ping6 ipv6.google.com удачно для меня, поэтому у меня, кажется, есть подходящий шлюз. Я пытаюсь объединить https://www.packetlevel.ch/html/scapy/scapyipv6.html и https://thepacketgeek.com/scapy-p-09-scapy-and-dns/,, но я не уверен, как именно это сделать (просто замена IP(dst=dst) на IPv6(dst=dst) не работает). Для справки, я пытался разрешить "google.com" с DNS-сервером Googles (https://developers.google.com/speed/public-dns/docs/using).

Редактировать: я хотел бы иметь возможность выбрать DNS-сервер, который мне нужен. Для IPv4 я мог бы сделатьтак со следующим: sr1(IP(dst=dns_dst)/UDP(dport=53)/DNS(rd=1, qd=DNSQR(qname=query_name)))

1 Ответ

1 голос
/ 01 октября 2019
  • Пинг IPv6:

    sr1(IPv6(dst="www.google.com")/ICMPv6EchoRequest(),timeout=3)
    

Это создаст простой пакет IPv6 с эхо-запросом сверху и отправит / получит его на уровне 3

  • DNS через IPv6 на общедоступном сервере Google с запросом адреса IPv6:

    sr1(IPv6(dst="2001:4860:4860::8888")/UDP()/DNS(qd=DNSQR(qname="www.google.com", qtype="AAAA"))) 
    
...