Não tenho certeza sobre qual firewall você está usando, mas parece que ele está intermediando o tráfego da web por conta própria. Se estiver atuando como proxy, pode estar configurando a variável $ _SERVER ['HTTP_X_FORWARDED_FOR']. Se esse for o caso, você pode verificar se está definido e, se for, use isso. Caso contrário, volte para o REMOTE_ADDR.
Note também que o IP do cliente pode ser falsificado com bastante facilidade, então espero que não seja crítico obter o IP correto em todos os casos (ou seja, espero que a segurança em particular não dependa somente disso).