xyzulu The Ninja Firewall has the option to retrieve the original IPs in their .htninja file, and that's what I did to solve the problem for now. However, this doesn't eliminate the need to write custom NGINX config files!
I'm not a developer; although I have programming knowledge, it's not my main work. I'm a Linux admin with four years of experience with NGINX.
Adding this provided config file is the best way to get the original IPs server-side, rather than tinkering around with WordPress and PHP code on the web app side. Just because we don't have the option to write custom NGINX, I need to add everything on the web app side, impacting performance and potentially leading to problems.
You mentioned the Ninja Firewall impacting performance, instead of suggesting Enhance to make it easier to run custom configurations.
I knew I could make it work using their .htninja file, but I wanted to implement it server-side and make it a global configuration for all customers. Do you want me to manually add everything to each customer, rather than applying custom NGINX configuration to all customers at once?
Also, regarding the Ninja Firewall, it is the only firewall that is not bloated, has no performance issues, and blocks almost 99% of threats due to its filtering engine.