Абсолютный IP-адрес iPad? - PullRequest
0 голосов
/ 22 февраля 2012

У меня есть php-страница, на которой учащиеся школы входят в систему через свои iPad-ы. Мне нужно зарегистрировать свои IP-адреса в процессе (для ведения учета в школе), но все они имеют один и тот же IP-адрес с методомЯ использую:

if (getenv(HTTP_X_FORWARDED_FOR)) {
    $ipaddress = getenv(HTTP_X_FORWARDED_FOR);
} else {
    $ipaddress = getenv(REMOTE_ADDR);
}

Какой более подробный IP-адрес, который я могу получить, будет уникальным для каждого iPad?

Ответы [ 2 ]

1 голос
/ 22 февраля 2012

Это реальность сетей. Единственный проверенный адрес, который вы можете получить, это $_SERVER['REMOTE-ADDR'], так как это тот, который был согласован при установлении связи TCP / IP. И этот адрес может быть просто адресом маршрутизатора, прокси-сервера, устройства NAT или чего-то еще, что вы не можете «увидеть дальше». Все остальное в заголовках HTTP совершенно недоказуемо, ненадежно и легко подделывается.

IP-адреса просто не могут быть гарантированы или ожидаемы быть уникальными или «реальными», если вы не обладаете полным контролем и не обладаете полным знанием сети между клиентом и вашим сервером.

Это связано с тем, что основанные на IP сети с коммутацией пакетов предназначены для надежной доставки данных от одного узла в сети к другому. IP-адреса являются деталями реализации этого. Ни один из них не предназначен для уникальной идентификации .

0 голосов
/ 22 февраля 2012

Похоже, что iPad находятся за NAT, и в этом случае вы не сможете получить их внутренние IP-адреса.Даже если бы вы могли, он не был бы уникальным для каждого iPad.

...