Не всегда нужен полноценный VPN с TLS, сертификатами и клиентами. Иногда задача проще: соединить две сети, протянуть маршрут до подсети или завернуть трафик через удалённый узел. В таких случаях отлично подходят GRE и IPIP - легкие L3-туннели, встроенные прямо в ядро Linux.
▪️ IPIP - самый простой вариант
IPIP (IP-in-IP) - это инкапсуляция IP-пакета внутрь другого IP-пакета.
Работает только с IPv4 - IPv4.
Минимальный пример:
Сервер A (1.1.1.1):
ip tunnel add tun0 mode ipip local 1.1.1.1 remote 2.2.2.2
ip addr add 10.10.10.1/30 dev tun0
ip link set tun0 up
Сервер B (2.2.2.2):
ip tunnel add tun0 mode ipip local 2.2.2.2 remote 1.1.1.1
ip addr add 10.10.10.2/30 dev tun0
ip link set tun0 up
Добавляем маршруты - и сети начинают видеть друг друга.
🤩 Плюсы:
минимальный overhead;
простота;
работает из коробки.
🤩 Минусы:
только IPv4;
нет multicast;
нет шифрования;
GRE - гибче и мощнее.
▪️ GRE (Generic Routing Encapsulation) инкапсулирует практически любой L3-протокол. Поддерживает: IPv4 и IPv6, multicast и динамическую маршрутизацию (OSPF, BGP поверх туннеля)
Пример:
ip tunnel add gre1 mode gre local 1.1.1.1 remote 2.2.2.2 ttl 255
ip addr add 10.20.20.1/30 dev gre1
ip link set gre1 up
На второй стороне - зеркальная конфигурация.
🤩 GRE удобен, если:
нужно поднять OSPF между площадками;
протянуть несколько подсетей;
использовать FRR/Quagga;
строить overlay-сеть.
⚠️ Важный момент: это не VPN
Ни IPIP, ни GRE не шифруют трафик.
Это просто инкапсуляция.
Если нужен encryption: поверх GRE можно поднять IPsec или использовать WireGuard вместо этого
🤩 Когда это удобно
Связать два датацентра;
Протянуть подсеть в облако;
Обойти ограничения провайдера;
Сделать статическую связку без сложной PKI.
Если задача маршрутизация, а не безопасность, то GRE/IPIP часто проще любого VPN.
#linux #networking
🧑💻 NetworkAdmin