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