Vorrei ritornare sull'argomento PPTP tramite router mikrotik ( ne ho parlato in questo post qualche giorno fa ) perchè ho scoperto un difetto parecchio rilevante.
Se avete seguito la mia guida potete constatare, oltre al fatto che la connessione viene stabilita, che quando siete collegati ad una PPTP il vostro IP pubblico è errato. Questo succedere perchè il mikrotik al quale vi collegate per stabilire la VPN diventa il gateway predefinito del computer, e quindi sarà proprio questo a risolvere tutte le vostre richieste. Questo si traduce in un'introduzione di latenza assai elevata, in quando il traffico viene trasmesso al mikrotik per poi tornare indietro. Ad esempio se doveste scaricare un file mentre la vostra connessione VPN fosse in piedi la velocità massima del download sarebbe dettata dalla linea adsl su cui il mikrotik è collegato. E non quella dove il computer che instaura la VPN è collegato. Una cosa parecchio fastidiosa.
La cosa è semplicemente risolvibile. Andate nel Centro di connessioni di rete e condivisione di Windows e selezionate "Proprietà" della connessione VPN tramite il tasto destro del mouse. Ora andate nella tab Rete e selezionate "Protovollo internet versione 4" e premente il tasto Proprietà.
Premete Avanzate.
Nella finestra che vi apparirà togliete la spunta a "Usa gateway predefinito sulla rete remota".
Date Ok ed uscite.
A questo punto se proverete a connettervi tramite la VPN noterete che la connessione viene stabilita ma non riuscirete a raggiungere nessun indirizzo della rete remota. Se però pingate l'indirizzo del tunnel ( 10.10.10.10 se avete seguito la mia guida ) avrete risposta.
Il problema ora sta proprio qua, ossia nelle impostazioni dell'utente PPTP nel mikrotik. L'indirizzo 10.10.10.10 non viene risolto dal PC, e dato che abbiamo tolto la spunta che imponeva di usare il gateway della rete remota come predefinito non può venir risolto neanche dal mikrotik. Questo significa che tutti i pacchetti inviati tramite il tunnel andranno persi. La soluzione più semplice che ho travato è di modificare i valori di "Locale Address" e "Remote Address" nella configurazione dell'utente PPTP nel mk.
Nella guida precedente questo era rappresentato da questa stringa:
ppp secret add comment="VPN PPTP casa" name=mioutente service=pptp password=miapassword profile=default-encryption local-address=10.10.10.10 remote-address=10.10.10.11
Noi dovremmo semplicemente modificare i valori 10.10.10.10 e 10.10.10.11 sostituendoli con due indirizzi ip locali della nostra rete. Questo significa che se il router ha un indirizzo 192.168.1.1, allora dovremo impostare quei due parametri con i seguenti valori: 192.168.1.200 e 192.168.1.201 ( valori assolutamente d'esempio, potete usare qualsiasi indirizzo nel range 1-254, basta che non sia già impegnato ).
ppp secret add comment="VPN PPTP casa" name=mioutente service=pptp password=miapassword profile=default-encryption local-address=192.168.1.200 remote-address=192.168.1.201
Ora la vostra VPN funzionerà correttamente e non avrete più il problema descritto all'inizio di questo post.
Altra soluzione
In realtà esistono altre soluzioni, della serie "facciamoci un po' del male". Una di questa è aggiungere una route statica in Windows. Questa dice che tutti i pacchetti che devono andare alla rete 192.168.1.0/24 passano attraverso 10.10.10.10. Dovrete quindi dare il seguente comando da cmd.
Il comando si rifà agli esempi citati sopra. Il mikrotik si trova nella rete 192.168.1.0 e l'ip del tunnel è 10.10.10.10.
ppp secret add comment="VPN PPTP casa" name=mioutente service=pptp password=miapassword profile=default-encryption local-address=10.10.10.10 remote-address=10.10.10.11
Questa soluzione funziona, peccato che sia davvero scomoda in quanto deve essere implementata su ogni computer che in futuro si collegherà alla VPN.