У меня есть офисная сеть, которая выглядит следующим образом:
Моя офисная сеть выглядит так:
- Офисная сеть (Wi-Fi и проводная) имеет подсеть
192.168.88.0
. - У меня есть несколько серверных машин в подсети
192.168.2.0
(NODE_1, .... NODE_10). - У меня есть машина (это Mac mini) с 2 подсетевыми интерфейсами, которая действует как:
- шлюз для всех машин в подсети
192.168.2.0
. - предоставляет службу VPN (приложение по умолчанию для сервера Mac)
- и предоставляет дополнительные услуги, такие как DNS)
- шлюз для всех машин в подсети
Конфигурация Mac mini - моя большая проблема. Вот как это выглядит:
Интерфейс Ethernet en0
- адрес:
192.168.88.10
- маска подсети:
255.255.255.0
- шлюз:
192.168.88.1
Интерфейс Ethernet en2
- адрес:
192.168.2.1
- маска подсети:
255.255.255.0
- шлюз:
192.168.88.10
Мне нужно маршрутизация от машин в 192.168.88.0
тех, кто в 192.168.2.0
.
Для этого я активировал функцию « Общий доступ к Интернету » в Mac OS: на самом деле я не знаю, что происходит под капотом, но машины NODE_1 ... NODE_10 выходят в Интернет.
Затем, когда я подключен к офисной сети, чтобы я получил IP, такой как: 192.168.88.33
я добавляю правило маршрутизации, такое как:
sudo route -n add 192.168.2.0/24 -gateway 192.168.88.10
Пока все хорошо: все работает отлично !!!!!
Большая проблема, когда я подключаюсь через VPN.
VPN-соединение
Я успешно подключаюсь к VPN, доступному по адресу:, 192.168.88.10
затем добавляю правило маршрутизации.
sudo route -n add 192.168.2.0/24 -gateway 192.168.88.10
Я не могу добраться до машин в подсети 192.168.2.0
.
Обнюхивая пакеты, я вижу, что пакеты следуют за прыжками:
- -> 192.168.88.10
- -> 192.168.2.1
- -> 192.168.2.110
- <- 192.168.2.1
- <- 192.168.88.1
Пакет отправляется на шлюз 192.168.88.1
вместо 192.168.88.10
. Изучая таблицы маршрутизации Mac mini, я вижу:
192.168.88.202 192.168.88.10 UH 2 93 ppp1
192.168.88.202 40:6c:8f:3:d5:e7 UHLS2 0 0 en0
40:6c:8f:3:d5:e7
это мак адрес 192.168.88.1
.
Я хотел бы изменить маршрутизацию без использования общего доступа к Интернету , чтобы разрешить доступ к Интернету 192.168.2.0
и охватить как VPN, так и локальный сценарий, но я не знаю, какие шаги мне нужно сделать, и как вручную написать правила.
Большое спасибо.
Ответы:
Должна быть возможность создать мост с en0 и en2 и включить net.inet.ip.forwarding, чтобы избавиться от всех проблем маршрутизации. Мост действует более или менее как другой переключатель между en0 и en2.
ifconfig
На сервере создайте файловый мост :
с содержанием
sudo chmod +x nano /usr/local/bin/bridge
Создайте демон запуска usr.bridge.plist :
с содержанием
Загрузить список
источник