Sono confuso qual è la differenza effettiva tra SNAT e Masquerade?
Se desidero condividere la mia connessione Internet sulla rete locale, se devo selezionare SNAT o Masquerade?
Sono confuso qual è la differenza effettiva tra SNAT e Masquerade?
Se desidero condividere la mia connessione Internet sulla rete locale, se devo selezionare SNAT o Masquerade?
Risposte:
Il SNATtarget richiede di assegnargli un indirizzo IP da applicare a tutti i pacchetti in uscita. Il MASQUERADEtarget ti consente di dargli un'interfaccia e qualunque indirizzo sia su quell'interfaccia è l'indirizzo che viene applicato a tutti i pacchetti in uscita. Inoltre, con SNAT, il tracciamento delle connessioni del kernel tiene traccia di tutte le connessioni quando l'interfaccia viene rimossa e ripristinata; lo stesso non vale per il MASQUERADEbersaglio.
Buoni documenti includono gli HOWTO sul sito Netfilter e la iptablespagina man .
-j SNAT(al contrario del tracciamento del riciclaggio con -j MASQUERADE) quando una nuova connessione in uscita da un nodo LAN utilizza lo stesso numero di porta di origine della connessione in uscita interrotta dallo stesso nodo LAN. In tal caso, posso immaginare che i pacchetti in arrivo dalla vecchia connessione in uscita vengano inviati al nodo, confondendo il suo stack TCP. Per quanto riguarda il vantaggio di -j SNAT, cosa succede se la NAT box è configurata con lo stesso indirizzo IP esterno e il kernel continua a inoltrare i pacchetti dalle vecchie connessioni invece di rispondere con RST?
Fondamentalmente SNATe MASQUERADEfai la stessa cosa NAT sorgente nella tabella nat all'interno della catena POSTROUTING.
differenze
MASQUERADEnon richiede in --to-sourcequanto è stato progettato per funzionare con IP assegnati dinamicamente
SNAT funziona solo con IP statici, ecco perché --to-source
MASQUERADEha un sovraccarico extra ed è più lento rispetto a SNATquando ogni MASQUERADEtarget viene colpito da un pacchetto, deve controllare l'indirizzo IP da usare.
NOTA : un tipico caso d'uso per MASQUERADE: istanza AWS EC2 in un VPC, ha un IP privato all'interno del VPC CIDR (ad es. 10.10.1.0/24) - ad esempio 10.10.1.100, ha anche un IP pubblico per comunicare con Internet (supponiamo che sia in una sottorete pubblica) attraverso il quale il NAT privato 1: 1 NAT. L'IP pubblico può cambiare dopo il riavvio dell'istanza (se NON è un EIP), MASQUERADEè un'opzione migliore in questo caso d'uso.
Importante: è ancora possibile utilizzare la MASQUERADEdestinazione con IP statico, tenere presente l'overhead aggiuntivo.
Riferimenti