如何获取Heroku服务器的IP,放置我的应用程序的位置?

时间:2012-08-21 07:00:54

标签: ruby heroku ip

我正在尝试获取服务器的IP地址,运行我的应用程序的位置。在PHP中存在名为GetHostByName()的函数(或类似的东西),Ruby的替代方法是什么?

1 个答案:

答案 0 :(得分:3)

你可以使用它(不需要shell):

require 'socket'
def local_ip
  orig, Socket.do_not_reverse_lookup = Socket.do_not_reverse_lookup, true  # turn off reverse DNS resolution temporarily
  UDPSocket.open do |s|
    s.connect '64.233.187.99', 1
    s.addr.last
  end
ensure
  Socket.do_not_reverse_lookup = orig
end

输出:

# irb:0> local_ip
# => "192.168.0.1"

我使用此功能,但功劳归于:http://coderrr.wordpress.com/2008/05/28/get-your-local-ip-address/