La seguente problematica mi è capitata al lavoro, dopo che una sede mi ha richiesto di far navigare solo un singolo host di una determinata rete afferente ad un link VPN.
Supponiamo di avere una rete del genere:
Interfacce sui router: LAN: FastEthernet0/0 WAN-VPN: Serial0/0 Sede A: 10.1.1.0/24 Sede B: 10.1.2.0/24 P-t-P Link: x.y.z.k/30
Le due sedi comunicano tramite un tunnel VPN IPsec. Non staremo quì a coprire la configurazione di una VPN con IPsec e ISAKMP ma, cosa succede se si vuole far uscire su internet un host della sede A tramite NAT? Cisco IOS processa prima le rules del NAT e dopo quelle della VPN, cambiando l’indirizzo L3 sorgente del pacchetto con l’Inside Global Address (x.y.z.k) causando quindi il non-match dell’ip sorgente che attiva il tunnel IPsec. A questo punto dobbiamo configurare IOS in modo che il NAT sia negato per il traffico attraverso il link VPN e permesso invece per tutto il resto. Di seguito, la config:
ip nat inside source list NAT-VPN interface Serial0/0 overload ! ip access-list extended NAT-VPN deny ip 10.1.1.0 0.0.0.255 10.1.2.0 0.0.0.255 permit ip host 10.1.0.x any !