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

Как я могу отслеживать переменные сервера с помощью Microsoft Network Monitor?

Я хотел бы понять, как сервер IIS заполняет переменные сервера HTTP_X_FORWARDED_FOR и REMOTE_ADDR, как я могу вручную «проанализировать» значения, которые IIS использует для определения этих переменных, проверив сводку кадров в Microsoft Network Monitor?

Ссылка эта статья (хотя и старый), я бы предположил, что серверная переменная REMOTE_ADDR заполняется на основе исходного адреса поля IP-заголовка из инициирующего соединения. Любые серверные переменные, которым предшествует HTTP_, заполняются заголовками HTTP, отправленными в запросе. Следовательно, серверная переменная HTTP_X_FORWARDED_FOR заполняется, если HTTP-запрос заполнен заголовком X-Forwarded-For с тире (-), интерпретируемым как подчеркивание (_).

Если модуль HTTP не вмешивается в структуру данных, значения при считывании с сетевого монитора, записанного на сервере, будут:

  • REMOTE_ADDR: IP-адрес источника из входящих пакетов, IP-адрес назначения из исходящих пакетов. Если сетевая трассировка получена от клиента, она может быть наоборот, если между браузером и веб-сервером нет других устройств.
  • HTTP_X_FORWARDED_FOR: Если отправлено, заголовок X-Forwarded-For HTTP-запроса. Для SSL-трафика может потребоваться закрытый ключ сертификата сервера для расшифровки трафика.