Можно ли создать прокси-сервер для любого приложения?

Я пытался создать прокси-сервер для анализа TCP-пакетов, отправляемых между моим компьютером и игровым сервером. Теперь я знаю, что вы можете делать такие вещи с помощью Wireshark, но я хочу понять логику этого и то, как устанавливаются соединения.

Мой главный вопрос в том, что я не знаю, с чего начать. У меня есть IP-адрес и порт сервера из Process Explorer и базовые знания программирования сокетов в python, но, как я уже сказал, я не знаю, что кодировать.

Должен ли я написать сокет, который перехватывает входящее TCP-соединение и перенаправляет его на мой локальный хост? но как тогда мой клиент будет отправлять данные на сервер?

Как видите, я немного заблудился, и я был бы очень рад, если бы кто-нибудь мог указать мне правильный путь (что я должен исследовать?).

Заранее спасибо.


person Arman    schedule 11.08.2020    source источник
comment
Почему бы вам просто не запустить tcpdump на своем клиенте, если вы хотите анализировать TCP-пакеты, проходящие от вашего клиента к серверу?   -  person Juraj Martinka    schedule 12.08.2020


Ответы (1)


Я думаю, что есть полезные инструменты, которые могут вам помочь: iptables и netfilter. Используя это, вы можете перехватить входящее TCP-соединение и легко перенаправить его на свой локальный хост.

person tyChen    schedule 12.08.2020
comment
Спасибо, я попробую и вернусь к вам. - person Arman; 12.08.2020