Discussione:
VPN e routing
(troppo vecchio per rispondere)
Michele xjp
2008-02-27 08:53:00 UTC
Permalink
Ciao,
supponiamo di avere una situazione schematizzata come segue:
- A: PC dietro firewall/NAT; il firewall permette di uscire soltanto sulla
porta 80;
- B: PC dietro router/NAT; nessuna restrizione sull'uscita.

Attraverso Hamachi, ho impostato una VPN tra A e B.

E' possibile fare in modo che:
mi trovo su A, apro determinati programmi che non escono sulla 80 (ad
esempio: FTP), in automatico viene usata la connessione di B (tutti i dati
viaggiano sulla VPN).

Il sistema operativo di A e' Windows XP. Il sistema operativo di B (ma non
credo che c'entri) e' Windows XP.

Come posso fare?
Grazie
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad ***@newsland.it
Alessandro -oggei- Ogier
2008-02-27 11:41:15 UTC
Permalink
Post by Michele xjp
Attraverso Hamachi, ho impostato una VPN tra A e B.
mi trovo su A, apro determinati programmi che non escono sulla 80 (ad
esempio: FTP), in automatico viene usata la connessione di B (tutti i
dati viaggiano sulla VPN).
no, pero' puoi ruotare tutto il traffico sulla vpn. Dovrai alzare una
rotta statica che usi per l'host dove termini il gw originale, e
riconfigurare il default gw sull'altro endpoint della vpn.


