У меня есть критическая строка кода на моем сайте, которая работала в нашей среде разработки, но не на производстве. Ну, я говорю, что это работало в разработке, но правда в том, что он дал ::1
, который является адресом обратной связи IPv6.Request.UserHostAddress return IP-адрес балансировщика нагрузки
В любом случае, что я хотел сделать, это захватить IP-адрес пользователя, который пришел на сайт. Поэтому я использовал Request.UserHostAddress
. По мере развития, как я уже сказал, он дал мне петлевой адрес, который является правильным, так как я запускал сайт с моей машины. На живое это делало нечто совершенно другое. Он всегда возвращал адрес балансировки нагрузки.
Что я пытаюсь понять, так это. Неправильно ли я использовать Request.UserHostAddress для захвата IP-адреса пользователя или что-то не так с нашей настройкой сети или чем-то еще?
Спасибо,
Сэчин
если пересылается адрес содержит более одного адреса, то как мы можем определить правильный? –
@ It'satrap при наличии нескольких IP-адресов, первый определяет адрес клиента, остальные - прокси-адреса. Он обычно похож на следующий клиент1, proxy1, proxy2. –