Newsgroup: it.comp.os.linux.sys
Titolo: Ipsectools su LAN uguali

Ciao a tutti..
ho un problema
Sto configurando un firewall che gestisce più connessioni vpn verso 
altre sedi e utilizzo ipsec-tools / racoon.
Nessun problema particolare nella configurazione se non chè è venuto 
fuori un problema: ho due net private uguali ma per raggiungerle uso 
come destinazione IP pubblici diversi (perchè sono in 2 sedi separate).
Se nel file di configurazione di ipsec-tool metto due righe con gli 
stessi valori (net private) ovviamente si arrabbia!
Spero di essere stato sufficientemente chiaro...
C'è modo di aggirare il problema?

 C'è modo di aggirare il problema?
Con iptables puoi nattare tutta una classe su un'altra classe IP; con
OpenVPN lo uso, ma non so se si può fare anche con VPN IPSec e questo
può comportare problemi applicativi.
La soluzione *corretta* è cambiare piano di indirizzamento IP in una
delle due sedi.
-- 
Flavio Visentin
Membro del CICAP
Comitato Italiano per il Controllo delle Affermazioni di P4


Io ho avuto lo stesso problema e ho provato ad agggirarlo con  
iptables..... ti consiglio di cambiare rete su una delle due sedi.
-- 
Creato con il rivoluzionario client e-mail di Opera:  
http://www.opera.com/mail/

 
http://www.opera.com/mail/
Sì con il NAT di iptables potrei effettivamente aggirare il problema, 
anche perchè al momento non è attuabile un cambio di indirizzamento in 
una delle 2 sedi.
Studierò qualcosa in tal senso.
Grazie...


Lì per lì non ci ho pensato, ma anche con iptables non risolvo nulla 
perchè dentro al mio script di firewall devo utilizzare entrambe le net 
(che essendo uguali non riesco a distiguere per dirgli "natta questo e 
non quello").
Penso che l'unica soluzione sia il cambio di indirizzamento su una delle 
due net.

 non quello").
Se le comunicazioni devono essere bidirezionali dovresti fare un doppio
nat su entrambi i lati del tunnel. In sintesi ciascun firewall deve
nattare tutto ciò che dalla propria rete locale viene inviato sul tunnel
in modo tale che all'altro firewall arrivino pacchetti che non sono in
conflitto con la propria rete.
                  INET                         INET
                   |                            |
                   |                            |
                ___|___ =>>> 192.168.1.x     ___|___
  LAN1   ______|  FW1  |____________________|  FW2  |________LAN2
192.168.0      |_______|       tunnel       |_______|      192.168.0
                            192.168.2.x <<<=
Nell'esempio FW1 natta i pacchetti provenienti da LAN1 (192.168.0.X) ed
uscenti sul tunnel come 192.168.1.X; FW2 natta i pacchetti provenienti
da LAN2 (192.168.0.Y) ed uscenti sul tunnel come 192.168.2.Y.
Cocì ciascun firewall vede la rete opposta con indirizzi differenti; FW1
vede LAN2 come 
192.168.2.0/24
 mentre FW2 vede LAN1 come 
192.168.1.0/24
.
L'unica cosa che non so è se è possibile fare il nat dei pacchetti
uscenti su una VPN IPSec. Con OpenVPN non c'è problema, con IPSec non so.
-- 
Flavio Visentin
Scientists have finally discovered what's wrong with the female brain:
On the left side, there is nothing right, and on the right side, there
is nothing left.

 
L'idea è quella! E risolverebbe il mio problema ma non si puo' fare un 
NAT statico di un'intera rete, cioè in una regola di questo tipo
$IPTABLES -I POSTROUTING -t nat -s $LAN1 -d $LAN2 -o $INTERFACCIA -j 
SNAT --to-source .......
non posso mettere una net nell'opzione --to-source perchè accetta solo 
indirizzi secchi.
Forse dovrei creare un alias di interfaccia e masquerare i pacchetti che 
passano da quell'interfaccia, ma non otterrei quello che in realtà mi serve.

 indirizzi secchi.
Puoi farlo se hai il supporto al target NETMAP (man iptables).
Alternativamente puoi farlo se fai tutte e 255 le regole di NAT da
ciasuna parte.
LAN1=192.168.0
LAN1=192.168.2
for ((i=0;i<=255;i++)); do
    $IPTABLES -A POSTROUTING -t nat -o $IF -s $LAN1.$i \
       -j SNAT --to-source $LAN2.$i
    $IPTABLES -A PREROUTING -t nat -i $IF -d $LAN2.$i \
       -j DNAT --to-destination $LAN1.$i
done
Ti consiglio inoltre di usare shorewall se vuoi semplicicarti la vita.


 
Per cui mi sembra da matti fare una cosa simile con un ciclo for.
Grazie ancora!!!
Ciao.