anatomia di un pacchetto dns

This commit is contained in:
dado
2025-06-15 15:49:02 +02:00
parent edf9cb228e
commit 5e6793520a

View File

@ -75,3 +75,53 @@ I `Resource Records` (RR) o records DNS sono informazioni strutturate in quattro
- `Tipo TXT`: Associa una stringa di testo a un dominio. I record TXT sono spesso utilizzati per configurazioni relative alla posta elettronica, come SPF, DKIM e DMARC, per migliorare la sicurezza e l'autenticità delle comunicazioni email
## Pacchetto DNS
Il pacchetto DNS è costituito da diverse componenti, alcune delle quali vengono utilizzate se il pacchetto è una richiesta DNS (DNS request) e altre nella risposta (DNS response). La struttura principale del pacchetto include:
### Intestazione (Header)
L'intestazione, lunga 12 byte, contiene vari campi:
- `Transaction ID`: un identificatore univoco della richiesta, che consente di associare una specifica query alla sua risposta
- `Flags`: un insieme di valori rappresentati da singoli bit, ciascuno dei quali può essere acceso (1) o spento (0):
- `QR`: indica se il pacchetto è una query (0) o una risposta (1)
- `AA` (Authoritative Answer): indica se la risposta è autoritativa (1) o meno (0)
- `RCODE` (Response Code): un campo di 4 bit che riporta codici di risposta per eventuali errori
- `QDCount`: il numero di richieste presenti nella sezione *Question*, che indica quante domande sono state formulate
- `ANCount`: il numero di record di risposta presenti nella sezione *Answer*
- `NSCount`: il numero di RR presenti nella sezione *Authority*, che indica quanti record provengono da un server autoritativo
- `ARCount`: il numero di record presenti nella sezione *Additional*, che fornisce informazioni supplementari utili per la risoluzione della richiesta
### Sezione Questions
La sezione Questions contiene la/e richiesta/e DNS e include i seguenti campi:
- `QNAME`: il nome di dominio per il quale si sta effettuando la richiesta
- `QTYPE`: indica il tipo di record richiesto, rappresentato da un codice associato al tipo di RR specificato in QNAME.
- A (1)
- AAAA (28)
- MX (15)
- CNAME (5)
- `QCLASS`: indica la classe della query, specificando il contesto/luogo in cui si sta cercando l'informazione per il nome di dominio. Per un contesto ampio, come Internet, si utilizza la QCLASS IN (Internet).
Questi campi forniscono le informazioni necessarie per elaborare la richiesta e ottenere la risposta desiderata.
### Sezione Answers (Risposte)
La sezione Answers fornisce le risposte alla/e richiesta/e DNS e include i seguenti campi:
- `Name`: rappresenta il dominio per il quale è stata effettuata la richiesta
- `Type`: indica il tipo di record restituito, come A, AAAA, MX, CNAME, ecc.
- `CLASS`: rappresenta la classe di risposta, che è quasi sempre IN (Internet).
- `TTL` (Time to Live): indica il tempo di vita della risposta. Una volta scaduto, l'informazione viene considerata obsoleta e viene eliminata
- `RD Length`: indica la lunghezza dei dati di risposta, specificando quanti byte occupa l'informazione restituita
- `RDATA`: contiene i dati effettivi della risposta, che variano a seconda del tipo di record richiesto
### Sezione Authority
La sezione Authority indica le risposte provenienti da server DNS autoritativi.
### Sezione Additional
La sezione Additional può contenere informazioni extra che non rientrano nelle altre sezioni.