Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > socketライブラリ > BasicSocketクラス > remote_address

instance method BasicSocket#remote_address

remote_address -> Addrinfo[permalink][rdoc]

getpeername(2) で得られたリモートアドレス情報を Addrinfo オブジェクトとして返します。

返されたオブジェクトの Addrinfo#protocol は 0 を返すことに注意してください。

require 'socket'

TCPSocket.open("www.ruby-lang.org", 80) {|s|
  p s.remote_address #=> #<Addrinfo: 221.186.184.68:80 TCP>
}

TCPServer.open("127.0.0.1", 1728) {|serv|
  c = TCPSocket.new("127.0.0.1", 1728)
  s = serv.accept
  p s.remote_address #=> #<Addrinfo: 127.0.0.1:36504 TCP>
}

[SEE_ALSO] BasicSocket#getpeername