我已经搜索过,但似乎无法找到这个简单问题的答案:
我如何强制 symfony 给我用户 ip 的 ipv4 版本,或者我错过了什么?
我可以同时获得 ipv4 和 ipv6 吗?
谢谢
编辑:我的问题是不同的,因为我不想获取任何 ip,我知道 getClientIP 函数(这就是它在标题中的原因),我希望该函数返回 ipv4 和 ipv6 版本的 ip。(或任何功能,以任何方式同时获得 ipv4 和 ipv6 )
Edit2:这就是我现在获得 ip 的方式:
public function getUserIp()
{
return $this->request->getClientIp();
}
Run Code Online (Sandbox Code Playgroud)
它只返回 ipv6。(这个函数是从我自己的 UserManager 内部运行的,它在每次调用时检查和更新当前用户,通过将事件插入控制器输入部分 symfony 管道)
小智 5
如果用户使用 IPv6 连接,则没有 IPv4 地址可显示,反之亦然。您始终只能获得一个版本的 IP。