Как запрограммировать http-туннель
Я в основном хочу захватить все пакеты в выбранном порту и передать их через HTTP. Каков наилучший способ сделать это? Должен ли я использовать программу захвата пакетов, как SharpPcap для этого?
РЕДАКТИРОВАТЬ: Я хочу дать возможность двум компьютерам, которые работают в защищенных сетях, соединяться друг с другом. Для этого мне нужно написать клиентскую программу и серверную программу. Таким образом, client1 отправит пакеты на сервер через HTTP, а сервер отправит его на client2 через HTTP.
2 ответа
Ваш вопрос немного расплывчатый, что вы подразумеваете под передачей их через HTTP? Перенести их туда, а потом что делать?
Взять к примеру Tor. Tor установит SOCKS и HTTP-прокси локально для вас. Пока клиент поддерживает один из этих протоколов, вы можете подключаться к прокси. Затем локальный прокси направит запросы по сети Tor на выходной узел, который затем подключится к более широкому миру.
В вашем случае вы хотели бы что-то подобное. SOCKS или HTTP-прокси локально, который затем отправляет HTTP-запросы в некоторую точку выхода, которая затем будет выполнять соответствующие запросы в реальном времени.
Ни в коем случае вам не нужно делать захват пакетов, потому что это только начинает усложнять вещи и работать на совершенно другом уровне.
Я просто погуглил "пример туннелирования http" и нашел следующие ссылки. Может быть, они помогут вам.