Diamo un'occhiata ad un esempio più completo.
In questo esempio, l'host A avvia una sessione con la porta di origine di 1024 in una porta di destinazione di
23, in altre parole telnet.
L'host A invia 10 byte di dati e un numero di sequenza iniziale di 10.
L'host B conferma la ricezione dei 10 byte inviando un numero
di riconoscimento a A di 11.
L'host B in questo esempio, imposta anche il suo numero di sequenza iniziale su 5.
si prega di notare anche che i numeri di porta sono invertiti la porta di origine per il traffico che va da B ad A è 23 e la porta di destinazione è 1024.
In questo esempio, perché stiamo usando una finestra scorrevole
A può inviare 250 byte di dati, per esempio.
Quindi nota che il numero di sequenza è incrementato a 260.
Negli esempi precedenti, abbiamo utilizzato numeri semplici per le dimensioni della finestra di
1 o dimensione di finestra di 3, ma si noti che in realtà le dimensioni della finestra
sono impostate sulla quantità di dati che possono essere trasmessi in byte.
Quindi questo potrebbe non essere facile da leggere come le sequenze di 1, 2 e 3.
ricezione di dati fino alla sequenza 5 e confermando così la sequenza numero 6.
Le porte di origine sono di nuovo rotonde,
quindi la porta di origine è 1024 e la porta di destinazione è 23.
Ora l'host B sta riconoscendo per il numero di sequenza 261 ricordare A invia 10 byte e
i 250 byte quindi in altre parole 260 byte
di dati.
B sta inviando il numero di sequenza 6 e ancora una volta i numeri di porta sono invertiti.
È molto importante capire come funzionano le porte di origine e
di destinazione. Quindi, in quella nota non c'è niente di meglio che mostrarti un esempio del mondo reale usando Wireshark.
Quindi acquisirò il traffico sulla mia
rete e quindi andrò ad esempio su google. com con il mio browser web.
Tornerò su Wireshark e interromperò l'acquisizione, ecco un esempio è la query DNS.
Quindi abbiamo l'host 10. 0. 0. 1 che è
la mia macchina un portatile Dell, interrogando il server DNS.
Al livello 2, è possibile vedere che la sorgente è la mia macchina Dell che va al mio router Cisco.
Questo è un frame Ethernet 2 e si prega di notare il campo del tipo.
Al livello 2 come detto, il campo tipo specifica il protocollo al livello 3.
In questo caso, 0x0800 in esadecimale specifica che il protocollo di livello 3 è IPv4.
Sul livello 3 è possibile vedere l'indirizzo IP di origine e l'indirizzo IP di destinazione.
Il mio PC e il server DNS, puoi vedere che questo è IPv4, puoi vedere che la
lunghezza dell'intestazione è di 20 byte.
I codici DSCP o Servizi differenziati non vengono utilizzati in questo avviso
di esempio ECN che ha a che fare con la notifica di
congestione esplicita che ho menzionato brevemente quando si parla dell'intestazione TCP. 42 Quello che mi piacerebbe che tu vedessi qui è notare che il protocollo a livello
4 è UDP che i valori in esadecimale, quindi 11 in esadecimale è uguale a 17 il numero di
protocollo ancora una volta per UDP è 17.
Quindi, al livello 4, possiamo vedere che viene utilizzato User Datagram Protocol o UDP.
La porta di origine è 62249, in altre parole, una porta dinamica o effimera che
raggiunge una porta di destinazione di 53 in altre parole DNS.
Possiamo vedere i numeri di porta ancora una volta, e aprendo la query DNS possiamo vedere
che si trattava di una query, alla ricerca di un indirizzo host specifico.
Qui abbiamo una risposta DNS dal server DNS al mio host.
Quindi, ancora una volta, molto rapidamente al livello 2 puoi vedere che il campo
tipo indica il protocollo al livello 3.
Al livello 3, il campo del protocollo, ci dice quale protocollo è usato al livello
4 Ecco un'altra richiesta DNS dal mio host al server DNS.
E se apriamo le informazioni sulla query DNS puoi vedere che si
tratta di una query per google. it ed è una
query host, avviso tipo A, il server DNS risponde e avviso nella risposta,
ci dà l'indirizzo IP di google. com Ora ecco
l'handshake a tre vie tra la mia macchina e Google.
Si noti che la fonte è 10. 0. 0. 1
e la destinazione è questo indirizzo IP che è Google.
Notare che la porta di origine è 58313 destinazioni è 80 in altre parole sto aprendo una connessione web a un server web.
Aprendolo, è possibile visualizzare nuovamente i numeri di porta di origine e di destinazione, ma
si noti che il flag impostato è SYN.
Quindi aprendola puoi vedere che tutti gli altri
flag o bit sono impostati su 0 tranne per il
bit SYN e aprendolo puoi vedere, stiamo provando ad impostare una connessione al server in modo che abbiamo una
richiesta di stabilire una connessione messaggio al server.
Nessun altro flag è impostato. Notare che la dimensione della finestra iniziale è
8192 e che si aprono le opzioni, è possibile vedere che MSS o Dimensione massima segmento è impostata su 1460 byte.
La risposta di Google al mio computer sul livello 4 mostra che la porta di origine è 80 e la
porta di destinazione è 58313.
Aprendolo, nota che i flag impostati sono SYN ACK quindi è una
seconda parte dell'handshake a tre vie.
Si noti che il bit di riconoscimento è impostato e il bit
di sincronizzazione è impostato aprendolo, si vede che è una connessione che stabilisce il riconoscimento da parte di Google.
Si noti che la richiesta di dimensioni della finestra è 5720 e se apriamo le opzioni di avviso qui la
dimensione massima del segmento è 1430.
Guardando l'ultima parte della stretta di mano a tre vie,
la mia macchina sta parlando con Google
che apre TCP, puoi vedere che i flag impostati sono solo il bit di riconoscimento e la dimensione della finestra richiesta 64350 85 e osservando l'avviso
di riconoscimento della sequenza si noti che questo è
un riconoscimento.
Tornando al primo passaggio del tremolio della mano a tre
vie, si noti che il numero di sequenza iniziale dalla mia macchina a Google è impostato su 0.
Passando all'intestazione TCP effettiva, notare il numero di sequenza 0.
I google rispondono come un numero di sequenza 0 e il riconoscimento di 1.
Come puoi vedere anche qui.
Così ci stanno facendo sapere, il segmento successivo che si aspettano di ricevere è il segmento 1.
Il nostro riconoscimento per loro è che stiamo inviando il numero di sequenza 1 e stiamo
riconoscendo il numero di sequenza 1.
Questo è quello che abbiamo discusso.
In seguito, quando si riceve notifica di HTTP, stiamo ricevendo informazioni
da Google sulla nostra macchina, il TCP, e
notiamo qui, questo è un segmento TCP dell'Unità Dati Protocollo rimontata.
In altre parole, questo è un frammento.
Guardando il TCP, possiamo vedere le fonti HTTP e la destinazione è il nostro numero di porta.
In altre parole, Google sta inviando il traffico
a noi notare che il numero di
sequenza è 2861, il prossimo numero di sequenza è 3798
e il numero di riconoscimento è 944.
quindi il prossimo numero di sequenza ricorda è 3798 andando alla parte
successiva della nota di
cattura il numero di sequenza qui è 3798 e il numero di sequenza successivo è 5228.
E notate che c'è un riconoscimento dalla nostra macchina
a Google che afferma che prevediamo di ricevere 5228.
E poi alla prossima cattura puoi vedere che la sequenza numero
5228, è stata inviata da Google a noi.
Il prossimo numero di sequenza è 6658, che è il prossimo pezzo ricevuto.
Avviso 6658 è il numero di sequenza ricevuto. 114 Il nostro ospite sta confermando la ricezione
di quello e dicendo che il prossimo bit di dati da ricevere è 7894 che
va alla prossima acquisizione, è possibile vedere che il numero di sequenza è ciò che Google ci ha inviato.
Ora, senza annoiarvi più, spero che
questa cattura vi dia un po 'di informazioni su ciò
che sta realmente accadendo sul filo.
wirehark ricorda un'applicazione gratuita che puoi scaricare, basta cercarla su internet ora ti suggerisco
di catturare un
po 'di traffico sulla tua macchina in
modo che tu possa effettivamente vedere cosa sta succedendo nel sottosuolo.
Allora, cosa abbiamo coperto?
In questa sezione guardiamo i 2 protocolli principali che risiedono nello strato 4.
UDP o User Datagram Protocol e TCP o Transmission Control Protocol.
Ho spiegato i numeri di porta e quali numeri di porta sarebbero stati usati in quali scenari.
Ho spiegato la stretta di mano a tre
vie TCP ho spiegato la finestra e ho spiegato i numeri di sequenza.
Grazie per aver guardato!