Что случилось с моим локальным IP-адресом? - PullRequest
1 голос
/ 21 октября 2011

Я пытаюсь создать сценарий PHP для моей домашней работы. Мне нужен скрипт для регистрации IP-адресов из соображений безопасности.

По какой-то причине, когда я запускаю следующий код:

echo $_SERVER['REMOTE_ADDR'];

Результат:

::1

Я думал, что IP-адрес локального хоста всегда был 127.0.0.1?

Кто-нибудь знает, что происходит? Это действительно беспокоит меня, и я не могу найти решение этой проблемы. Даже гугл не находит ничего связанного ...

Я должен отметить, что у меня установлена ​​XAMPP на 64-битной машине с Windows 7.

Заранее спасибо.

Ответы [ 5 ]

8 голосов
/ 21 октября 2011

::1 - это IPv6 loopback / адрес локального хоста, а 127.0.0.1 для IPv4 .Ваша система может иметь адреса IPv4 , и IPv6, если она правильно настроена.

То, что вы видите это, указывает на то, что сервер поддерживает IPv6.Это может также поддерживать IPv4.Когда сервер имеет несколько адресов, магические глобалы, такие как REMOTE_ADDR, будут показывать только один из них (обычно тот, который будет использоваться по умолчанию).

4 голосов
/ 21 октября 2011

:: 1 - это адрес локального хоста в IPv6 127.0.0.1 - это адрес локального хоста в IPv4 .

3 голосов
/ 21 октября 2011

Это ваш адрес IPv6, см. http://en.wikipedia.org/wiki/IPv6

2 голосов
/ 21 октября 2011

:: 1 - версия IPv6 127.0.0.1. Если вы Google IPv6, вы должны получить гораздо дальше. Удачи!

0 голосов
/ 21 октября 2011

В Windows 7 localhost разрешается в :: 1, что является ipv6 представлением 127.0.0.1

  • Открыть C: \ Windows \ System32 \ drivers \ etc \ hosts
  • Удалитьследующая строка, если имеется: :: 1 localhost
  • Добавьте следующую строку, если она отсутствует: 127.0.0.1 localhost

, если вам также необходимо подключение к MySQL, это поможет вамускорить соединение.

...