ciao,
--
oggei
Michele
2008-02-27 17:48:32 UTC
Permalink
Post by Alessandro -oggei- Ogier
Post by Michele xjp
Attraverso Hamachi, ho impostato una VPN tra A e B.
mi trovo su A, apro determinati programmi che non escono sulla 80 (ad
esempio: FTP), in automatico viene usata la connessione di B (tutti i
dati viaggiano sulla VPN).
no, pero' puoi ruotare tutto il traffico sulla vpn. Dovrai alzare una
rotta statica che usi per l'host dove termini il gw originale, e
riconfigurare il default gw sull'altro endpoint della vpn.
Scusa ma non mi torna.
[- A: PC dietro firewall/NAT; il firewall permette di uscire soltanto sulla
porta 80;
- B: PC dietro router/NAT; nessuna restrizione sull'uscita.]

Su A ho due connessioni di rete (una fittizia):
- ho una rete locale (su cui posso uscire solo sulla 80)
- ho una VPN (che si appoggia sulla rete locale per uscire su Internet)

Su B ho due connessioni di rete (una fittizia):
- ho una rete locale (nessuna restrizione)
- ho una VPN (che si appoggia sulla rete locale per uscire su Internet)

Su A e su B, entrambe le connessioni di rete hanno un gateway etc.
Ora, su A, come posso dire che Windows deve instradare TUTTO il traffico
sulla VPN e non sulla rete locale? Pur non disabilitando la rete locale,
altrimenti la VPN *non* funziona.

Grazie
newstre
2008-02-28 09:01:44 UTC
Permalink
Post by Michele
Post by Alessandro -oggei- Ogier
Post by Michele xjp
Attraverso Hamachi, ho impostato una VPN tra A e B.
mi trovo su A, apro determinati programmi che non escono sulla 80 (ad
esempio: FTP), in automatico viene usata la connessione di B (tutti i
dati viaggiano sulla VPN).
no, pero' puoi ruotare tutto il traffico sulla vpn. Dovrai alzare una
rotta statica che usi per l'host dove termini il gw originale, e
riconfigurare il default gw sull'altro endpoint della vpn.
Scusa ma non mi torna.
[- A: PC dietro firewall/NAT; il firewall permette di uscire soltanto sulla
porta 80;
- B: PC dietro router/NAT; nessuna restrizione sull'uscita.]
- ho una rete locale (su cui posso uscire solo sulla 80)
- ho una VPN (che si appoggia sulla rete locale per uscire su Internet)
- ho una rete locale (nessuna restrizione)
- ho una VPN (che si appoggia sulla rete locale per uscire su Internet)
Su A e su B, entrambe le connessioni di rete hanno un gateway etc.
Ora, su A, come posso dire che Windows deve instradare TUTTO il traffico
sulla VPN e non sulla rete locale? Pur non disabilitando la rete locale,
altrimenti la VPN *non* funziona.
Grazie
ci sono delle guide semplici che spiegano il tutto?

oppure un libro semplice ma ben fatto che spieghi tutto sulle reti NAT
porte etc?
Alessandro -oggei- Ogier
2008-02-28 09:17:49 UTC
Permalink
Su A ho due connessioni di rete (una fittizia): - ho una rete locale (su
cui posso uscire solo sulla 80) - ho una VPN (che si appoggia sulla rete
locale per uscire su Internet)
Su B ho due connessioni di rete (una fittizia): - ho una rete locale
(nessuna restrizione) - ho una VPN (che si appoggia sulla rete locale
per uscire su Internet)
Su A e su B, entrambe le connessioni di rete hanno un gateway etc. Ora,
su A, come posso dire che Windows deve instradare TUTTO il traffico
sulla VPN e non sulla rete locale? Pur non disabilitando la rete locale,
altrimenti la VPN *non* funziona.
infatti *non* devi /disabilitarla/, devi *riconfigurare* il routing.

diciamo che A ha un $IP_A e un $VPN_IP_A, e B un $IP_B e un $VPN_IP_B

al momento la rete su A avra' almeno come gateway predefinito un ip sulla
lan di $IP_A, quindi:

0.0.0.0/0 via $GW_A

devi prima di tutto configurare una rotta statica verso $IP_B, che usi
$GW_A, a quel punto puoi togliere il $GW_A come default e mettere
$VPN_IP_B.

Per usare la formattazione di 'route print' nelle parti rilevanti:

Rete Netmask: Gateway:

$IP_B 255.255.255.255 $GW_A
Predefinito: $VPN_IP_B

quindi matchi il "vecchio default gw" per il traffico verso l'altro
endpoint reale col quale termini la vpn, e tutto il resto gira dentro.

se usi openvpn puoi farlo configurando opportunamente le cose, credo
anche con altri software.

ciao,
--
oggei
antani
2008-02-28 09:46:11 UTC
Permalink
Post by Michele
Scusa ma non mi torna.
[- A: PC dietro firewall/NAT; il firewall permette di uscire soltanto
[sulla
porta 80;
- B: PC dietro router/NAT; nessuna restrizione sull'uscita.]
- ho una rete locale (su cui posso uscire solo sulla 80)
- ho una VPN (che si appoggia sulla rete locale per uscire su Internet)
- ho una rete locale (nessuna restrizione)
- ho una VPN (che si appoggia sulla rete locale per uscire su Internet)
Su A e su B, entrambe le connessioni di rete hanno un gateway etc.
Ora, su A, come posso dire che Windows deve instradare TUTTO il traffico
sulla VPN e non sulla rete locale? Pur non disabilitando la rete locale,
altrimenti la VPN *non* funziona.
Ovvio. Devi prima mettere, su A, una host route statica per raggiungere l'IP
pubblico di B, in modo che l'IP privato di B attraverso la VPN sia
raggiungibile. Questa host route puntera' probabilmente a quello che A vede
come default gateway.

Fatto questo, puoi togliere il default gateway di A e sostituirlo con l'IP
virtuale di B (che sara' ancora raggiungibile grazie alla route statica che
hai messo prima).

Prima di fare tutto scriviti la tabella di routing di A in modo che se
qualcosa va storto tu possa poi ripristinarla.

Ovviamente, B deve avere il routing attivato e, da qualche parte, bisognera'
pure che gli IP privati vengano nattati.
Michele
2008-02-28 11:57:56 UTC
Permalink
Post by antani
Ovvio. Devi prima mettere, su A, una host route statica per raggiungere l'IP
pubblico di B, in modo che l'IP privato di B attraverso la VPN sia
raggiungibile. Questa host route puntera' probabilmente a quello che A vede
come default gateway.
Fatto questo, puoi togliere il default gateway di A e sostituirlo con l'IP
virtuale di B (che sara' ancora raggiungibile grazie alla route statica che
hai messo prima).
Prima di fare tutto scriviti la tabella di routing di A in modo che se
qualcosa va storto tu possa poi ripristinarla.
Ovviamente, B deve avere il routing attivato e, da qualche parte, bisognera'
pure che gli IP privati vengano nattati.
Ok. Tutto questo come si fa da Windows? Con il comando route?
Grazie
antani
2008-02-28 12:57:47 UTC
Permalink
Post by Michele
Post by antani
Ovvio. Devi prima mettere, su A, una host route statica per raggiungere
l'IP pubblico di B, in modo che l'IP privato di B attraverso la VPN sia
raggiungibile. Questa host route puntera' probabilmente a quello che A
vede come default gateway.
Fatto questo, puoi togliere il default gateway di A e sostituirlo con
l'IP virtuale di B (che sara' ancora raggiungibile grazie alla route
statica che hai messo prima).
Prima di fare tutto scriviti la tabella di routing di A in modo che se
qualcosa va storto tu possa poi ripristinarla.
Ovviamente, B deve avere il routing attivato e, da qualche parte,
bisognera' pure che gli IP privati vengano nattati.
Ok. Tutto questo come si fa da Windows? Con il comando route?
Grazie
Con il comando route. route /help ti mostra la sintassi.
(suppongo che la VPN esca da A sulla porta 80, altrimenti non vedo come
potrebbe funzionare se tutto il resto e' bloccato per A)

Dovrai fare qualcosa del genere su A:

route print

(per vedere com'e' attualmente: magari scrivitela e segnati i numeri delle
interfacce che appaiono all'inizio)

route add $ip_pubblico_di_B mask 255.255.255.255 $default_gw_di_A if
$interfaccia_fisica_di_A

(tutto sulla stessa riga)

route delete 0.0.0.0 (occhio: se sei collegato da remoto questo potrebbe
disconnetterti!!)

e infine

route add 0.0.0.0 mask 0.0.0.0 $ip_privato_di_B if $interfaccia_vpn_di_A

...e spera che il tuo network admin non cominci a fare analisi del
traffico :-)

Ciao

Continua a leggere su narkive:
Loading...