Как перенаправлять пакеты на локальном хосте с одного порта на другой

Условимся, что src_port - это исходный порт (с которого будем перенаправлять), а dst_port - целевой порт (на который будем перенаправлять).

Смотрим текущие правила

iptables -t nat -L -n –v

Рабочий вариант

sudo iptables -t nat -I PREROUTING -p tcp --dport $src_port -j REDIRECT --to-ports $dst_port
sudo iptables -t nat -I OUTPUT -p tcp -d 127.0.0.1 --dport $src_port -j REDIRECT --to-ports $dst_port

Удаление правил iptables по их номерам

Смотрим список правил с номерами.

iptables -L -t nat --line-numbers

Чтобы удалить нужное правило нужной цепочки - указываем цепочку и номер правила.

iptables -t nat -D PREROUTING 3

На примере сайта: redirect 80-го порта на хост-машине в порт 8024 ВМ http.

sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8024
sudo iptables -t nat -I OUTPUT -p tcp -d 127.0.0.1 --dport 80 -j REDIRECT --to-ports 8024

Обновлено: 15.02.2026