種類
- インスタンスメソッド (9)
- 特異メソッド (8)
クラス
- Addrinfo (6)
- BasicSocket (3)
- IPSocket (1)
- Socket (6)
- TCPSocket (1)
キーワード
- canonname (1)
- connect (1)
-
connect
_ from (2) -
do
_ not _ reverse _ lookup (1) -
family
_ addrinfo (2) - getaddress (1)
- getaddrinfo (1)
- gethostbyname (2)
- gethostname (1)
-
local
_ address (1) - new (1)
-
remote
_ address (1) - tcp (2)
検索結果
先頭5件
-
Socket
. getaddrinfo(nodename , servname , family=nil , socktype=nil , protocol=nil , flags=nil) -> Array (18379.0) -
2553で定義された getaddrinfo() の機能を提供するクラスメソッド。この関数は gethostbyname() や getservbyname() の代わりとして用意されており、 IP のバージョンに依存しないプログラムを書くための標準的な API です。
...名を指定します。 必須引数です。 (lib:socket#host_formatを参照)
@param servname サービス名を指定します。 必須引数です。 (lib:socket#service_formatを参照)
@param family アドレスファミリー。Socket::Constants::AF_INET など、AF_ で始まる定数を......指定します。
@param socktype ソケットタイプ。 Socket::Constants::SOCK_STREAM など、 SOCK_ で始まる定数を指定します。
@param protocol プロトコル。Socket::Constants::IPPROTO_IP など、IPPROTO_ で始まる定数を指定します。
@param flags getaddrinfo(3)......数に指定する addrinfo 構造体の ai_flags メンバに相当する整数。 Socket::AI_PASSIVEなど。
@return 7つの要素からなるアドレス情報に関する配列を返します。
@raise SocketError getaddrinfo(3)がエラーを返したときに発生する例外です
@see Ad... -
Addrinfo
# connect _ from(host , port) -> Socket (18343.0) -
引数で指定されたアドレスから 自身のアドレスへソケットを接続します。
...クが渡されたときにはそのブロックに接続済み Socket
オブジェクトが渡されます。ブロックの返り値がメソッドの返り値となります。
ブロックを省略した場合は、接続済みSocket
オブジェクトが返されます。
引数で指定した......アドレスはソケット接続のローカル側のアドレスになります。
require 'socket'
Addrinfo.tcp("www.ruby-lang.org", 80).connect_from("0.0.0.0", 4649) {|s|
s.print "GET / HTTP/1.0\r\nHost: www.ruby-lang.org\r\n\r\n"
puts s.read
}
@param host ホスト(IP アドレ... -
Addrinfo
# connect _ from(host , port) {|sock| . . . } -> object (18343.0) -
引数で指定されたアドレスから 自身のアドレスへソケットを接続します。
...クが渡されたときにはそのブロックに接続済み Socket
オブジェクトが渡されます。ブロックの返り値がメソッドの返り値となります。
ブロックを省略した場合は、接続済みSocket
オブジェクトが返されます。
引数で指定した......アドレスはソケット接続のローカル側のアドレスになります。
require 'socket'
Addrinfo.tcp("www.ruby-lang.org", 80).connect_from("0.0.0.0", 4649) {|s|
s.print "GET / HTTP/1.0\r\nHost: www.ruby-lang.org\r\n\r\n"
puts s.read
}
@param host ホスト(IP アドレ... -
BasicSocket
# do _ not _ reverse _ lookup -> bool (18343.0) -
ソケットごとのアドレスからホスト名への逆引きの設定を返します。
...きの
BasicSocket.do_not_reverse_lookup の値になります。
require 'socket'
BasicSocket.do_not_reverse_lookup = false
TCPSocket.open("www.ruby-lang.org", 80) {|sock|
p sock.do_not_reverse_lookup # => false
}
BasicSocket.do_not_reverse_lookup = true
TCPSocket.open("www.r......uby-lang.org", 80) {|sock|
p sock.do_not_reverse_lookup # => true
}
@see BasicSocket#do_not_reverse_lookup=... -
Socket
# connect(server _ sockaddr) -> 0 (18343.0) -
connect(2) でソケットを接続します。
...connect(2) でソケットを接続します。
server_sockaddr は、
lib:socket#pack_string
もしくは Addrinfo オブジェクト
です。
0 を返します。
@param server_sockaddr 接続先アドレス
@raise Errno::EXXX connect(2) がエラーを報告した場合に発生します。......、connect で www.ruby-lang.org:80 に接続するには以下のようにします。
例:
require 'socket'
s = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0)
sockaddr = Socket.sockaddr_in(80, "www.ruby-lang.org")
s.connect(sockaddr)
s.write "GET / HTTP/1.0\r\n\r\n"
print s.rea... -
Socket
. tcp(host , port , local _ host=nil , local _ port=nil , connect _ timeout: nil) -> Socket (18343.0) -
TCP/IP で host:port に接続するソケットオブジェクトを作成します。
...ックが返した値です。
ブロックなしで呼ばれた場合はソケットオブジェクトを返します。
require 'socket'
Socket.tcp("www.ruby-lang.org", 80) {|sock|
sock.print "GET / HTTP/1.0\r\nHost: www.ruby-lang.org\r\n\r\n"
sock.close_write
puts sock.r... -
Socket
. tcp(host , port , local _ host=nil , local _ port=nil , connect _ timeout: nil) {|socket| . . . } -> object (18343.0) -
TCP/IP で host:port に接続するソケットオブジェクトを作成します。
...ックが返した値です。
ブロックなしで呼ばれた場合はソケットオブジェクトを返します。
require 'socket'
Socket.tcp("www.ruby-lang.org", 80) {|sock|
sock.print "GET / HTTP/1.0\r\nHost: www.ruby-lang.org\r\n\r\n"
sock.close_write
puts sock.r... -
TCPSocket
. gethostbyname(host) -> Array (18343.0) -
ホスト名または IP アドレス (整数または"127.0.0.1" のような文字列)からホストの情報を返します。ホスト情報は、ホ スト名、ホストの別名の配列、ホストのアドレスタイプ、ホストの アドレスを各要素とする配列です。ホストのアドレスは octet decimal の文字列 ("127.0.0.1"のような文字列) や IPv6 アドレス ("::1" のような文字列) です。
...。
@return ホスト名、ホストの別名の配列、ホストのアドレスタイプ、ホストのアドレスを各要素とする配列を返します。
例:
require 'socket'
p TCPSocket.gethostbyname("www.ruby-lang.org")
#=> ["beryllium.ruby-lang.org", [], 2, "210.163.138.100"]... -
BasicSocket
# remote _ address -> Addrinfo (18325.0) -
getpeername(2) で得られたリモートアドレス情報を Addrinfo オブジェクトとして返します。
...返すことに注意してください。
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 BasicSocket#getpeername... -
IPSocket
. getaddress(host) -> String (18325.0) -
ホスト名からホストのアドレスを返します。ホストのアドレスは文 字列は octet decimal の文字列 (例: 127.0.0.1) です。
...ホストのアドレスを返します。ホストのアドレスは文
字列は octet decimal の文字列 (例: 127.0.0.1) です。
@param host ホスト名を文字列で指定します。
例:
require 'socket'
p IPSocket.getaddress("www.ruby-lang.org") #=> "210.163.138.100"... -
Socket
. gethostbyname(host) -> Array (18325.0) -
ホスト名または IP アドレス(指定方法に関しては lib:socket#host_formatを参照) からホストの情報を返します。
...ホスト名または IP アドレス(指定方法に関しては
lib:socket#host_formatを参照)
からホストの情報を返します。
@param host 文字列でホストを指定します。
@return ホスト情報を含んだ4要素の配列を返します。
=== 返り値のホスト......) ならば
Socket.unpack_sockaddr_in で unpack できます。
=== 使用例
irb(main):009:0> require 'socket'
irb(main):009:0> Socket.gethostbyname("210.251.121.214")
["helium.ruby-lang.org", ["helium"], 2, "\322\373y\326"]
irb(main):009:0> Socket.unpack_sockaddr_in(Socket.gethostby... -
Socket
. gethostname -> String (18325.0) -
システムの標準のホスト名を取得します。
...の標準のホスト名を取得します。
ホストの別名やアドレスなど他の情報を得るには
Socket.getaddrinfo を使ってください。
ただし、これは不可能な場合もあります。
例:
require 'socket'
p Socket.gethostname #=> "helium.ruby-lang.org"... -
BasicSocket
# local _ address -> Addrinfo (9025.0) -
getsockname(2) で得られたローカルアドレス情報を Addrinfo オブジェクトとして返します。
...してください。
require 'socket'
TCPSocket.open("www.ruby-lang.org", 80) {|s|
p s.local_address #=> #<Addrinfo: 192.168.0.129:36873 TCP>
}
TCPServer.open("127.0.0.1", 1512) {|serv|
p serv.local_address #=> #<Addrinfo: 127.0.0.1:1512 TCP>
}
@see BasicSocket#getsockname... -
Addrinfo
# canonname -> String|nil (379.0) -
カノニカル名を文字列で返します。
...返します。
カノニカル名は Addrinfo.getaddrinfo に Socket::AI_CANONINAME
を指定した場合にセットされます。
require 'socket'
list = Addrinfo.getaddrinfo("www.ruby-lang.org", 80, :INET, :STREAM, nil, Socket::AI_CANONNAME)
p list[0] #=> #<Addrinfo: 221.186.184.68:80... -
Addrinfo
# family _ addrinfo(host , port) -> Addrinfo (343.0) -
引数から自身に「似た」Addrinfo オブジェクトを生成します。
...「似た」の意味はプロトコルファミリ、ソケットタイプ、プロトコルが
同じことを意味します。
require 'socket'
Addrinfo.tcp("0.0.0.0", 4649).family_addrinfo("www.ruby-lang.org", 80)
#=> #<Addrinfo: 221.186.184.68:80 TCP (www.ruby-lang.org:80)>
Addr......info.unix("/tmp/sock").family_addrinfo("/tmp/sock2")
#=> #<Addrinfo: /tmp/sock2 SOCK_STREAM>
@param host ホスト(IP アドレスもしくはホスト名)
@param port ポート番号(整数)もしくはサービス名(文字列)
@param path Unix domain socket のパス... -
Addrinfo
# family _ addrinfo(path) -> Addrinfo (343.0) -
引数から自身に「似た」Addrinfo オブジェクトを生成します。
...「似た」の意味はプロトコルファミリ、ソケットタイプ、プロトコルが
同じことを意味します。
require 'socket'
Addrinfo.tcp("0.0.0.0", 4649).family_addrinfo("www.ruby-lang.org", 80)
#=> #<Addrinfo: 221.186.184.68:80 TCP (www.ruby-lang.org:80)>
Addr......info.unix("/tmp/sock").family_addrinfo("/tmp/sock2")
#=> #<Addrinfo: /tmp/sock2 SOCK_STREAM>
@param host ホスト(IP アドレスもしくはホスト名)
@param port ポート番号(整数)もしくはサービス名(文字列)
@param path Unix domain socket のパス... -
Addrinfo
. new(sockaddr , family=Socket :: PF _ UNSPEC , socktype=0 , protocol=0) -> Addrinfo (325.0) -
新たな Addrinfo オブジェクトを返します。
...e, protocol
は socket(2) のパラメータに対応します。
sockaddr には文字列もしくは配列を指定します。
配列の場合は IPSocket#addr や UNIXSocket#addr の
値と互換でなければなりません。
文字列の場合は Socket.sockaddr_in や
Socket.unpack_sockadd......* ["AF_INET6", 42304, "ip6-localhost", "::1"]
* ["AF_UNIX", "/tmp/sock"]
* Socket.sockaddr_in("smtp", "2001:DB8::1")
* Socket.sockaddr_in(80, "172.18.22.42")
* Socket.sockaddr_in(80, "www.ruby-lang.org")
* Socket.sockaddr_un("/tmp/sock")
配列で AF_INET/AF_INET6 を指定した場合、......は Socket::PF_INET のようなプロコルファミリーを指定します。
文字列やシンボル名を指定することができます(PF_ というプレフィクスは
省略することもできます)。例えば :INET, :INET6, :UNIX, "PF_INET" などです。
socktype は Socket::SO...