Възможно ли е да се извлече IP зад NAT в PHP? Използвам $_SERVER["REMOTE_ADDR"]
за получаване на IP адрес на клиента. Не дава точен IP адрес на клиента, който е зад NAT.
как да получа ip зад NAT с помощта на php?
Отговори (5)
Не, не е възможно. NAT означава транслация на мрежов адрес - IP адресът на пакетите се пренаписва на NAT устройството, така че публичният IP адрес е единственият, доколкото вашият сървър знае.
Въпреки това можете да използвате някои трикове - като например проверка за вътрешния IP адрес с помощта на Java Applet. Вижте това: Вземете правилния локален IP адрес от java applet
Не е възможно да получите IP зад NAT чрез HTTP и php.
Не. PHP вижда само външния IP.
'REMOTE_ADDR' IP адресът, от който потребителят разглежда текущата страница.
ако те използват прокси, можете да използвате
$real_ip = $_SERVER['HTTP_X_FORWARDED_FOR']
иначе не е възможно
Не можете да видите частния адрес на клиента и обикновено не ви е грижа да го видите, защото нямате достъп до него. Дори ако е използвал прокси, понякога може да получите адрес чрез:
$_SERVER['HTTP_X_FORWARDED_FOR']