Quale livello del modello OSI funziona NAT?


10

Domanda semplice e la risposta è ovviamente il livello 3, ma possiamo dire che PAT sta lavorando sul livello 4 anche perché si occupa di numeri di porta che è una funzione di livello 4?

O è solo un protocollo di livello 3?


"Rete" è la parola chiave. Il livello di rete. Più intrigante: in che modo questa domanda ottiene 6 voti? Hmmm .... (Non sto dicendo che è una domanda terribile, ma certamente non è spettacolare)
Ronnie Royston,

Risposte:


11

NAT funziona al livello 3 perché sta modificando l'intestazione IP. Se si utilizza PAT, si potrebbe sostenere che funziona anche a livello 4 perché POTREBBE cambiare la porta di origine del pacchetto nel caso in cui non sia univoco.

È possibile assegnare NAT a diversi indirizzi interni solo a uno o pochi indirizzi esterni utilizzando una funzione chiamata Port Address Translation (PAT), che viene anche definita "sovraccarico", un sottoinsieme della funzionalità NAT.

PAT utilizza numeri di porta di origine univoci sull'indirizzo IP globale interno per distinguere le traduzioni. Poiché il numero di porta è codificato in 16 bit, il numero totale potrebbe teoricamente essere fino a 65.536 per indirizzo IP.

PAT tenterà di preservare la porta di origine originale, se questa porta di origine è già allocata PAT tenterà di trovare il primo numero di porta disponibile a partire dall'inizio del gruppo di porte appropriato 0-5111, 512-1023 o 1024-65535.

Se non esiste ancora alcuna porta disponibile dal gruppo appropriato e più di un indirizzo IP è configurato, PAT passerà all'indirizzo IP successivo e tenterà di allocare nuovamente la porta di origine originale. Questo continua fino a quando non si esauriscono le porte e gli indirizzi IP disponibili.

Quindi la porta verrà modificata solo nel caso in cui non sia univoca.

Questo link a Cisco è una buona panoramica di NAT.


il fatto è che ho avuto questa domanda in un colloquio di lavoro scritto e ho bisogno di sapere se ho semplicemente pensato a questa semplice domanda ... nat è senza dubbio un protocollo di livello 3 ma PAT e mappatura delle porte statiche funzionano non solo con l'ip ..ho cercato un'affermazione sul dire che nat potrebbe essere il protocollo di livello 4 ma senza fortuna cosa ne pensi? prenderesti quella risposta come una risposta giusta o sbagliata? cisco.com/en/US/tech/tk175/tk15/…
aia87

5
In un'intervista cercherò come un candidato stia ragionando non solo su binari giusti o sbagliati. NAT è livello 3 ma se ragionassi su PAT e livello 4 lo vedrei come una buona conoscenza e non preoccuparti guardando una risposta binaria.
Daniel Dib,

3
Per complicare di più, Linux (etables) e alcuni kit SP (ALU ISAM) supportano l'indirizzo MAC NAT. Quindi praticamente potrebbe essere qualsiasi cosa. Ma certamente normalmente quando le persone dicono NAT intendono NAPT / PAT. Ma è pienamente d'accordo con il candidato di @DanielDib che mostra la comprensione dei concetti piuttosto che le risposte memorizzate.
ytti

3
Inoltre, alcuni NAT devono funzionare al livello 7 se il protocollo da tradurre ha indirizzi incorporati; FTP è un esempio.
Chrylis

Anche "NAT di base" richiede che le modifiche alle intestazioni di livello 4 siano utilizzabili.
Peter Green,

5

Nat è un processo a più livelli. Comprende almeno i livelli 3 (IP) e 4 (TCP, UDP, ecc.). In alcuni casi può anche coinvolgere il livello 7 (applicazione).

Un NAT uno a uno deve almeno modificare gli indirizzi IP (livello 3), i checksum IP (livello 3) e i checksum TCP / UDP (livello 4).

Uno o più NAT hanno bisogno almeno di modificare gli indirizzi IP (layer 3), checksum IP (layer 3), porte TCP / UDP (layer 4) e checksum TCP / UDP (layer 4).

Un NAT così minimo romperà molte cose (ad esempio ftp in modalità attiva). La maggior parte dei NAT andrà quindi oltre le nozioni di base ed eseguirà anche la traduzione e il monitoraggio di almeno alcuni indirizzi IP nei dati dell'applicazione (livello 7).


0

Pensa a come questo deve essere coerente tra i pacchetti dallo stesso dispositivo ... almeno all'interno delle sessioni. Potresti quindi sostenere che dovresti posizionarlo al livello 5 o anche più in alto. Solo perché tende a modificare le intestazioni IP non dovrebbe escluderlo dalla considerazione dei livelli superiori. I livelli inferiori potrebbero non sapere nulla dei livelli superiori, ma i livelli superiori possono conoscere e manipolare quelli inferiori. In effetti, il livello 6 sembra appropriato. Da Wikipedia:

Le entità a livello di applicazione possono utilizzare sintassi e semantica diverse se il servizio di presentazione fornisce una grande mappatura tra di esse.

La mappatura tra gli indirizzi, anche se gli indirizzi sono al livello 3 anziché al livello 7, sembra una cosa da fare a livello di presentazione.


Non esiste un sistema operativo che ha implementato livelli separati da 5 a 7. In poche parole, i livelli da 5 a 7 sono implementati come un singolo livello di applicazione.
Ron Maupin
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.