Смена розетки в LSP

Можно ли изменить сокет назначения (IP и порт) исходящих пакетов, используя LSP (Layered Service Provider) в Windows?

Например, я хочу перенаправить все HTTP-пакеты на прокси-сервер (с указанием IP/ порта). Таким образом, я могу создать "общесистемный" прокси для Windows.

Я пытался включить звонок WSPSendTo внутри функции WSPSend сделать перенаправление. Эти две функции принимают одинаковые параметры за исключением того, что WSPSendTo принимает еще два параметра (const struct sockaddr FAR *, а также int).

Проблема в том, что трафик не был направлен на прокси, указанный в коде. Я проверил это с помощью wireshark!

1 ответ

Решение

Вы не можете изменить назначение TCP-сокета после того, как он был подключен, поэтому WSPSendTo (с ненулевым lpTo) не имеет никакого эффекта. Вы должны посмотреть на WSPConnect вместо.

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