2016-04-15 109 views
0

我想从Rails中获取客户端IP,但是当我在本地机器上测试时,我得到的是::1而不是127.0.0.1Rails客户端IP :: 1?

我曾尝试以下两种方法在我的控制器:

request.remote_addr

request.remote_ip

on Rails的5 beta3版尝试,如果该事项。

回答

3

这是IP V6本地主机/ 127.0.0.1

+0

如何获得V4 IP? –

+1

一般来说:你不能。 IPv6具有比IPv4更大的地址空间,因此存在映射。有一些IPv6地址等同于IPv4地址,但是你不能对它们全部执行此操作。 –

+0

Rails定义了['ActionDispatch :: Request :: LOCALHOST'](https://github.com/rails/rails/blob/e595d91ac2c07371b441f8b04781e7c03ac44135/actionpack/lib/action_dispatch/http/request.rb#L26),可以考虑使用它用于比较。 – mudasobwa