У меня есть веб-приложение, которое должно вести себя по-разному для внутренних пользователей, чем внешние. Веб-приложение доступно через Интернет, а следовательно, и для внутренних пользователей.Как получить IP-адрес браузера или имя хоста?
Все пользователи являются анонимными, а не аутентифицированными, но страница должна отображаться по-разному для внутренних пользователей, чем внешняя. То, что я делаю в своем коде, - Request.UserHostName
, а затем Dns.GetHostEntry
. Затем результат сравнивается с настройкой в моем web.config
(который содержит что-то вроде *.mydomain.local
). Если сравнение дает положительный результат, я визуализирую HTML, который должен видеть внутренний пользователь. Я визуализирую HTML, который должен видеть внешний пользователь.
Однако моя проблема заключается в том, что я не всегда получаю ожидаемое значение от Request.UserHostName
. на сайте разработки я получаю IP-number
(?) машины, работающей в браузере, но на сайте клиента я не получаю IP-number
пользовательской машины, я получаю некоторые другие IP-number
. В браузерах нет каких-либо прокси-серверов или что-то в этом роде.
Должен ли я использовать что-то еще, кроме Request.UserHostName
?