Page.Request.UserHostAddress в недопустимом формате - PullRequest
8 голосов
/ 06 июня 2009

Иногда мое приложение ASP.NET возвращает значение ":: 1" при запросе Page.Request.UserHostAddress.

Я не вижу никакой картины относительно того, когда он возвращает правильный IP-адрес против, когда он возвращает неправильно отформатированную строку. Он будет работать полдня, а затем перестанет работать на час в случайном порядке. Есть мысли?

Edit:

Хорошо, это адрес обратной связи для IPv6. :) Что приводит к дальнейшему вопросу ... Когда / почему IPv6 будет использоваться в некоторых случаях, а не в других?

Ответы [ 5 ]

13 голосов
/ 06 июня 2009

:: 1 - адрес обратной связи IPv6. Эквивалент 127.0.0.1 для IPv4.

1 голос
/ 06 июня 2009

Я полагаю, что вы можете переопределить это, закомментировав запись локального хоста IPv6 в файле hosts. Файл находится по адресу:

C: \ Windows \ System32 \ Drivers \ Etc \ хостов

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

127.0.0.1 localhost

# :: 1 localhost

1 голос
/ 06 июня 2009

Это также правильный IP-адрес, но это адрес IPv6 вместо адреса IPv4.

0 голосов
/ 18 августа 2012

Я полагаю, что вы находитесь на сервере, просматривая свой веб-сайт и страницу с удаленного компьютера, вы должны увидеть адрес клиента IPv4.

0 голосов
/ 06 июня 2009

Я полагаю, что веб-сервер Visual Studio по умолчанию использует IPv6, может отключить поддержку в браузерах, вот статья об ошибке, которая вызывает проблемы с производительностью Firefox и IPv6 .

...