Mac Pro: разделение сетевого трафика по месту назначения

У меня есть Mac Pro Tower с двумя портами Ethernet. Один из них подключен к внутренней сети компании, а другой — к моей домашней сети. Я бы хотел, чтобы мой Mac использовал прежнее соединение Ethernet только для тех служб, которые находятся в интрасети; для всего остального я хотел бы использовать последнее соединение (например, Интернет).

Учитывая, что адреса интрасети будут попадать в определенный диапазон, как это можно сделать?

Обновлять

Благодаря огромной помощи bmikeя добился некоторого прогресса, но еще не совсем там. Вот моя исходная таблица маршрутизации (с некоторыми опущенными деталями), показывающая два defaultпути, ведущих из любого порта Ethernet:

default    A.B.C.D    UGSc           17        0     en0
default    E.F.G.H    UGScI          12        0     en1

Первый вход в сеть компании через Ethernet 1 ( en0); второй в мою домашнюю сеть через Ethernet 2 ( en1).

Цель состоит в том, чтобы заставить весь трафик, не предназначенный для местоположения внутри компании, маршрутизироваться через Ethernet 2. До сих пор мое понимание привело к тому, что я изменил таблицы маршрутизации как таковые:

sudo /sbin/route -n delete default A.B.C.D
sudo /sbin/route -n add -net A A.B.C.D

Предоставление мне следующей измененной таблицы:

default    E.F.G.H     UGScI          1        0     en1
A          A.B.C.D     UGSc          28        0     en0

Однако конечный результат не совсем такой, как я ожидал. Я все еще могу получить доступ ко всем сайтам в интрасети компании, однако весь трафик, например, на stackoverflow.com или куда-либо еще, кроме интрасети, не работает. Выборка из pingподтверждает это:

FooBar:~ username$ ping latimes.com
PING latimes.com (144.142.224.43): 56 data bytes
ping: sendto: No route to host

Для этой цели недостаточно записи defaultвыше, или я что-то упустил?

Обновление 2

По-видимому, добавив следующее, все заработало так, как я ожидал:

sudo /sbin/route -n add default E.F.G.H

В результате получилась следующая таблица:

default            E.F.G.H     UGSc            0        0     en1
default            E.F.G.H     UGScI          25        0     en1
A                  A.B.C.D     UGSc            2        0     en0

Но я не понимаю, почему оригинальной defaultзаписи не хватило? Документация для Iфлага гласит:

I       RTF_IFSCOPE      Route is associated with an interface scope

Так как же статус этой defaultзаписи Iпрепятствует ее использованию для моей заявленной цели? (Я задал связанный с этим вопрос здесь .)

Если ваше программное обеспечение VPN предотвращает это (некоторые настроены на работу только в том случае, если ВЕСЬ трафик проходит через VPN), вам придется нелегко. Если это не ограничивает, вы просто делаете маршрутизатор последнего соединения маршрутом по умолчанию и настраиваете сетевую маршрутизацию для каждой сети, через которую вы хотите пройти через VPN.
@bmike: Можете ли вы объяснить немного больше, как сделать то, что вы предлагаете? Я плохо разбираюсь в настройке сети.
Хорошо, нам может понадобиться чат для этого. Можете ли вы связаться со мной здесь для некоторых вопросов / ответов? chat.stackexchange.com/rooms/643/обсуждение-с-bmike
Похоже, это может быть хорошим местом для начала. superuser.com/questions/4904/… Кроме того, я размещу некоторые неорганизованные идеи в чате — напишите мне туда, если вы хотите продолжить обсуждение, прежде чем я смогу предложить ответ. Я не знаю, сколько подробностей вы хотите о сети... chat.stackexchange.com/rooms/643/discussion-with-bmike

Ответы (1)

Решение заключалось в следующем:

sudo /sbin/route -n delete default A.B.C.D
sudo /sbin/route -n add -net A A.B.C.D
sudo /sbin/route -n add default E.F.G.H

(подробности относительно вышеизложенного можно найти в вопросе.)