Как перенаправить трафик с порта на внешний ip + порт с помощью iptables?

Имеем два публичных сервера, находящихся в разных ДЦ на разных серваках: old_ip и new_ip.

Необходимо перенаправить весь трафик с old_ip:8016 на new_ip:443, на котором крутится апач с дефолтным www-доменом. Таким образом открывая в браузере https://old_ip:8016 мы должны получать страницу с https://new_ip.

Добавил два правила
iptables -t nat -A PREROUTING -p tcp --dport 8016 -j DNAT --to-destination new_ip:443
iptables -t nat -A POSTROUTING -j MASQUERADE


ip_forward включен, фаерволов нет

При открытии https://old_ip:8016 получаем 504 Timeout. Открываем https://new_ip — страница есть, всё ок.
Если убрать prerouting, то по old_ip:8016 получаем connection refused как и должно быть. То бишь правило применяется, но почему-то не работает как надо)

Чего не хватает?
  • Вопрос задан
  • 134 просмотра
Решения вопроса 1
sholkyman
@sholkyman Автор вопроса
Не знаю в чем причина, но правила заработали сами по себе спустя какое-то время. Понятия не имею с чем связано, никаких дополнительных действий я не предпринимал.
Такое ощущение, что маскарад применился не сразу.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
SberTech Москва
от 200 000 до 300 000 ₽
ИТ-ЛИНК Екатеринбург
от 100 000 до 150 000 ₽
Infinnity Solutions Челябинск
от 145 000 до 260 000 ₽