Имеет ли ограничение входа пользователя на основе поддержки IP-адреса ipv6 для веб-приложения?

Кто-нибудь знает, как запретить пользователю входить в систему на основе IPV6-адреса для веб-приложения в С# dot net?

Я уже использовал функциональность с помощью IPV4, и она работает нормально, но я хотел ограничить пользователя на основе их IPV6 для веб-приложения.

Возможно ли это?

Ответ 1

В общем, да, вы можете получить адрес клиента IPv6 через код С# и реализовать ограничения IPv6 с помощью HttpRequest.UserHostAddress, как упоминалось в этот вопрос, или более точным с использованием HTTP_X_FORWARDED_FOR server, как описано в здесь. Если запрос выполняется через IPv6, у вас будет этот IP-адрес в переменной сервера HTTP_X_FORWARDED_FOR.

Вы также можете использовать IIS модуль ограничения IP-адресов для настройки ограничений IPv4 или IPv6. Поэтому ваше серверное приложение должно быть настроено для работы с IPv6.

Также учтите, что в Интернете в основном вы можете получить IP-адрес, предоставленный вашим интернет-провайдером, а не реальный IP-адрес клиента. По-видимому, в локальных сетях вы можете увидеть реальный IP-адрес. Это так же, как вы видите свой IP-адрес здесь, это отличается от того, что вы видите в командах ipconfig или ifconfig.