Я пытаюсь простое правило маршрутизации, которое будет перенаправлять запросы на localhost:8080 на какой-то внешний адрес (например, Google).

Я добавил следующее правило:

sudo iptables -t nat -A PREROUTING -p tcp -d localhost --dport 8080 -j DNAT --to 173.194.67.139:80

Правило появляется первым в цепочке:

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination      
DNAT       tcp  --  anywhere             localhost            tcp dpt:http-alt to:173.194.67.139:80

Но запросы не перенаправляются.

1 ответ1

0

Модуль Netfilter (iptables) не работает на уровне приложений. Если бы вы могли перенаправить HTTP-пакеты на IP-адрес Google, у них не было бы правильного заголовка Host: . Для того, что вы хотите достичь, вам лучше настроить прокси-сервер. Примеры веб-прокси-серверов, доступных для систем Unix, включают Apache (с mod_proxy), Nginx и Squid.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .