Come fare in modo che l'host invii una richiesta DNS senza attendere una risposta?


0
How to make host send a DNS-request without waiting for a response?

Voglio usare l'host (in un ciclo) per inviare una serie di richieste DNS senza attendere le risposte corrispondenti.

host foo.com 192.168.16.2 -W 1 

aspetta 1 secondo prima di uscire. Se io set -W 0, quindi viene automaticamente impostato su 1. Cioè, ogni iterazione del mio ciclo richiede almeno 1 secondo, che voglio evitare.


1
"ogni iterazione del mio ciclo richiede almeno 1 secondo" - if host timeout; normalmente può tornare prima. Hai bisogno delle risposte? o forse vuoi solo attaccare DOS al server?
Kamil Maciorowski

@ KamilMaciorowski - Non ho bisogno delle risposte. Sto solo cercando di implementare una semplice estrazione di dati DNS, ovvero di inviare dati tramite DNS.
Shuzheng

1
Puoi correre host in background e immediatamente loop; o usare timeout con una frazione di secondo, ma ancora abbastanza a lungo per host per inviare una richiesta. Questi sono soluzioni alternative. credo host proverà sempre ad aspettare, a meno che tu non modifichi la sua fonte e costruisca la tua. Nota il lavoro principale di host è ottenendo una risposta; le richieste sono solo mezzi necessari per farlo.
Kamil Maciorowski

@ KamilMaciorowski: grazie per i tuoi suggerimenti, li proverò. Per una domanda bonus? Sai come fare host invia solo una richiesta DNS anziché due (impostazione predefinita)? So che invia due richieste di tolleranza ai guasti, ma in questo caso ne voglio solo una.
Shuzheng

1
No, non lo so. Forse dovresti lasciar perdere host e cercare (scrivere?) uno strumento che si adatta meglio alle tue esigenze?
Kamil Maciorowski

Risposte:


0

Se non lo fai cura sulle risposte, quindi non utilizzare gli strumenti di ricerca DNS, perché sono stati fatti appositamente per attendere la risposta e mostrarla.

Esistono strumenti di generazione del traffico dedicati. Scapy è popolare e ha funzioni per creare pacchetti DNS (tra molti altri).

Il protocollo stesso è comunque stateless e abbastanza semplice da poter acquisire e riprodurre i pacchetti UDP raw contenenti query live, cambiando solo l'ID della query, se necessario. Ad esempio, una volta che hai un file contenente una query DNS, nc o socat può inviarlo.


Grazie! Quale opzione utilizzi con netcat per riprodurre?
Shuzheng
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.