VDT2
@VDT2
Java

Как пробросить пакеты на одном интерфейсе через iptables?

Насколько корректны ниже представленные правила?
iptables -t nat -A PREROUTING -p udp -d 192.168.243.131 --dport 2502 -j DNAT --to-destination 31.130.115.27
iptables -A FORWARD -i eth0 -p udp -d 31.130.115.27 --dport 2502 -j ACCEPT


где
192.168.243.131 - адрес машины с iptables (куда приходят пакеты, и откуда должны уйти)
31.130.115.27 - внешний адрес машины на которую я хочу отправить пакеты

Видимо не очень, ибо не работает )
  • Вопрос задан
  • 107 просмотров
Решения вопроса 1
hint000
@hint000
у админа три руки
Недостаточно данных, чтобы дать точный ответ. Но можно угадать. :)
Вариант (1) - несимметричный маршрут:
Отправляете пакеты с машины, имеющей адрес 192.168.243.x.
Пакеты имеют адрес источника 192.168.243.x.
31.130.115.27 отправляет ответ на 192.168.243.x.
192.168.243.x неожиданно получает ответ от 31.130.115.27, хотя ждал ответ от 192.168.243.131; Неожиданный ответ выбрасывается в мусорку.
Вариант (2) - не прописана маршрутизация:
31.130.115.27 вообще видит сеть 192.168.243.0/24?

В целом правила корректные, но чего-то ещё не хватает. Нужны подробности, чтобы понять, чего именно не хватает.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@q2digger
никого не трогаю, починяю примус
потому что еще надо SNAT добавлять, чтобы сервер получатель тоже обманывать.
Ответ написан
@ComodoHacker
Смотрите по счетчикам (iptables list -v), проходят ли пакеты через ваши правила.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы