$_SERVER['REMOTE_ADDR'] может некорректно показать ip из за настроек самого сервера. Если например сервер находится в докер контейнере, то без дополнительных настроек, remote_addr покажет ip контейнера, не пользователя. Тоже самое если ваш сервер сидит за каким то натом, например nuxt фронтом и тд. Это тоже нужно учитывать. В интернете куча советов на тему "remote addr показывает неверный ip".