LINUX.ORG.RU
Форум — Admin  

Как правильно сеть настроить? Два запрещенных слова из трех букв.

 , , , ,


0

2

Схема сети:

    сервер-1              сервер-2                сервер-3
  eth0   tun0 --tinc--  tun0   tun1 ---fastd---  tun1  eth0

На сервере-1 приходится делать маркировку пакета на основе GID (и запускается все как sg xxx firefox например), потом через ip-rule он роутится на айпишник tun1 у сервера-3. И на выходе из tun0 приходится делать SNAT с адресом tun0.

На сервере-2 приходится добавлять два ip-route правила: для роутинга всго связанного с tun0 собственно в tun0 (как было бы без второго правила идущего следом) и второе правило – роутинг всего на адрес tun1 у сервера-3.

На сервере-3 делается SNAT на выходе в инет.

В чём вопрос. Больно сложный/запутанный набор правил для ip-route, еще iptables. Можно ли как-то проще? Можно ли посадить сеть tinc и сеть fastd как-то в одну подсеть? Одна плоская сеть более удобна, чем две подсети. Можно ли обойтись без ip-route? Кажется нет (нужен source-based routing).

Увы но заменить tinc на fastd или fastd на tinc не представляется возможным. Кажется можно порты tinc посредством iptables пробросить на tun1 адрес сервера-3 и там запустить еще один tinc, траффик которого будет бегать внутри tun1.

Но вообще хотелось бы, чтоб на сервере-1 можно было выбирать, траффик пойдет через инет, через сервер-2 или через сервер-3. И кажется сделать это можно только используя раздельные подсети. И опять ip-route. :-/

★

Ну, у ipv4 пакета есть поле ToS. Вроде, провайдеры никогда его особо не обрабатывали. ИМХО, можно на сервер-1 выставлять каждому пакету необходимый ToS и на сервер-2 маршрутизровать по этому полю. Ну, и может обнулять его на сервер-2.

Можно ли обойтись без ip-route?

Можно ли настроить в Линуксе маршрутизацию без ip route?

mky ★★★★★
()
Ответ на: комментарий от mky

Можно ли настроить в Линуксе маршрутизацию без ip route?

Точно можно, когда-то его не было и обходились.

anc ★★★★★
()

Можно сделать туннель fastd внутри туннеля tinc. Тогда на сервере1 будет два интерфейса tun0 и tun1 и все правила маршрутизации будут там. Маршрут до внешнего адреса сервер3 прописать через tun0 (опционально заблокировать iptables на случай отвала связи до сервера2). Нужно не забыть про правильный выбор mtu.

m0xf ★
()
24 февраля 2025 г.

такое впечатление, что вам тут может помочь один L2 туннель и внутри него несколько вланов

но придется переделывать схему и немного уменьшить MTU…

gagarin0 ★
()
Последнее исправление: gagarin0 (всего исправлений: 3)
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария