Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
linuxaddict:administrer:reseau:novpnfor [13/12/2017, 23:13] – Claude Clerc | linuxaddict:administrer:reseau:novpnfor [10/08/2022, 01:53] (Version actuelle) – Claude Clerc | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Ne pas passer par le VPN pour certains domaines ====== | ====== Ne pas passer par le VPN pour certains domaines ====== | ||
- | Certains | + | Certains |
- | Ou bien, si votre VPN ralentit votre connexion, vous préférez ne pas passer par celui-ci pour télécharger des fichiers (mises à jour de paquets, | + | Ou bien, si votre VPN ralentit votre connexion, vous préférez ne pas passer par celui-ci pour télécharger des fichiers (mises à jour de paquets, par exemple). |
Voici comment faire : | Voici comment faire : | ||
+ | |||
+ | Installer les paquets iproute2 et traceroute : | ||
+ | apt install iproute2 traceroute | ||
Créez le fichier ''/ | Créez le fichier ''/ | ||
Ligne 26: | Ligne 29: | ||
extras.ubuntu.com | extras.ubuntu.com | ||
archive.canonical.com | archive.canonical.com | ||
+ | www.netflix.com | ||
</ | </ | ||
Ensuite, créez le fichier ''/ | Ensuite, créez le fichier ''/ | ||
- | <code> | + | <sxh bash># |
- | #!/bin/sh | + | |
NOVPNFOR=/ | NOVPNFOR=/ | ||
+ | IP_ROUTEUR=192.168.0.254 | ||
+ | |||
export NOVPNFOR | export NOVPNFOR | ||
+ | export IP_ROUTEUR | ||
+ | |||
if [ ! -f $NOVPNFOR ]; then | if [ ! -f $NOVPNFOR ]; then | ||
exit 0 | exit 0 | ||
Ligne 42: | Ligne 49: | ||
fi | fi | ||
- | for site in `cat $NOVPNFOR | tr " | + | RT_TABLE9=$(echo -n $(cat / |
- | ## Dé-commenter en cas d' | + | if [ " |
- | #service apparmor restart & | + | echo " |
+ | fi | ||
+ | if [ ! -f / | ||
+ | # echo -n $(stat -c %Y $NOVPNFOR) > / | ||
+ | touch / | ||
+ | fi | ||
+ | |||
+ | TSTAMP_OLD=" | ||
+ | TSTAMP_NEW=$(echo -n $(stat -c %Y $NOVPNFOR)) | ||
+ | FIRST_LINE=$(echo -n $(ip route show table specialvpn | tail -1)) | ||
+ | echo " | ||
+ | echo " | ||
+ | if [ " | ||
+ | for site in $(cat $NOVPNFOR | tr " | ||
+ | #route add -host $site gw 192.168.0.254 | ||
+ | for anip in $(host -c IN $site | awk ' | ||
+ | if [ " | ||
+ | echo $anip | ||
+ | ip route add $anip via $IP_ROUTEUR table specialvpn | ||
+ | fi | ||
+ | }; done | ||
+ | }; done | ||
+ | echo -n $(stat -c %Y $NOVPNFOR) > / | ||
+ | }; fi | ||
+ | |||
+ | SPECIALVPN_PRESENT=$(echo -n $(ip rule list | grep specialvpn)) | ||
+ | if [ " | ||
+ | ip rule add table specialvpn | ||
+ | fi | ||
+ | #service apparmor restart & | ||
exit 0 | exit 0 | ||
- | </code> | + | |
+ | </sxh> | ||
Rendez ce fichier exécutable : | Rendez ce fichier exécutable : | ||
Ligne 54: | Ligne 91: | ||
Enfin, créez le fichier ''/ | Enfin, créez le fichier ''/ | ||
- | <code> | + | <sxh bash># |
- | #!/bin/sh | + | |
NOVPNFOR=/ | NOVPNFOR=/ | ||
Ligne 67: | Ligne 103: | ||
fi | fi | ||
- | for site in `cat $NOVPNFOR | tr " | + | RT_TABLE9=$(echo -n $(cat / |
- | ## Dé-commenter en cas d' | + | if [ " |
- | #service apparmor restart & | + | echo " |
+ | fi | ||
+ | |||
+ | SPEC_VPN=$(echo -n $(ip rule list | grep specialvpn)) | ||
+ | |||
+ | if [ " | ||
+ | ip rule del table specialvpn | ||
+ | fi | ||
+ | |||
+ | if [ ! -f / | ||
+ | touch / | ||
+ | fi | ||
+ | |||
+ | TSTAMP_OLD=" | ||
+ | TSTAMP_NEW=$(echo -n $(stat -c %Y $NOVPNFOR)) | ||
+ | |||
+ | if [ " | ||
+ | ip route flush table specialvpn | ||
+ | fi | ||
exit 0 | exit 0 | ||
- | </code> | + | |
+ | </sxh> | ||
Rendez ce fichier exécutable : | Rendez ce fichier exécutable : | ||
Ligne 79: | Ligne 134: | ||
Vous pouvez tester ces scripts avec les commandes : | Vous pouvez tester ces scripts avec les commandes : | ||
- | | + | <sxh bash> |
+ | # On suppose que vous êtes connecté au VPN. | ||
+ | | ||
+ | sudo traceroute -m 1 DOMAINE_LISTÉ | ||
+ | # Les deux commandes ci-dessus retournent l'IP du routeur de votre fournisseur de VPN. | ||
sudo IFACE=tun0 / | sudo IFACE=tun0 / | ||
- | sudo route | + | sudo traceroute -m 1 DOMAINE_NON_LISTÉ |
+ | # La commande ci-dessus retourne l'IP du routeur de votre fournisseur de VPN. | ||
+ | sudo traceroute -m 1 DOMAINE_LISTÉ | ||
+ | # La commande ci-dessus retourne l'IP de votre routeur. (Pas de VPN pour ce domaine.) | ||
sudo IFACE=tun0 / | sudo IFACE=tun0 / | ||
- | sudo route | + | sudo traceroute -m 1 DOMAINE_NON_LISTÉ |
+ | sudo traceroute -m 1 DOMAINE_LISTÉ | ||
+ | # Les deux commandes ci-dessus retournent l'IP du routeur de votre fournisseur de VPN | ||
+ | # si vous êtes connecté au VPN, de votre routeur sinon. | ||
+ | </ | ||
+ | où DOMAINE_NON_LISTÉ est un domaine qui ne fait pas partie de la liste contenue dans / | ||
+ | |||
+ | Le script ''/ | ||
+ | |||
+ | Le script ''/ | ||
+ | |||
+ | ---- | ||
+ | |||
+ | {{counter|today| personne a visité cette page aujourd' | ||
+ | ~~YOURIP_BOX~~ |