回答
尝试:
require 'socket'
ip=Socket.ip_address_list.detect{|intf| intf.ipv4_private?}
ip.ip_address if ip
一个更简洁的方式来写它将是: 'Socket.ip_address_list.detect(&:ipv4_private?)。试试(:ip_address)' – gnz 2015-03-02 11:24:21
请注意,Socket.ip_address_list是1.9.x – rogerdpack 2015-12-07 08:30:48
呼叫使用你的IP,不是localhost页面。即,192.168.2.9:3000
在默认的开发环境的情况下会产生:
request.env['REMOTE_ADDR']
#=> 192.168.2.9
或:
request.remote_ip
#=> 192.168.2.9
引入的,不幸的是我相信这些涉及到客户端“发出请求”而不是服务器的IP地址...... – rogerdpack 2015-12-07 08:25:28
由于您的要求是本地服务器,则返回“localhost”的地址,即127.0.0.1
。 如果您从Internet上托管的计算机请求它,它会为您提供远程服务器的静态IP。
如果你想自己的互联网的静态IP,然后访问http://ping.eu,你可以看到你的公共IP。
我相信request.env['SERVER_NAME']
的作品,如果你想反映服务器的基址回
- 1. 获取我自己的IP地址
- 2. 如何使用WinINet函数获取自己的IP地址
- 3. 如何从一个struct addrinfo获取我自己的IP地址
- 4. 如何使用套接字地址获取自己的IP地址?
- 5. 获取IP地址
- 6. 获取IP地址
- 7. 获取IP地址
- 8. Scapy - 获取我自己的MAC地址
- 9. 检查您自己的IP地址
- 10. 获取IP地址的mac地址
- 11. 获取本地IP地址
- 12. 获取我的IP地址
- 13. 获取ip地址的值
- 14. 在我自己的IP地址上使用Linux NAT我的IP地址是
- 15. 从arp获取IP地址
- 16. 如何获取IP地址?
- 17. 在vb.net获取IP地址
- 18. 从bssid获取IP地址
- 19. 如何获取IP地址?
- 20. 获取IP地址C#
- 21. 获取多个IP地址
- 22. JAVA获取IP地址
- 23. 获取ip地址与XcvData
- 24. 获取全球IP地址
- 25. 获取IP地址在Lua
- 26. jQuery获取IP地址
- 27. Boost asio socket:如何获得自己的IP,端口地址?
- 28. Java:在我的家庭网络中获取我自己的IP地址
- 29. 获取IP地址到我自己的代码中...(cordova - cordova-plugin-networkinterface)
哪里是你的服务器上运行,并在那里你的浏览器运行您从请求?哪台机器? – 2012-08-10 07:32:17
我的rails服务器通过localhost运行。但我需要获取系统IP?或公共IP? 192.168.2.9是我的私人地址有什么办法得到那个? – amtest 2012-08-10 07:36:17
这是另一个关于此问题:http://stackoverflow.com/questions/5029427/ruby-get-local-ip-nix – 2012-08-10 07:38:48