Comment faire pour que certaines adresses Web utilisent une carte réseau spécifique sous Mac OS X?

16

J'ai deux connexions Internet au travail, ma connexion Ethernet filaire (qui est fortement filtrée derrière un pare-feu, ne peut pas se connecter aux mises à jour Apple, etc.) et une connexion sans fil non filtrée. J'utilise ma connexion sans fil comme ma connexion principale pour que les choses fonctionnent généralement. Cependant, j'ai quelques ressources intranet auxquelles j'ai besoin d'accéder via la connexion filaire uniquement. Comment puis-je le configurer pour que lorsque je visite quelque chose comme "intranet.mycompany.com" - il soit automatiquement acheminé vers la carte réseau filaire?

JacobJ
la source

Réponses:

10

Vous devez ajouter un itinéraire manuellement pour couvrir tous les réseaux d'entreprise. Trouvez le plus petit bloc net qui couvrira toutes les adresses IP d'entreprise. Par exemple, le réseau d'entreprise peut être entièrement compris dans la plage 172.16.22.XXX—172.16.25.XXX. Ainsi, votre bloc net serait 172.16.16.0/20:

/sbin/route add -net 172.16.16.0/20 -interface en0

Notez que sur ma machine, en0 est l'Ethernet, en1 est l'AirPort.

J'ai un script qui met en place un tas d'itinéraires pour ma situation locale qui est un réseau d'entreprise pour toutes les affaires d'entreprise (feuilles de temps, demandes de congé, rapports sur la santé et la sécurité au travail, etc.), avec WiFi pour les choses utiles (Bing, O 'Reilly Safari, etc.). Je n'ai toujours pas compris où je dois mettre ce script pour que Mac OS X ajoute automatiquement les routes mystérieuses dont j'ai besoin lorsque l'interface apparaît.

ManicDee
la source
Une autre remarque: si vous bousculez votre table de routage comme je l'ai fait (et que vous ne pouvez plus accéder à rien), exécutez route -n flushplusieurs fois, puis basculez votre emplacement réseau vers autre chose et inversez pour récupérer vos informations de routage normales.
geerlingguy
J'ai également ce problème, mais je dois faire le contraire et acheminer uniquement le trafic vers * .apple.com via le wifi et tout le reste via Ethernet. L'outil d'itinéraire peut-il également être utilisé pour cela?
TraxusIV
Comment puis-je faire ce bit "Trouver le plus petit bloc net qui couvrira toutes les adresses IP d'entreprise." S'il vous plaît?
Raphael Oliveira
Le bloc net est défini par le nombre de bits de tête. Dans l'exemple ci-dessus, le bloc net 172.16.16.0/20 signifie "les 20 premiers bits de l'adresse IP doivent correspondre à 172.16.16" - les 20 signifie que vous êtes "ET" en utilisant l'adresse IP avec '11111111.11111111.11110000.0000000' pour obtenir les 20 bits de tête, puis en comparant ce résultat avec «10101100.00010000.00010000.00000000». Si vous savez qu'il existe une certaine plage pour votre réseau d'entreprise, vous devez trouver la plus longue chaîne de chiffres binaires commune aux deux.
ManicDee
Je ne peux pas vous remercier assez pour ça! J'ai essayé beaucoup d'autres suggestions, cela n'a pas fonctionné. Cela m'a sauvé tellement de tracas pour basculer entre les interfaces tout en travaillant dans un environnement d'entreprise! : D
DazChong
4

Vous pouvez configurer votre commande de service réseau pour faire passer la plupart du trafic via Wi-Fi ou Ethernet.

Cela rend la connexion préférée quel que soit le service que vous mettez en haut de la liste. Malheureusement, si vous voulez que la plupart des informations passent par le Wi-Fi, sauf pour des éléments très spécifiques, cela ne le fera pas. Si la connexion Ethernet utilise une plage de réseau IP différente de celle du Wi-Fi, elle passera automatiquement les ressources requises via Ethernet.

Alors, disons que vous avez le réseau des loups. Wi-fi: 192.168.1.0-192.168.1.255 Ethernet: 192.168.5.0-192.168.5.255

Tous les services auxquels vous avez besoin d'accéder qui ont un enregistrement DNS pointant vers 192.168.5.x passeront automatiquement par Ethernet, mais votre requête DNS ira toujours à 192.168.1.x

Tous les autres sites Web que vous visitez vous passerez par le Wi-Fi si le Wi-Fi est en haut.

Pour modifier l'ordre de service, allez dans Préférences Système-> Réseau. Cliquez sur le menu Action (l'engrenage en bas de la liste des services) et choisissez "Définir l'ordre de service". Faites ensuite glisser le service que vous souhaitez avoir la priorité en haut de la liste.

Phillip Boushy
la source
Oui, j'ai déjà défini l'ordre de service, mais je cherche un moyen de modifier les tables de routage pour des éléments spécifiques. Sous Windows, j'utiliserais la commande de console "route add". Je cherche quelque chose de similaire sur Mac.
JacobJ
Je sais qu'il est possible d'ajouter des tables de routage dans OS X, car il est construit sur Unix, et j'ai entendu des gens le faire. Mais je ne sais pas comment. Essayez de googler l'interface CLI de la table de routage OpenBSD. Cela devrait vous indiquer comment gérer les tables de routage via la ligne de commande. Si vous ne trouvez rien, faites le moi savoir et je vais y jeter un œil.
Phillip Boushy