TGViewer
Околодев Околодев @okolodev · 208 subscribers
Post #62 2.38K
Объединение нескольких роутеров keenetic с серыми IP в одну виртуальную сеть через ZeroTier (site to site VPN)

Почему не Tailscale? Кинетик штатно поддерживает ZeroTier. Все хотелки реализуемы даже в рамках ограничений бесплатного тарифа. Tailscale работает поверх протокола WireGuard, который уже блокируется в некоторых регионах, в то время как у ZeroTier нечто кастомное.

Скриншотики в комментах.

Регистрируемся на my.zerotier.com
Создаем сеть: Create A Network
Заходим в её настройки → Advanced → IPv4 Auto-Assign

✅ Auto-Assign from Range
Easy
172.25.*.*


Вверху страницы есть Network ID — записываем и переходим к роутерам.

Важно! Домашние сегменты должны различаться на каждом из роутеров. Если на обоих из них подсети совпадают, а они дефолтно совпадают — 192.168.1.0/24, то нужно поменять хотя бы одну из них. Делается это в админке кинетика → раздел Мои сети и Wi-Fi → имя сегмента

В моём примере будут:

кин1

Подсеть: 192.168.10.0/24
IP-адрес: 192.168.10.1
Zerotier IP: 172.25.10.1


и

кин2

Подсеть: 192.168.20.0/24
IP-адрес: 192.168.20.1
Zerotier IP: 172.25.20.1


На обоих роутерах нужно установить пакет клиент ZeroTier и желательно обновить KeeneticOS до 4.2.* или новее.

Начнём с кин1.

Интерфейса для zerotier клиента пока не нарисовали, поэтому настраивать придётся через консоль, попасть в которую можно, дописав к урлу админки /a. В моём случае это http://192.168.10.1/a.

В консоли создаём новый сетевой интерфейс:

interface ZeroTier0


Приглашение командной строки должно поменяться на (config-if)>

Подключаемся к сети zerotier. Идентификатор сети, заменив идентификатор сети.

zerotier network 0123456789abcdef


Построчно вводим

zerotier accept-routes
zerotier accept-addresses
up
show running-config


Ищем на странице строку interface ZeroTier0 и убеждаемся, что наблюдается нечто подобное:

"interface ZeroTier0",
" dyndns nobind",
" security-level public",
" ip dhcp client dns-routes",
" zerotier accept-addresses",
" zerotier accept-routes",
" zerotier network-id 0123456789abcdef",
" up",
"!",


Сохраняем конфиг, иначе он слетит после перезагрузки роутера:

system configuration save


Возвращаемся в админку ZeroTier и видим 🚫 «гостя» в нашей сети.
• Открываем его
• Одобряем его: Authorized ✅
• Даём какое-нибудь понятное имя
• Назначаем IP: 172.25.10.1
• Сохраняем: Save

После чего проверяем, что Auth поменялся на ✅, а Last Seen не превышает пары минут.

Заходим в админку роутера
Сетевые правила → Межсетевой экран → вкладка ZeroTier0 → Добавить правило:

✅ Включить правило
Действие: Разрешить
IP-адрес источника: Любой
IP-адрес назначения: Любой
Протокол: ICMP


И второе:

✅ Включить правило
Действие: Разрешить
IP-адрес источника: Любой
IP-адрес назначения: Любой
Протокол: IP


Там же в админке кинетика добавляем маршруты до кин2.
Сетевые правила → Маршрутизация → Добавить маршрут:

Тип маршрута: Маршрут до сети
Адрес сети назначения: 192.168.20.0
Маска подсети: 255.255.255.0 (/24)
Адрес шлюза: 172.25.20.1
Интерфейс: ZeroTier0
✅ Добавлять автоматически
❌ Эксклюзивный маршрут


Возвращаемся к параграфу «Начнём с кин1» и проделываем все шаги над вторым роутером. Но с отличием в IP-адресе в админке ZeroTier, а также маршрут теперь должен указывать не на кин2, а на кин1.

Готово!

На данный момент пакеты и пинги уже должны ходить между хостами так, будто это одна сеть. Ну почти. NAT будет работать даже внутри собственной ZeroTier сети, но скорее всего он никак не помешает.


Отключайте NAT только в том случае, если понимаете, зачем это нужно.

Админка роутера → Сетевые правила → Переадресация портов → Добавить правило:

✅ Включить правило
Вход: название сегмента вашей домашней сети
Выход: название интерфейса выхода в интернет
Протокол: TCP/UDP (все порты) и ICMP


Затем Мои сети и Wi-Fi → название домашнего сегмента:

❌ Использовать NAT


Таким образом мы отключили правило, которое NATит вообще всё, заменив на более точечное, которое NATит только выход в интернет.
  • ❤ 7
  • 🔥 3
  • 🍌 3
  • 🐳 1
More from @okolodev
  1. Nov 6, 2024Кнопка hyper В некоторых моих постах упомянута кнопка hyper. Объясняю, что это такое. Это…
  2. Nov 6, 2024Клавиатурные хаки Поделюсь своими хаками, которые ощутимо повышают мою продуктивность. Рас…
  3. Mar 31, 2024Посмотрел подряд обе дюны. Как говорится, гора родила залупу конскую. Главный замут — все…
  4. Mar 28, 2024Напоминаю: • Включите пин-код для симки. • Скройте тело писем и смсок из уведомлений на эк…
  5. Mar 20, 2024Жопа горит от эппловской фичи, что якобы можно на apple silicon маке запустить приложение…
  6. Mar 8, 2024Хм. А неплохо выглядят девтулзы edge. Есть возможность развернуть панель вкладок девтулзов…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →