8 votes

Comment configurer les tables de routage sur OS X pour rediriger le trafic VPN?

Je suis en train de configurer une table de routage sur ma machine OS X afin que le trafic internet régulier ne passe pas par le VPN mais que seules certaines destinations soient ciblées via le VPN.

Lorsque je me connecte au VPN, il crée une nouvelle route 'par défaut' pour l'interface 'jnc0' qui redirige tout le trafic vers le VPN.

netstat -nr
Tables de routage

Internet:

Destination     Passerelle        Indicateurs      Références     Utilisation     Interface Échéance
default         10.1.1.1       UGSc       36       65      jnc0
default         192.168.0.1    UGScI      20       0       en1

Est-il possible de définir une priorité pour que tout le trafic passe par default 192.168.0.1 en1 plutôt que par default 10.1.1.1 jnc0 ?

J'ai un script pour Ubuntu qui crée une table de routage, mais je ne suis pas sûr comment l'adapter pour OS X.

Voici le script :

SET_PRIORITY=$(sudo ip rule  | grep -c $ROUTE_TABLE_NAME)

if [ $SET_PRIORITY -eq 0 ]; then
    sudo ip rule add from all lookup $ROUTE_TABLE_NAME prio 1000 
fi 

sudo ip route flush table $ROUTE_TABLE_NAME

sudo ip route add default via $ROUTER_IP dev $LOCAL_IFACE metric 0 table $ROUTE_TABLE_NAME

sudo ip route add default via $VPN_IP dev $VPN_IFACE metric 1 table $ROUTE_TABLE_NAME 

sudo ip route add 172.0.0.1/16 via $VPN_IP dev $VPN_IFACE table $ROUTE_TABLE_NAME

Lorsque j'essaie d'exécuter :

sudo ip rule add from all lookup $ROUTE_TABLE_NAME prio 1000 

Je reçois sudo: ip: commande introuvable.

Aussi lorsque j'essaie d'exécuter :

sudo rule add from all lookup $ROUTE_TABLE_NAME prio 1000

cela ne fonctionne pas non plus avec l'erreur sudo: rule: commande introuvable.

Voici le code :

sudo ip route flush table $ROUTE_TABLE_NAME
sudo: ip: commande introuvable

sudo route add default via $ROUTER_IP dev $LOCAL_IFACE metric 0 table $ROUTE_TABLE_NAME
route: mauvaise adresse: via

sudo route add 172.0.0.1/16 via $VPN_IP dev $VPN_IFACE table $ROUTE_TABLE_NAME
route: mauvaise adresse: via

Je serais reconnaissant(e) pour toute aide et orientation.

5voto

apocalysque Points 646

Si votre client VPN définit une route par défaut lorsqu'il se connecte, vous devrez supprimer cette route après la connexion. Ensuite, les routes statiques que vous avez configurées devraient prendre effet. Pour modifier la table de routage sous macos, vous devez utiliser la commande route avec sudo. La syntaxe est la suivante :

route [-dnqtv] commande [[modificateurs] args]

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X