Я хотел бы понять, как сервер 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 не вмешивается в структуру данных, значения при считывании с сетевого монитора, записанного на сервере, будут: