Задать вопрос
@WSGlebKavash

Возможен ли SelfInterface NAT?

Схема
67d73fd998470820607869.png
Интерфейсы:
eth0:
IP: 192.168.40.5
Маска подсети: 255.255.255.0
Шлюз: 192.168.40.1
tun0:
IP: {CLIENT_IP}
Маска подсети: 255.255.128.0
Шлюз: {VPN_GATEWAY}
Что имеем: ПК на Linux с двумя сетевыми интерфейсами: проводное соединение и виртуальный интерфейс VPN. Для доступа к интернету VPN программа использует проводной интерфейс. Клиент из этой же локальной сети хочет пустить свой траффик через VPN, т. е. использовать как маршрут по умолчанию. Он указывает адрес шлюза: 192.168.40.5. На ПК IPtables настроен следующим образом:
iptables -t nat -A POSTROUTING -o tun0 -s 192.168.40.0/24 -j SNAT --to-source {VPN_GATEWAY}
. Однако доступ к сетям за VPN клиент не получает. Никаких других брандмаузеров не используется.
Возможен ли кольцевой (SelfInterface) NAT в принципе? Если да, то как настроить?
  • Вопрос задан
  • 456 просмотров
Подписаться 2 Простой 4 комментария
Пригласить эксперта
Ответы на вопрос 2
hint000
@hint000
у админа три руки
VPN_GATEWAY - это адрес, назначенный интерфейсу tun0, верно?
Вообще, мне нравится такой ход мыслей.
Но нужно убедиться, что ipv4.ip_forward=1, т.к. нужна пересылка пакетов между eth0 и tun0. Далее убедиться, что iptables в цепочке FORWARD не блокирует такую пересылку. Далее прогнать traceroute или mtr с хоста клиента до любого адреса в интернете - пытаются ли пакеты идти на дальний конец VPN или не пытаются. Если пытаются, то доходят ли. Если не пытаются, то проблема с маршрутизацией или форвардингом. Если пытаются без ответа, то либо проблема с NAT, либо какая угодно проблема на дальнем конце VPN. Если и после этого яснее не стало, то остаётся "тяжелая артиллерия" - проверка с tcpdump.

А так в целом схема работоспособна.
Ответ написан
flapflapjack
@flapflapjack
на треть я прав
слушай у меня такая же ситуация была - у клиентов было 192.168.0.0 дома на роутере и у нас в конторе такая же сеть (ну так сделал админ - капец еще и по маске 24).

В микротике есть тип НАТ - Netplan. Ты с точки зрения роутера маршрутизируешь трафик с родной сети в другую а уже построутинг подменяет адрес назначения с фейкового (с которым не конфликтует сеть предприятия) на адрес клиента хоть по 32 маске.

Надо глянуть просто тебе как на iptables реализовать netplan
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы