Мы пытаемся определить, куда определенные запросы прибывают из нашего JAVA-приложения. Мы изменили файлы журнала для включения IP-адреса, и мы используем httpServletRequest.getRemoteAddr () для получения того удаленного адреса.
На наших локальных машинах разработки рабочий Tomcat это работает. В нашей среде CI (Tomcat на Mac), это работает.
Проблема состоит в том, что на нашей подготовке и продуктивных средах, это не работает. Мы всегда видим 127.0.0.1 от httpServletRequest.getRemoteAddr (). Нашей подготовкой и продуктивными средами является оба VMware VMs рабочий CentOS. Они работают в/на ESXi и находятся позади Cisco 5500 ASA.
Мы видели другие сообщения, подобные этой проблеме, которые говорят для поиска заголовка "X-Forwarded-For" и печати это, если это существует. Это не делает. Ниже полный список заголовков, которые проникают через запрос.
У нас нет большого понимания, как ASA или VMware настраиваются поэтому, если существует что-то там, которое могло бы вызывать это, предоставьте подробный ответ на том, что спросить нашу группу IT, собирающуюся получать зафиксированный. Мы думаем, что это могло бы быть связано с VMware, так как мы видим 127.0.0.1. Если бы это был ASA, то мы предположили бы, что видели бы IP ASA вместо этого, но я открыт для того, чтобы быть сказанным, что я являюсь неправильным.
Полные заголовки для запроса:
user-agent:Mozilla/5.0+(compatible; UptimeRobot/2.0; http://www.uptimerobot.com/)
accept:text/html,application/xhtml+xml,application/xml
q=0.9,*/*
q=0.8
accept-language:en-US,en
q=0.8
accept-charset:ISO-8859-1,UTF-8
q=0.7,*
q=0.7
host:host-omitted-for-stackoverflow.com
connection:keep-alive
ОБНОВЛЕНИЕ - Мы просто поняли, что у нас было локальное включенное перенаправление порта:
Единственная другая вещь, которая могла бы быть релевантной, состоит в том, что мы используем HTTP xinetd перенаправление порта для передачи трафика SSL к внутреннему порту:
service https
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
port = 443
protocol = tcp
redirect = localhost 8999
log_on_failure += USERID
}
Оказывается это была часть xinetd нашей конфигурации. Я собираюсь закрыть этот вопрос и задать еще один, конкретно спрашивающий об этом.
Возможно, файлы конфигурации сети установлены неправильно. Более подробную информацию о них можно найти здесь: http://docs.oracle.com/cd/E37670_01/E41138/html/ch11s02.html