Перенаправить внешний IP к localhost?

Действительно ли возможно перенаправить все вызовы к внешнему IP в Интернете к localhost (без использования хостов)?

У меня есть старое приложение, и у меня нет исходного кода, и это приложение пытаются соединиться с сервером пост-ГРЭС с помощью IP

Я могу дать человечности команду перенаправлять все запросы к этому внешнему IP к localhost?

Таким образом я смогу выполнить сервер пост-ГРЭС на localhost и работать с моим приложением.

примечание: приложение использует IP, не DNS.

3
задан 25 August 2019 в 03:38

1 ответ

Iptables является способом пойти.

sysctl -w net.ipv4.conf.eth0.route_localnet=1 # to enable redirecting to localhost
EXTERNAL_IP=8.8.8.8 #change this line to reflect external ipaddress
sudo iptables -t nat -A OUTPUT -d ${EXTERNAL_IP} -j DNAT --to-destination 127.0.0.1

Разрушение его

-t nat позволяет Вам называть 127.0.0.1 допустимым местом назначения.

-A OUTPUT, добавляет к OUTPUT цепочка iptables. Это - встроенная цепочка, применяется. Другие встроенные цепочки существуют как INPUT, который относится к входящим пакетам и PREPROCESSING, который относится ко всем входящим пакетам перед любым другим bulit-в, что цепочка добирается до них. Можно также сделать собственные цепочки и добавить их к одной из этих встроенных цепочек для лучшего управления настройками.

-d ${EXTERNAL_IP} фильтры на целевом IP-адресе пакетов, проходящих ВЫХОДНУЮ цепочку.

-j DNAT ставит цель правила к DNAT, который позволяет Вам изменять адрес назначения пакетов.

--to-destination 127.0.0.1 параметр к цели DNAT, которая указывает, что измениться об этих соответствующих пакетах.

можно также ограничить перенаправленные порты адреса при помощи --dports ${ORIGINAL_PORT_NUMBER} после -d ${EXTERNAL_IP} и сделайте, чтобы они перенаправили к определенному порту путем добавления порта к 127.0.0.1 как так 127.0.0.1:${FINAL_PORT_NUMBER}.

Удаление

используйте следующее для удаления из iptables.

sudo iptables -t nat -D OUTPUT -d ${EXTERNAL_IP} -j DNAT --to-destination 127.0.0.1 #note -A was replaced by -A

и проверьте iptable списки с sudo iptables -t nat -L -n -v где -t nat позволяет Вам смотреть на iptable отображения включая та предварительная оловянная амальгама к NAT.

Дальнейшие действия

Вы, возможно, также должны подменить или перенаправить пакеты с Вашего сервера пост-ГРЭС для соответствия внешнему IP-адресу и ожидаемому порту, если Вы планируете общаться с приложением, и приложение проверяет исходный IP-адрес и порт.

Похожие страницы

3
ответ дан 1 December 2019 в 16:15

Другие вопросы по тегам:

Похожие вопросы: