Newsgroup: it.comp.reti.locali
Titolo: Route persistenti

Ciao, mi scuso in anticipo se arrivo con una domanda, oltretutto (presumo)
banale.
 
Da qualche tempo uso una VPN (SoftEther) per accedere alla rete aziendale
da casa. Diciamo che la rete aziendale sia 192.168.1.* mentre la rete
domestica sia 192.168.2.*.
 
Quando la connessione VPN non è stabilita, il route di default ovviamente
"punta" alla rete domestica:
 
route print
[...]
IPv4 Tabella route
===========================================================================
Route attive:
Indirizzo rete   Mask       Gateway      Interfaccia     Metrica
0.0.0.0          0.0.0.0    192.168.2.1  192.168.2.165   46
[...]
 
Quando SoftEther stabilisce la connessione VPN, viene automaticamente
modificato il route di default verso la VPN (non so se sia "colpa" di
SoftEther o se sia un comportamento normale di Windows):
 
route print
[...]
IPv4 Tabella route
===========================================================================
Route attive:
Indirizzo rete   Mask       Gateway      Interfaccia     Metrica
0.0.0.0          0.0.0.0    192.168.1.1  192.168.1.153   2
[...]
 
Questo fa sì che anche l'accesso a Internet passi per la VPN, il che
comporta ovviamente un rallentamento orribile oltre che traffico inutile
che passa per la VPN.
 
Per ovviare alla cosa, dopo la connessione lancio uno script che ripristina
la route di default sulla rete domestica:
 
route change 0.0.0.0 mask 0.0.0.0 192.168.2.1
 
Il tutto funziona correttamente.
Il problema è che ogni volta che salta la connessione VPN (e SoftEther la
ripristina), viene ripristinato anche il route 0.0.0.0 verso la VPN, e non
ho trovato nessun modo per evitarlo. Usando lo switch -p viene creata una
route permanente, ma se scollego e ricollego la VPN mi ritrovo in questa
situazione:
 
route print
[...]
IPv4 Tabella route
===========================================================================
Route attive:
Indirizzo rete   Mask       Gateway      Interfaccia     Metrica
0.0.0.0          0.0.0.0    192.168.1.1  192.168.1.153   2
[...]
===========================================================================
Route permanenti:
Indirizzo rete   Mask       Indir. gateway    Metrica
0.0.0.0          0.0.0.0    192.168.2.1       1
===========================================================================
[...]
 
Sebbene la route permanente abbia metrica inferiore, Windows se ne frega e
gira tutte le richieste alla VPN.
 
Due domande:
 
1) Perché non viene data priorità al route permanente?
2) Come faccio a ottenere di dare sempre priorità al route di default
sull'interfaccia 192.168.2.*?
 
Grazie!
 
-- 
Fletto i muscoli e sono nel vuoto.


Da' un'occhiata qua:
https://blog.boringit.com/2014/02/softether-vpn-client-default-route.html
 

 
https://blog.boringit.com/2014/02/softether-vpn-client-default-route.html
 
 
Grazie, funziona perfettamente!


 
https://blog.boringit.com/2014/02/softether-vpn-client-default-route.html
 
 
L'alternativa (più macchinosa) in Windows 7/8/10 è quella di agganciare
agli eventi di connessione rete uno script; in tal caso bisognerà
creare un nuovo task nello schedulatore ed impostare la modalità di
avvio di tale task all'apparizione dell'evento desiderato in eventlog,
a quel punto lo script potrà verificare quale connessione sia stata
attivata e, se necessario, manipolare la tabella di routing
 
Ovvio, è più complicato, d'altro canto permette di fare parecchie altre
cose, se necessario ;-)
 
 
 
 

 tabella di routing
 
per dire
 
nuova attività, attivazione su evento... etc ... l'attività lancia un
batch che potrebbe contenere ad esempio qualcosa del tipo
 
@echo off
:
rem --- controlla se VPN attiva
rasdial|find /I "nomevpn" >NUL 2>&1
if errorlevel 1 goto QUIT
:
rem --- connessione VPN attiva
route change 0.0.0.0 mask 0.0.0.0 192.168.2.1
:
:QUIT
rem --- uscita
exit
 
 

 attivata e, se necessario, manipolare la tabella di routing
 
Avevo pensato a una cosa simile ma molto più ignorante, ossia di creare un
task periodico che lanciasse il comando tipo una volta al minuto. :-)
 
Credo anche di avere capito perché nel mio tentativo precedente il route
persistente non avesse la priorità sebbene avesse una metrica inferiore. Il
route "dinamico" era bindato a un'interfaccia specifica mentre il route
persistente era generico, per cui probabilmente veniva data la priorità al
primo in quanto il "matching" era maggiore.


 minuto. :-)
 
Un massacro :) - no sul serio, visto che il task scheduler di windows
permette di far partire un task al verificarsi di un evento, credo sia
meglio sfruttare tale possibilità, tra l'altro è comoda anche per altri
scopi, ad esempio (vado OT) si può usare anche per monitorare una
cartella del filesystem ed avviare uno script/programma quando viene
copiato nella cartella un nuovo file... ed altro ancora