HttpServletRequest.getRemoteAddr() в Tomcat возвращает IP-адрес в формате IPv6

HttpServletRequest.getRemoteAddr() в Tomcat возвращает IP-адрес в формате IPv6, но я хотел бы настроить его так, чтобы он возвращал IPv4.

Я получаю доступ к сервлету через localhost. Если я получаю к нему доступ через "127.0.0.1", то возвращает IP-адрес в формате IPv4 (см. Этот ответ).

Среда:

  • Windows 7 x64
  • Tomcat 6.0.35-windows-x64

Свойства моего подключения к локальной сети:IPv6 отключен, но он не работает, если я включаю его.

Свойства моей локальной сети

2 ответа

Решение

Попробуйте добавить этот параметр -Djava.net.preferIPv4Stack=true к вашей командной строке запуска tomcat.

Когда вы используете localhost/xxx, ваш браузер сначала должен найти сопоставленный адрес для имени "localhost". В файле системного хоста вы найдете:

# 127.0.0.1 localhost

#:: 1 localhost

оба определения отключены по умолчанию.

чтобы изменить правила сопоставления по умолчанию в браузере, необходимо включить определение.

Например: удалите "#" из первой строки файла хоста, ваш браузер будет точно знать, что "localhost" равен 127.0.0.1

ура

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