我有一台通过Fortigate 40C连接到互联网的服务器。当我的php代码调用$_SERVER['REMOTE_ADDR']
时,它返回路由器的ip地址(fortigate),而不是访问php脚本的远程IP。
为什么会这样?
答案 0 :(得分:0)
Fortigate有一个选项可以在策略上“启用NAT”,这并不意味着转换地址(无论如何都会为你做这件事),但这意味着它会改变一些用网关IP替换远程IP的数据包。
确保已禁用“启用NAT”,$_SERVER['REMOTE_ADDR']
将按预期工作。