J'habite en Chine. Sans VPN, je ne peux pas accéder à de nombreux sites, dont Google, Facebook, etc. Ainsi, j'ai acheté le VPN Astrill et l'ai installé sur mon ordinateur.
Le VPN fonctionne parfaitement, au moins sur mes navigateurs. Je peux accéder à Facebook, Google et à d'autres sites disponibles aux États-Unis sur Firefox et Chromium. Cependant, la ligne de commande du terminal ne semble pas savoir que je suis sur VPN et que je peux accéder aux sites bloqués en Chine.
Par exemple, je peux accéder au fichier robots.txt
De Google en accédant à google.com/robots.txt
Sur un navigateur Web. Cependant, lorsque j'essaie de télécharger le fichier via la ligne de commande en tapant:
wget https://www.google.com/robots.txt
Il est juste coincé là-bas. J'ai également essayé d'écrire un simple script Python avec urllib2.urlopen()
sur une URL et chaque URL bloquée sur laquelle je l'ai essayé m'a donné:
urlopen error [Errno 110] Connection timed out>
Cela m'a fait croire que la ligne de commande du terminal ne reconnaît tout simplement pas que mon VPN est activé et que je fais la demande wget
à partir de mon adresse IP réelle depuis la Chine.
J'ai toujours pensé que VPN est un proxy appliqué à l'échelle du système, et j'ai donc pensé que la ligne de commande du terminal penserait que je ne suis plus en Chine. Il se peut que je me trompe et que je sois mal informé.
Ce qui peut être fait?
J'ai installé quelques applications qui rechercheront la géolocalisation d'une adresse IP:
Sudo apt-get install geoip-bin geoip-database
.
J'ai obtenu mon adresse IP reconnue par la ligne de commande en exécutant hostname -I
.
J'ai donc essayé de rechercher ma géolocalisation en exécutant: geoiplookup $(hostname -I)
Le résultat? GeoIP Country Edition: IP Address not found
J'ai essayé de saisir la même adresse IP avec certaines applications Web sur mon navigateur et comme prévu, pas de chance.
Eh bien, j'ai découvert le problème.
Il s'avère que j'utilisais mon VPN Astrill configuré comme OpenWeb . Cela signifie que le VPN est uniquement tunnelé via les navigateurs Web et ainsi de suite.
J'ai ensuite changé ma configuration en OpenVPN , ce qui signifie "il a des fonctionnalités avancées de routage/tunneling fractionné et peut tunneler toutes les applications sur votre ordinateur . " Toutes les applications signifiant les navigateurs Web, et tout le reste, y compris la ligne de commande du terminal. Maintenant, toutes mes demandes depuis la ligne de commande sont effectuées via le tunnel VPN, et je suis un homme heureux.
Je suppose que la configuration OpenVPN est le "proxy à l'échelle du système" que j'ai toujours pensé être la configuration de tous les VPN. L'utilisation d'OpenWeb explique précédemment pourquoi je ne peux accéder qu'aux sites bloqués de Chine à partir du Web.
Si vous souhaitez en savoir plus sur la différence entre les protocoles VPN - voici ce que Astrill a à dire , mais je ne sais pas si cela s'applique à tous les VPN. Cependant, j'imagine que leurs explications ne varient que légèrement.