Настройка маршрутизации

Кейс: «Настройка маршрутизации между VPN (SSTP) и изолированным сегментом VLAN на роутере Keenetic»

Уда­лен­ная настрой­ка сете­во­го обо­ру­до­ва­ния — это все­гда про­гул­ка по мин­но­му полю. Один невер­ный клик в пара­мет­рах марш­ру­ти­за­ции или меж­се­те­во­го экра­на, и адми­ни­стра­тор теря­ет доступ к устрой­ству, после чего при­хо­дит­ся зво­нить на объ­ект и про­сить «подёр­гать за провод».

В этой ста­тье мы раз­бе­рем реаль­ный кейс уда­лен­ной настрой­ки роу­те­ра Keenetic, в кото­ром тре­бо­ва­лось свя­зать внеш­не­го сотруд­ни­ка, под­клю­чен­но­го по SSTP VPN, с изо­ли­ро­ван­ным сег­мен­том сети для май­нин­га (lan2, под­сеть 192.168.4.x), где пор­ты раз­де­ле­ны с помо­щью теги­ро­ван­но­го тра­фи­ка VLAN ID 2.


Исходная архитектура сети и задача

В офи­се раз­вер­нут роу­тер Keenetic, кото­рый раз­де­ля­ет локаль­ную инфра­струк­ту­ру на несколь­ко изо­ли­ро­ван­ных островов:

  1. Сег­мент «Основ­ная» (192.168.3.0/24): Здесь живут офис­ные ком­пью­те­ры, прин­те­ры и сотруд­ни­ки на месте.
  2. Сег­мент «lan2» (192.168.4.0/24): Тех­но­ло­ги­че­ский сег­мент для май­нинг-фер­мы (Antminer / Asic). Часть пор­тов рабо­та­ет в режи­ме теги­ро­ва­ния VLAN ID 2 для вза­и­мо­дей­ствия с управ­ля­е­мы­ми коммутаторами.
  3. Вир­ту­аль­ная сеть SSTP VPN (172.16.3.0/24): Пул адре­сов для уда­лен­ных администраторов.

Зада­ча: Предо­ста­вить уда­лен­но­му сотруд­ни­ку, под­клю­чен­но­му через SSTP с ПК под управ­ле­ни­ем Windows, пол­ный доступ к веб-пане­лям Аси­ков (192.168.4.x) для мони­то­рин­га и настрой­ки, пол­но­стью сохра­нив при этом его доступ к основ­ной офис­ной сети (192.168.3.x).


🌐 Схема сетевой топологии с правильным IPv4-фильтром

