Сколько компьютеров может иметь один и тот же публичный IP?

32

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

Эмануил Русев
источник
15
Посмотри в "NAT". Если весь университет выходит через один общедоступный IP-адрес, все эти клиенты будут казаться вам одним IP-адресом.
Sirex
23
кроме того, именно поэтому использование IP-адреса в качестве идентификатора для ip клиента часто является очень плохой идеей :-)
Sirex
2
RE: 12-часовой запрет поразил большое количество людей в стране, потому что весь веб-трафик в Катаре направляется через один сетевой адрес. news.bbc.co.uk/2/hi/technology/6224677.stm
Борис Треухов
1
кроме того, это также, почему NAT - действительно плохая идея
b0fh
3
@ b0fh: На самом деле, это зависит от вашей ситуации - если у вас было, скажем, конечное адресное пространство (например, 2 ^ 8 адресов), большее количество одновременно подключенных устройств (например, 2 ^ 16), и не было никакой альтернативы (все что не является маловероятным сценарием для интернет-провайдера в конце 1990-х годов), NAT вполне удовлетворит.
Писквор

Ответы:

59

Количество компьютеров не ограничено , однако количество одновременных подключений ограничено из-за возможности исчерпания эфемерного порта. Большее количество компьютеров обычно означает больше подключений, поэтому существует практическое ограничение на количество компьютеров, которые обычно используют один и тот же IP-адрес. Обычно при очень большом количестве компьютеров несколько IP-адресов будут совместно использоваться в пуле, который будет использоваться для NAT.

Джейсон Берг
источник
24
+1 за призрак исчерпания порта (слишком часто пропускается при NATing)
voretaq7
8
+1 за то, что заставил меня представить действительно скучный Mass Effect. «Теперь, когда вы Призрак, перенаправьте все исходящие порты из башни 3 в Цитадели в башню 2 с минимальной задержкой, пожалуйста».
Распродано Активист
Означает ли это, что вряд ли у вас будет 5 одинаковых запросов от разных компьютеров с «одинаковыми IP» за одну секунду?
Эмануил Русев
4
@Emanuil Rusev Нет. Есть 65 536 портов, поэтому маршрутизатор NAT может одновременно разрешить 65 536 подключений с 65 536 различных компьютеров. Теоретически это только определенный IP-адрес; они могут иметь еще 65 536 компьютеров, использующих эти порты для подключения к другому IP-адресу. В итоге, если вы получили 100 000 запросов с одного и того же IP-адреса, то, вероятно, они поступили с менее чем 100 000 компьютеров. Но вы не можете сказать намного больше, чем это.
Ричард Гадсден
@SoldOutActivist, ????
Pacerier
55

Столько, сколько может танцевать на голове булавки - или, точнее, столько, сколько администратор хочет спрятаться за NAT.

voretaq7
источник
28
1 000 000 были бы возможны, не говоря уже о 1000.
Майк Скотт
9
Еще хуже - за этим может стоять полный поставщик услуг беспроводной связи. Обычно они не предоставляют общедоступные IP-адреса. Я имею в виду, что кто-то вроде клиентов Vodaphone может использовать небольшое количество IP-адресов.
TomTom
6
Один провайдер мобильного интернета в Австрии скрывает все свои телефоны за одним IP. Причиняет большие проблемы в некоторых сценариях ограничения скорости.
mailq
2
@mailq какой это?
orange80
3
@Ian Boyd: Полный идентификатор для сеанса TCP: <src ip> <порт src> <dst ip> <порт dst>, и при наличии достаточного состояния в таблице NAT вы можете совместно использовать порт src или dst, если другой другой. Хотя обычно это не так (таким образом, такие вещи, как «конусообразный NAT» работают большую часть времени).
Vatine
13

Помимо NAT, они могут быть за прокси. если вам подходит прокси, вы можете найти больше информации в HTTP-заголовках запросов. Ищите заголовки X-Forwarded-For , которые могут помочь вам приблизиться к вашему реальному количеству пользователей.

Silent-Боб
источник
1
И если прокси-сервер особенно неприятен, X-Forwarded-For может быть подделан. Это может сделать любой нормальный клиент.
Pacerier
13

Более того, вы можете иметь один компьютер за корпоративным шлюзом, который будет использовать разные IP-адреса при каждом обращении из-за обратного прокси-сервера с балансировкой нагрузки. Не используйте IP в качестве идентификатора. Просто не надо.

Рэндал Шварц
источник
Альтернативные решения?
Pacerier
альтернативные решения? заставить людей войти или иным образом идентифицировать себя, если уникальная идентификация посетителей важна. или использовать анонимные куки-файлы (и даже те, которые идентифицируют только сеанс браузера, а не пользователя) - некоторые люди обычно очищают свои куки-файлы между сеансами или настраивают свой браузер так, чтобы они делали это автоматически. Точно так же некоторые люди делают неприятные / негигиеничные вещи, такие как совместное использование компьютеров и вход в систему. учетные записи). «Идентичность», основанная на IP-адресе, примерно так же точна, как сопоставление человека в городе с тысячами или даже миллионами, ничего не знающего о них, кроме его цвета волос.
Cas
Конечно, «заставить людей войти» требует, чтобы на вашем сайте было достаточно ценности для ПОЛЬЗОВАТЕЛЯ, которая стоила бы беспокойства и потенциального риска для конфиденциальности.
Cas
@cas "заставить людей войти в систему" означает, что пользователи, на которых распространяются ограничения на основе прошлых некачественных вкладов, просто создадут новую учетную запись, чтобы обойти ограничение скорости.
Дамиан Йеррик
Большие сети используют пул публичных адресов для NAT, необязательно для балансировки нагрузки, чтобы избежать исчерпания порта. Один и тот же клиент может установить несколько подключений к одному и тому же месту назначения с разных публичных IP-адресов.
Zac67
10

Для интернет-провайдера довольно типично давать клиенту только один IP-адрес. Чтобы маршрутизатор разрешил нескольким пользователям в частной сети использовать этот адрес, он использует NAT (преобразование сетевых адресов).

SpacemanSpiff
источник
3
Мой провайдер удваивает этот эффект, давая мне один IP-адрес, который явно явно проходит через NAT. Так что мои связи на самом деле проходят через два перевода.
jprete
См. Faqs.org/rfcs/rfc5684.html для более ужасных сценариев NAT.
MSalters
4

Конечно могут.

Если вы подключены к сети и у вас есть один общедоступный IP-адрес, каждый запрос страницы (даже если он поступает с разных компьютеров) все же поступает с одного и того же IP-адреса.

DKNUCKLES
источник
1

В локальной сети может быть любое количество компьютеров (это может зависеть от физического носителя, используемого между ними, т. Е. Кабелей, ретрансляторов и т. Д.), Обычно существует один шлюз (по крайней мере, один) для подключения к Интернету. Эти шлюзы обычно имеют несколько IP-адресов (как частных, так и общедоступных) для связи.

Теперь, когда локальная сеть может быть настроена, она может быть настроена на локальные сети ... выяснить, правильный клиент - это очень сложная задача, если не невозможно ... Хотя вы все еще можете достичь этого, посмотрев таблицы маршрутизации шлюза или получив доступ к NAT ... Эта ссылка может помочь

В большинстве случаев общедоступный IP-адрес используется интернет-провайдерами и крупными или средними организациями ... Вот почему использование клиентского IP-адреса не считается мудрой идеей в наши дни.

Amit
источник
Как вы решаете проблему « Вот почему использование клиентского IP не считается мудрой идеей в наши дни »?
Pacerier