$_SERVER['REMOTE_ADDR']
- это IP-адрес, на котором установлено TCP-соединение. Хотя технически возможно двунаправленное подделывание IP-адресов в Интернете (путем объявления нечестных маршрутов через BGP), такие атаки, скорее всего, будут обнаружены и недоступны для обычного злоумышленника - в основном ваш злоумышленник должен иметь контроль над интернет-провайдером или оператором. Не существует возможных однонаправленных спуфинговых атак на TCP (пока). Двунаправленный IP-спуфинг в локальной сети тривиален.
Также помните, что это может быть не IPv4, а адрес IPv6. Ваша текущая проверка хороша в этом отношении, но если вы убедитесь, что 1.2.3.4
происходит только в любом месте в пределах $_SERVER['REMOTE_ADDR']
, злоумышленник может просто подключиться с 2001:1234:5678::1.2.3.4
.
В общем, для всего, кроме критических (банковские / военные / потенциальный ущерб> 50 000 €) приложений, вы можете использовать удаленный IP-адрес, если вы можете исключить злоумышленников в своей локальной сети.