У меня есть Linux-машина, используемая как шлюз для Win XP. Оба находятся в виртуальной машине для тестирования. Теперь я хочу обмануть пользователя Win XP (меня) пересылкой IP-адреса: я хочу изменить IP-адрес назначения.
Например, я хочу перейти на 1.1.1.1, но шлюз Linux изменит его на 2.2.2.2. Поэтому, если я ожидаю, что веб-страница 1.1.1.1, я получу измененную, ту, что есть на 2.2.2.2. Например, я хочу перейти на Facebook, и меня заставляют перейти на домашнюю страницу Google.
Как мне это сделать? С предварительной маршрутизацией? Потому что я сделал много попыток, но никто не работал :(
По сути, вы должны:
Настройте Linux-сервер для работы в качестве маршрутизатора
Измените шлюз по умолчанию окна Windows, чтобы он указывал на IP-адрес окна Linux.
Сделайте DNAT, например :
iptables -t nat -A PREROUTING -i $INCOMING_INTERFACE -d $DEST_IP -j DNAT --to $NEW_DEST_IP
Также сделайте SNAT, например
iptables -t nat -A POSTROUTING -o $OUTGOING_INTERFACE -j SNAT --to $OUTGOING_IP_ADDRESS_OF_ROUTER
Удостоверься что нет Правило / политика iptables снижает ваш трафик
Это не будет надежно работать только с iptables, потому что HTTP-запросы отправляются вместе с заголовком Host :. И маловероятно, что Google знает, как обслуживать страницу для Host: facebook.com. Установите подходящее программное обеспечение для прокси, например, squid.