Як змусити певні веб-адреси використовувати певний мережний адаптер у Mac OS X?


16

У мене є два підключення до Інтернету на роботі, моє дротове підключення до Ethernet (яке сильно фільтрується за брандмауером, не може підключитися до оновлень Apple тощо) та бездротове з'єднання, яке нефільтроване. Я використовую своє бездротове з'єднання як основне з'єднання, так що все зазвичай працює. Однак у мене є деякі ресурси інтрамережі, до яких мені потрібно отримати доступ лише через дротовий зв’язок. Як я можу налаштувати його так, що коли я відвідаю щось на кшталт "intranet.mycompany.com", воно автоматично перейде на мережевий адаптер?

Відповіді:


10

Потрібно додати маршрут вручну, щоб охопити всі корпоративні мережі. Знайдіть найменший чистий блок, який охопить усі корпоративні IP-адреси. Наприклад, корпоративна мережа може бути повністю в межах 172.16.22.XXX—172.16.25.XXX. Таким чином, ваш чистий блок буде 172.16.16.0/20:

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

Зауважте, що на моїй машині en0 - Ethernet, en1 - AirPort.

У мене є сценарій, який встановлює купу маршрутів для моєї локальної ситуації, яка є корпоративною мережею для всіх корпоративних речей (графіки роботи, виїзди в додатки, звітність з охорони праці та безпеки праці тощо), з WiFi для корисних речей (Bing, O "Сафарі Рейлі тощо". Я досі не зрозумів, куди мені потрібно поставити цей скрипт, щоб Mac OS X автоматично додавав таємні маршрути, які мені потрібні, коли з'являється інтерфейс.


Ще одна примітка: якщо ви з головою накрутили таблицю маршрутизації, як я (і більше не можете отримати доступ до неї), запустіть route -n flushкілька разів, а потім перемкніть своє мережеве місцезнаходження на щось інше і назад, щоб отримати звичайну інформацію про маршрутизацію.
geerlingguy

У мене також є ця проблема, але мені потрібно зробити навпаки, і прокласти лише трафік на * .apple.com через wifi, а все інше через Ethernet. Чи можна також використовувати для цього інструмент маршруту?
TraxusIV

Як зробити цей біт «Знайдіть найменший чистий блок, який охопить усі корпоративні IP-адреси». будь ласка?
Рафаель Олівейра

Блок нетто визначається кількістю провідних бітів. У наведеному вище прикладі чистий блок 172.16.16.0/20 означає "перші 20 біт IP-адреси повинні відповідати 172.16.16" - 20 означає, що ви "І" використовуєте IP-адресу з '11111111.11111111.11110000.0000000', щоб отримати 20 провідних бітів, а потім порівнюючи цей результат з "10101100.00010000.00010000.00000000". Якщо ви знаєте, що для вашої корпоративної мережі існує певний діапазон, вам потрібно знайти найдовший рядок двійкових цифр, який є спільним між ними.
ManicDee

Я не можу вам подякувати достатньо за це! Я спробував багато інших пропозицій, це не спрацювало. Це врятувало мені стільки клопотів, щоб переключитися між інтерфейсом під час роботи у корпоративному середовищі! : D
DazChong

4

Ви можете налаштувати мережеве замовлення на послуги, щоб пропускати більшість трафіку через Wi-Fi або Ethernet.

Це робить бажане з'єднання будь-яким сервісом, який ви поставили вгорі списку. На жаль, якщо ви хочете, щоб більша кількість інформації проходила через Wi-Fi, за винятком дуже конкретних елементів, це не зробить. Якщо для підключення до Ethernet використовується інший діапазон мереж IP, ніж Wi-Fi, то він автоматично передаватиме необхідні ресурси через Ethernet.

Отже, скажімо, у вас є мережа вовків. Wi-fi: 192.168.1.0-192.168.1.255 Ethernet: 192.168.5.0-192.168.5.255

Будь-які сервіси, до яких вам потрібно отримати доступ, мають запис DNS, що вказує на 192.168.5.x, автоматично пройдуть через Ethernet, але ваш DNS-запит все одно перейде на 192.168.1.x

Будь-які інші веб-сайти, які ви відвідуєте, пройдете через Wi-Fi, якщо Wi-Fi буде вгорі.

Щоб змінити замовлення на послугу, перейдіть до Налаштування системи-> Мережа. Клацніть на меню Дія (шестірня внизу списку Сервісів) та виберіть "Встановити замовлення на послугу". Потім перетягніть сервіс, який ви хочете мати перевагу до верхньої частини списку.


Так, у мене вже встановлено замовлення на обслуговування, але я шукаю спосіб змінити таблиці маршрутів для певних елементів. У Windows я використовував би консольну команду "route add". Я шукаю щось подібне на Mac.
ЯківJ

Я знаю, що в OS X можна додавати таблиці маршрутизації, оскільки він побудований поверх Unix, і я чув, як це роблять люди. Але я не знаю як. Спробуйте googling OpenBSD таблицю маршрутизації CLI. Це повинно розповісти, як керувати таблицями маршрутизації через командний рядок. Якщо ви нічого не можете знайти, дайте мені знати, і я погляну.
Філіп Боуші
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.