module NetworkInterfaceHelper

Protected Instance Methods

get_ip() click to toggle source
# File lib/mrpin/core/remote/socket/base/extensions/network_interface_helper.rb, line 4
def get_ip
  result = self.my_first_public_ipv4

  result = self.my_first_private_ipv4 if result.nil?

  result = '127.0.0.1' if result.nil?

  result
end
my_first_private_ipv4() click to toggle source
# File lib/mrpin/core/remote/socket/base/extensions/network_interface_helper.rb, line 15
def my_first_private_ipv4
  result = nil

  addr_info = Socket.ip_address_list.detect do |intf|
    intf.ipv4_private?
  end

  result    = addr_info.ip_address unless addr_info.nil?

  result
end
my_first_public_ipv4() click to toggle source
# File lib/mrpin/core/remote/socket/base/extensions/network_interface_helper.rb, line 28
def my_first_public_ipv4
  result = nil

  addr_info = Socket.ip_address_list.detect do |intf|
    intf.ipv4? and !intf.ipv4_loopback? and !intf.ipv4_multicast? and !intf.ipv4_private?
  end

  result    = addr_info.ip_address unless addr_info.nil?

  result
end
my_public_ipv4_aws() click to toggle source
# File lib/mrpin/core/remote/socket/base/extensions/network_interface_helper.rb, line 41
def my_public_ipv4_aws
  result = nil

  begin
    result = `wget -qO- http://instance-data/latest/meta-data/public-ipv4`
  rescue Exception => e
    AppInfo.instance.on_server_error(e, e)
  end

  result
end