Это вопрос о том, использовать ли настройку OpenVPN с маршрутизацией или мостом, и как настроить соединение.
TL; DR:
Предыстория: объект - очистная станция с несколькими (3+) удаленными насосными станциями. В главном офисе работает наша система SCADA и несколько ПЛК и рабочих станций.
Каждая удаленная насосная станция имеет один или несколько ПЛК / блоков PanelView, и в настоящее время все удаленные объекты используют радиосигналы 150 МГц для отправки телеметрических данных обратно в основное место.
Из-за низкого качества сигнала и ограничений полосы пропускания радиостанций мы надеемся переключить все сайты на использование сотовых модемов передачи данных 4G.
Для обеспечения безопасности и простоты я считаю, что лучшим подходом является установка маршрутизатора с поддержкой OpenVPN в каждом месте (в настоящее время используется Linksys E1200 с последней версией DD-WRT) и настройка их для подключения к серверу OpenVPN в главном офисе.
Однако возникает проблема: все удаленные сайты используют ту же подсеть, что и основной сайт. Это было настроено поставщиком, который устанавливал радиомодули, очевидно, чтобы «упростить задачу», но для нас это была только головная боль. Мы не можем изменить сопоставление IP-адресов, потому что у нас нет программного обеспечения для программирования для некоторых устройств, а также для этого потребуется перепрограммирование в каждом ПЛК. Итак, мы застряли в том, что все сайты находятся в одной подсети. (192.168.100.x)
У меня вопрос: следует ли мне использовать для этой настройки режим маршрутизации или моста?
Если я использую режим моста, я не хочу, чтобы мост OpenVPN пропускал лишний трафик (широковещательный и т. Д.), Потому что у сотовых модемов есть ограниченные ежемесячные разрешения на передачу данных.
Если я использую режим маршрутизации, как я могу заставить OpenVPN маршрутизировать только определенные IP-адреса, которые применяются к удаленным сайтам?
Например: Основной сайт: использует 192.168.100.1 - 30, также 40+
Удаленный сайт 1: 192.168.100.32-37 Удаленный сайт 2: 192.168.1.31 Удаленный сайт 3: 192.168.100.110-120, 140
Таким образом, мы не можем маршрутизировать на основе подсети, но должны маршрутизировать отдельные IP-адреса в разные места.
Буду признателен за любой совет по этой настройке.
Я попробовал режим маршрутизации, используя указанные маршруты с маской подсети 255.255.255.255, но не смог передать трафик между одним сайтом и основным местоположением. Соединение OpenVPN было успешно установлено, но не удалось проверить связь между ними.
Вам необходимо использовать мостовую настройку (если вы не можете вручную изменить таблицы маршрутизации на всех хостах / устройствах в сети).
При нормальной настройке IP-адрес, предназначенный для той же локальной подсети, не будет маршрутизироваться через шлюз по умолчанию, потому что адрес напрямую доступен через интерфейс. ARP будет использоваться для получения MAC-адреса хоста назначения, а дейтаграммы IP будут отправляться напрямую с использованием кадров Ethernet с этим MAC-адресом в пункт назначения на сетевом уровне 2.
Это означает, что настройка OpenVPN с маршрутизацией не подойдет для вашей проблемы. Шлюз VPN даже не «увидит» трафик. Он вступит в игру только при соблюдении всех следующих условий:
Хотя блокировка широковещательных рассылок возможна, это приведет к выходу из строя мостовой сети, если все широковещательные передачи заблокированы, потому что мостовая сеть полагается на широковещательные. В сети Ethernet ARP используется для широковещательной рассылки MAC-адресов конечных точек в сети.
Чтобы заблокировать определенные трансляции, iptables
с участием модули physdev
и pkttype
может быть использован.