Où se trouve le paramètre «Envoyer tout le trafic via une connexion VPN» dans OSX 10.9 Mavericks?

17

J'essaie de modifier les paramètres d'une connexion VPN Cisco IPSec qui a été configurée via le client VPN intégré d'OSX dans les préférences système. Le VPN fonctionne comme prévu, ce qui me permet d'accéder aux serveurs protégés de mon entreprise. Je voudrais accéder à d'autres sites Web sur Internet via ce VPN (youtube, wikipedia, peu importe). Pour autant que je sache, ma navigation Web habituelle n'est pas dirigée via le VPN.

Cette page de support Apple indique qu'il existe un paramètre appelé "Envoyer tout le trafic via une connexion VPN" qui peut être activé via la boîte de Apple menu > System Preferences > Network > Advanced > Optionsdialogue. Cependant, lorsque je sélectionne le VPN dans la liste des interfaces réseau et que je clique sur le bouton "Avancé ...", il n'y a ni onglet ni bouton "Options". Je vois un dialogue avec deux onglets, "DNS" et "Proxies". Il n'y a aucun bouton d'options ou "Envoyer tout le trafic via une connexion VPN" n'importe où.

Alors, qu'est-ce qui donne? Est-ce que cela a à voir avec le type de VPN auquel je suis connecté (Cisco IPSec)? Est-ce lié aux paramètres du VPN? Quoi qu'il en soit, comment puis-je acheminer la navigation normale via le VPN?

Pwnosaurus
la source
De quel type de connexion VPN s'agit-il? Dans certains cas, tout le trafic sera envoyé via la connexion VPN de toute façon (lorsqu'elle est active), donc l'option est obsolète (et donc non disponible). Exemple: Cisco VPN ... aucune option. VPN (PPTP) ... option disponible.
sdmeyers
@sdmeyers ne sait pas vraiment quel type de connexion. Tout ce que je vois, c'est "Cicsco IPSec". Où puis-je vérifier le type de paramètre? Sur la base de ma compréhension (limitée) des VPN, je pense cependant que mon trafic n'est pas acheminé via celui-ci. Le serveur VPN est situé aux États-Unis et lorsque je recherche mon adresse IP actuelle, je constate que l'hôte se trouve dans le pays non américain dans lequel je me trouve actuellement.
Pwnosaurus
1
Google "Quelle est mon IP" pour voir votre adresse IP publique avant et après la connexion à votre VPN, cela devrait être différent ici. Le VPN ne changera pas votre adresse IP locale.
sdmeyers
Le client Cisco IPSec de Mac semble se comporter exactement comme souhaité - le serveur VPN fournit la liste des itinéraires protégés et ceux-ci sont ajoutés à la table de routage système de Mac. Ayant le problème opposé ici cependant ... J'ai des routes 10.xxxx et 172.xxx dans mon netstat -rn, mais je ne suis en quelque sorte autorisé qu'à accéder à 10 - pas 172.
tishma

Réponses:

11

Je suppose que toutes les connexions VPN du client VPN intégré à Mac n'ont pas cette option.

Le PPTP et le L2TP offrent l'option: Ouvrez vos paramètres réseau:

entrez la description de l'image ici

Sélectionnez votre connexion VPN et cliquez sur le bouton avancé.

Une nouvelle fenêtre apparaîtra avec trois cases à cocher sous le titre "Options de session". La dernière de ces cases à cocher est celle que vous souhaitez: "rediriger tout le trafic via VPN".

Cependant, comme vous l'avez dit. Le bouton avancé ne s'affiche pas avec Cisco IPSec.

J'ai trouvé ce fil ( /superuser/91191/how-to-force-split-tunnel-routing-on-mac-to-a-cisco-vpn ) qui pourrait peut-être être une réponse à votre problème (si vous l'utilisez pour router toute la plage ip):

Quelqu'un sait comment pirater la table de routage (sur un Mac) pour vaincre le forçage du routage VPN pour tout sur un VPN Cisco? à peu près ce que je veux faire, c'est avoir seulement des adresses 10.121. * et 10.122. * sur le VPN et tout le reste directement sur Internet.

Ce qui suit fonctionne pour moi. Exécutez-les après vous être connecté au VPN Cisco. (J'utilise le client Cisco intégré d'OS X, pas le client de marque Cisco.)

sudo route -nv add -net 10 -interface utun0
sudo route change default 192.168.0.1

Remplacez «10» dans la première commande par le réseau qui se trouve de l'autre côté du tunnel.

Remplacez "192.168.0.1" par la passerelle de votre réseau local.

Je l'ai mis dans un script bash, comme ceci:

$ cat vpn.sh 
#!/bin/bash

if [[ $EUID -ne 0 ]]; then
    echo "Run this as root"
    exit 1
fi

route -nv add -net 10 -interface utun0
route change default 192.168.0.1

J'ai également trouvé une explication sur la façon de l'exécuter automatiquement lorsque vous connectez le VPN, mais il est tard vendredi et je n'ai pas envie de l'essayer :)

https://gist.github.com/675916

Éditer:

Depuis, j'ai quitté le travail où j'utilisais le VPN Cisco, c'est donc de mémoire.

Le "10" dans la première commande est le réseau que vous souhaitez acheminer via le VPN. "10" est l'abréviation de "10.0.0.0/8". Dans le cas de Tuan Anh Tran, il semble que le réseau soit "192.168.5.0/24".

Quant à la passerelle à spécifier dans la deuxième commande, elle doit être votre passerelle locale. Lorsque vous vous connectez à un VPN qui empêche le tunneling fractionné, il applique cette stratégie en modifiant vos tables de routage afin que tous les paquets soient routés sur l'interface virtuelle. Vous souhaitez donc modifier votre itinéraire par défaut pour revenir à ce qu'il était avant d'accéder au VPN.

Le moyen le plus simple de déterminer la passerelle est d'exécuter netstat -rn avant de vous connecter au VPN et de regarder l'adresse IP à droite de la destination "par défaut". Par exemple, voici à quoi cela ressemble sur ma boîte en ce moment:

Internet:
Destination        Gateway            Flags        Refs      Use   Netif Expire
default            10.0.1.1           UGSc           29        0     en1
10.0.1/24          link#5             UCS             3        0     en1
10.0.1.1           0:1e:52:xx:xx:xx   UHLWIi         55   520896     en1    481
10.0.1.51          7c:c5:37:xx:xx:xx   UHLWIi          0     1083     en1    350
10.0.1.52          127.0.0.1          UHS             0        0     lo0

Ma passerelle est 10.0.1.1 - elle se trouve à droite de la destination "par défaut".

Vincent
la source
Cette réponse fournit le contraire de ce qui a été demandé.
sdmeyers
-1

Les serveurs VPN Cisco envoient normalement une liste de routes vers des réseaux privés afin que vous ne finissiez pas par envoyer tout votre trafic via le serveur VPN. Pour surmonter ce problème, vous pouvez essayer les suggestions ici pour migrer de CiscoVPN vers le VPN natif OS X IPSec en déchiffrant les mots de passe enregistrés dans les fichiers PCV CiscoVPN ou en configurant manuellement le routage.

J'espère que cela pourrait aider.

Rose Ab
la source