Назад | Перейти на главную страницу

Как http-прокси определяют https-трафик с одним портом?

Если прокси-сервер получает пакет tcp, то IP-адрес и порт назначения - это IP-адрес и порт прокси. В этом случае я полагаю, что единственный способ, которым прокси-сервер может разрешить предполагаемый пункт назначения, - это либо маршрутизация исходного IP-адреса / порта, либо через поле хоста в заголовке http. Это верно?

Как в http-прокси Fiddler, так и Charles, я заметил, что инструмент принимает как http, так и https-соединения через один порт, который вы можете указать. Что эти инструменты делают, чтобы отличить эти два типа соединений?

HTTP-запросы состоят из команды «GET», «PUT» или аналогичной команды. Запросы HTTPS состоят из запроса «CONNECT», поскольку браузер просит прокси-сервер установить соединение. Прокси-сервер определяет адрес для подключения, потому что это параметр запроса CONNECT.

См. Записи в Википедии на HTTP туннель. Также см эта ссылка который показывает фактический трафик прокси HTTP и HTTPS.