Для пони­ма­ния логи­ки про­хож­де­ния паке­тов была спро­ек­ти­ро­ва­на сле­ду­ю­щая схе­ма целе­вой архи­тек­ту­ры сети:

       [ УДАЛЕННЫЙ ПК «ДОМА» ] 
                 │ (SSTP-клиент Windows)
                 ▼ IP: 172.16.3.33 (Шлюз: 172.16.3.1)
   ┌─────────────────────────────────────────────────────────────┐
   │             РОУТЕР NETCRAZE (KEENETIC)                      │
   │                                                             │
   │  ┌──────────────────┐  Межсетевой экран   ┌──────────────┐  │
   │  │   Интерфейс      │  (Успешно пропускает│   Интерфейс  │  │
   │  │  SSTP-сервера    │◄─── любой трафик ──►│     lan2     │  │
   │  └────────┬─────────┘   протокола IPv4    └────────┬─────┘  │
   │           │                                        │        │
   │     Внутренний NAT                                 │        │
   │           ▼                                        │        │
   │  ┌──────────────────┐                     ┌────────┴─────┐  │
   │  │    Сегмент       │                     │   Сегмент    │  │
   │  │   «Основная»     │                     │    «lan2»    │  │
   │  │  192.168.3.1/24  │                     │192.168.4.1/24│  │
   │  └────────┬─────────┘                     └────────┬─────┘  │
   └───────────┼────────────────────────────────────────┼────────┘
               │                                        │
       Физические порты                     Физические порты
       (Офисные ПК, Wi-Fi)              (Порт 3: Нетегированный)
       IP пул: 192.168.3.x             (Порты 1, 2: Тегированный T VLAN ID 2)
                                                    │
                                                    ▼
                                           [ АНТМАЙНЕРЫ (Asic) ]
                                           IP пул: 192.168.4.x
                                           (например, 192.168.4.224)

Главный секрет удаленной настройки: безопасный режим Keenetic

Посколь­ку кон­фи­гу­ра­ция меня­лась пол­но­стью «всле­пую» через SSTP-тун­нель, кри­ти­че­ски важ­но было исполь­зо­вать встро­ен­ный Режим без­опас­ной настрой­ки (Safe Configure).

В опе­ра­ци­он­ной систе­ме KeeneticOS при изме­не­нии сете­вых пара­мет­ров вни­зу экра­на заго­ра­ет­ся систем­ное пре­ду­пре­жде­ние: «Режим без­опас­ной настрой­ки: есть несо­хра­нен­ные изме­не­ния».

Как это работает и почему это спасло связь:

Если адми­ни­стра­тор при­ме­нит оши­боч­ное пра­ви­ло меж­се­те­во­го экра­на, кото­рое забло­ки­ру­ет его соб­ствен­ный VPN-порт, сес­сия обо­рвет­ся. В обыч­ном роу­те­ре это озна­ча­ет поте­рю свя­зи до момен­та физи­че­ско­го выез­да на объект.

В Keenetic, если изме­не­ния не под­твер­жде­ны повтор­ным нажа­ти­ем кноп­ки сохра­не­ния в тече­ние вре­мен­но­го тайм-аута (обыч­но 3 мину­ты), роу­тер счи­та­ет, что адми­ни­стра­тор поте­рял доступ. Устрой­ство авто­ма­ти­че­ски ухо­дит в пере­за­груз­ку и отка­ты­ва­ет кон­фи­гу­ра­цию к послед­ней ста­биль­ной точ­ке. Это поз­во­ли­ло нам сме­ло экс­пе­ри­мен­ти­ро­вать с марш­ру­та­ми, зная, что роу­тер вер­нет­ся в сеть в любом случае.


Поиск ошибок и грабли, на которые мы наступили

В про­цес­се диа­гно­сти­ки мы столк­ну­лись с клас­си­че­ски­ми архи­тек­тур­ны­ми ошиб­ка­ми, кото­рые часто совер­ша­ют при настрой­ке меж­се­те­вых экранов.

Грабли №1: путаница с интерфейсами назначения

Изна­чаль­но раз­ре­ша­ю­щие пра­ви­ла для уда­лен­но­го ПК добав­ля­лись на вклад­ку меж­се­те­во­го экра­на «Основ­ная». Одна­ко в логи­ке роу­те­ра паке­ты от VPN-кли­ен­та при­хо­дят со спе­ци­фи­че­ско­го вир­ту­аль­но­го интер­фей­са SSTPVPN. Роу­тер про­ве­рял пра­ви­ла на вхо­дя­щем интер­фей­се, не нахо­дил сов­па­де­ний и дро­пал паке­ты. Пра­ви­ла для VPN-кли­ен­тов долж­ны рас­по­ла­гать­ся стро­го на вклад­ке само­го VPN-сер­ве­ра или при­ме­нять­ся глобально.

Грабли №2: ошибка в выборе протокола (Подводный камень IPIP)

Самым ковар­ным момен­том ока­за­лась настрой­ка про­то­ко­лов в пра­ви­лах филь­тра­ции. Меж­се­те­вой экран бло­ки­ро­вал паке­ты, шед­шие в под­сеть 192.168.4.x. При деталь­ном ана­ли­зе выяс­ни­лось, что в пра­ви­лах в каче­стве раз­ре­шен­но­го про­то­ко­ла был выбран IPIP (IP-in-IP).

  • Поче­му это ошиб­ка: про­то­кол IPIP исполь­зу­ет­ся исклю­чи­тель­но для постро­е­ния тун­не­лей меж­ду дву­мя марш­ру­ти­за­то­ра­ми. Уда­лен­ный ПК шлет стан­дарт­ные паке­ты сете­во­го уров­ня — TCP/UDP (запро­сы бра­у­зе­ра) и ICMP (эхо-отве­ты ути­ли­ты ping). Роу­тер видел несов­па­де­ние про­то­ко­лов IPIP и ICMP/TCP и сбра­сы­вал тра­фик на вто­ром прыж­ке трас­си­ров­ки (tracert).

Правильный алгоритм настройки «с нуля»

Что­бы запу­стить схе­му в иде­аль­ном режи­ме (одно­вре­мен­ный доступ к офи­су и фер­ме), необ­хо­ди­мо выпол­нить сле­ду­ю­щие шаги:

Шаг 1. На стороне роутера (межсетевой экран)

  1. Перей­ти в Сете­вые пра­ви­лаМеж­се­те­вой экран.
  2. Открыть интер­фейс SSTP-сер­вер (или исполь­зо­вать кноп­ку «Пока­зать все» для нахож­де­ния нуж­но­го вир­ту­аль­но­го интерфейса).
  3. Создать раз­ре­ша­ю­щее правило: 
    • Дей­ствие: Разрешить.
    • Про­то­кол: IPv4 (или Любой). Это кри­ти­че­ски важ­но для про­пус­ка ICMP и TCP тра­фи­ка вме­сто IPIP.
    • Адрес источ­ни­ка: 172.16.3.0 (мас­ка 255.255.255.0).
    • Адрес назна­че­ния: 192.168.4.0 (мас­ка 255.255.255.0).
  4. Вклю­чить тум­блер пра­ви­ла и при­ме­нить настрой­ки в Без­опас­ном режиме.

Шаг 2. На стороне удаленного ПК (Windows)

Опе­ра­ци­он­ная систе­ма Windows по умол­ча­нию не зна­ет о суще­ство­ва­нии изо­ли­ро­ван­ной сети за VPN-сер­ве­ром. Ей нуж­но под­ска­зать маршрут.

  1. Открыть команд­ную стро­ку от име­ни Администратора.
  2. Про­пи­сать посто­ян­ный ста­ти­че­ский марш­рут, где шлю­зом высту­па­ет адрес роу­те­ра внут­ри VPN (172.16.3.1):
    route -p add 192.168.4.0 mask 255.255.255.0 172.16.3.1
  3. Флаг -p гаран­ти­ру­ет, что пра­ви­ло не сотрет­ся после пере­за­груз­ки компьютера.

Шаг 3. Параметры конечного оборудования (Asic)

Часто паке­ты дохо­дят до май­не­ров, но не воз­вра­ща­ют­ся назад. На каж­дом Ант­май­не­ре в поле Gateway (Основ­ной шлюз) дол­жен быть стро­го про­пи­сан IP-адрес роу­те­ра в этой под­се­ти — 192.168.4.1. Если там будет ука­зан ста­рый шлюз .3.1, устрой­ство не смо­жет отве­тить чужой под­се­ти 172.16.x.x.


Промежуточное лобовое решение («костыль»)

В каче­стве вре­мен­но­го «быст­ро­го» реше­ния, пока велась отлад­ка слож­ных пра­вил марш­ру­ти­за­ции, был при­ме­нен метод пере­клю­че­ния сете­вых сег­мен­тов в пара­мет­рах VPN.

В меню При­ло­же­нияVPN-сер­вер SSTP в поле «Доступ к сети» вме­сто зна­че­ния Основ­ная был при­ну­ди­тель­но выбран сег­мент lan2, а ниже акти­ви­ро­ва­на галоч­ка «NAT для кли­ен­тов».

Логика работы костыля:

Интер­фейс SSTP-сер­ве­ра стал сту­чать­ся напря­мую в под­сеть май­не­ров. Функ­ция NAT мас­ки­ру­ет IP-адрес домаш­не­го ПК под адрес само­го роу­те­ра (192.168.4.1). Устрой­ства видят локаль­ный запрос и мгно­вен­но отве­ча­ют. Плюс мето­да — на Windows-ПК боль­ше не нуж­ны ника­кие руч­ные коман­ды route add.

Минус метода:

Поле «Доступ к сети» в ста­рых про­шив­ках под­дер­жи­ва­ет выбор толь­ко одно­го сег­мен­та. Пере­клю­чив­шись на май­не­ров, адми­ни­стра­тор пол­но­стью поте­рял доступ к основ­ной офис­ной сети (192.168.3.x) и офис­ной тех­ни­ке. Управ­лять самим роу­те­ром теперь при­хо­дит­ся по его ново­му адре­су шлю­за — 192.168.4.1.

Заключение

Лобо­вой метод со сме­ной сег­мен­та досту­па отлич­но под­хо­дит как вре­мен­ная мера (Workaround), что­бы быст­ро вер­нуть управ­ле­ние обо­ру­до­ва­ни­ем и исклю­чить про­стой пред­при­я­тия. Одна­ко для посто­ян­ной рабо­ты необ­хо­ди­мо исполь­зо­вать клас­си­че­скую схе­му с филь­тра­ци­ей IPv4 на интер­фей­сах тун­не­лей, допол­нен­ную руч­ны­ми марш­ру­та­ми на ПК.

И глав­ное пра­ви­ло для сете­вых инже­не­ров: выпол­няя уда­лен­ные изме­не­ния, нико­гда не пре­не­бре­гай­те без­опас­ным режи­мом под­твер­жде­ния кон­фи­гу­ра­ции. Имен­но он гаран­ти­ру­ет, что вре­мен­ная ошиб­ка в пра­ви­лах не пре­вра­тит­ся в дол­гую поезд­ку на объ­ект с кон­соль­ным кабе­лем в руках.

PS

Резюме по итогам удаленной консультации

  • При­ня­тое реше­ние: кли­ент отка­зал­ся от исполь­зо­ва­ния обо­ру­до­ва­ния Keenetic. При­ня­то реше­ние заме­нить его на управ­ля­е­мые ком­му­та­то­ры, соот­вет­ству­ю­щие про­мыш­лен­ным стандартам.
  • Обос­но­ва­ние: устрой­ства брен­да Keenetic пози­ци­о­ни­ру­ют­ся как реше­ния для домаш­не­го сег­мен­та и не обла­да­ют необ­хо­ди­мым функ­ци­о­на­лом, надеж­но­стью и про­из­во­ди­тель­но­стью для выпол­не­ния задач про­мыш­лен­но­го уровня.