ライブラリ
クラス
- Addrinfo (8)
- BasicSocket (3)
- IPAddr (7)
-
Net
:: HTTP (3) -
Net
:: IMAP :: Address (4) -
Net
:: POP3 (1) -
Net
:: SMTP (4) - Resolv (4)
-
Resolv
:: Hosts (4) -
Resolv
:: IPv4 (1) -
Resolv
:: IPv6 (1) - Socket (4)
-
Socket
:: Ifaddr (2) - UDPSocket (2)
- UNIXSocket (2)
モジュール
キーワード
- address (5)
- bind (1)
- canonname (1)
- connect (1)
- getaddress (2)
- getaddresses (2)
- getname (2)
- getnameinfo (1)
- getnames (2)
- getpeername (1)
- host (1)
- hton (1)
- inspect (2)
-
inspect
_ sockaddr (1) -
ip6
_ arpa (1) -
ip6
_ int (1) -
ip
_ address (1) -
ip
_ unpack (1) - mailbox (1)
- name (2)
- peeraddr (1)
-
proxy
_ address (1) - proxyaddr (1)
- recvfrom (1)
-
recvfrom
_ nonblock (2) - recvmsg (1)
-
recvmsg
_ nonblock (1) -
remote
_ addr (1) - reverse (1)
- route (1)
- send (1)
-
send
_ mail (1) - sendmail (1)
-
to
_ s (2) -
to
_ sockaddr (1) -
to
_ string (1) -
unix
_ path (1)
検索結果
先頭5件
-
UNIXSocket
# addr -> [String , String] (54949.0) -
ソケットの接続情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
ソケットの接続情報を表す配列を返します。配列の各要素は第1要
素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
クライアント側はパスを持たないため空文字列となります。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
p serv.addr #=> ["AF_UNIX", "/tmp/s"]
}
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p c.peeraddr #=> [... -
IPAddr
# to _ string -> String (27682.0) -
標準的な文字列表現に変換します。
標準的な文字列表現に変換します。
require 'ipaddr'
addr6 = IPAddr.new('::1')
addr6.to_s #=> "::1"
addr6.to_string #=> "0000:0000:0000:0000:0000:0000:0000:0001"
@see IPAddr#to_s -
Addrinfo
# inspect _ sockaddr -> String (27607.0) -
アドレスやポート番号などの情報を人間に読める形の文字列で返します。
アドレスやポート番号などの情報を人間に読める形の文字列で返します。
require 'socket'
Addrinfo.tcp("localhost", 80).inspect_sockaddr #=> "127.0.0.1:80"
Addrinfo.tcp("ip6-localhost", 80).inspect_sockaddr #=> "[::1]:80"
Addrinfo.unix("/tmp/sock").inspect_sockaddr #=> "/tmp/sock" -
Addrinfo
# ip _ address -> String (27607.0) -
IP アドレスを文字列で返します。
IP アドレスを文字列で返します。
require 'socket'
Addrinfo.tcp("127.0.0.1", 80).ip_address #=> "127.0.0.1"
Addrinfo.tcp("::1", 80).ip_address #=> "::1"
@see Addrinfo#ip_port, Addrinfo#ip_unpack -
UNIXSocket
# peeraddr -> [String , String] (18946.0) -
接続相手先ソケットの情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
接続相手先ソケットの情報を表す配列を返します。配列の各要素は第1要
素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p c.peeraddr #=> ["AF_UNIX", "/tmp/s"]
p c.addr #=> ["AF_UNIX", ""]
}
@see UNIXSocket#addr -
CGI
:: QueryExtension # remote _ addr -> String (18658.0) -
ENV['REMOTE_ADDR'] を返します。
ENV['REMOTE_ADDR'] を返します。 -
Addrinfo
# to _ sockaddr -> String (18610.0) -
struct sockaddr をパックした形式の文字列に変換します。
struct sockaddr をパックした形式の文字列に変換します。
require 'socket'
Addrinfo.tcp("localhost", 80).to_sockaddr
#=> "\x02\x00\x00P\x7F\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00" -
Net
:: HTTP # proxy _ address -> String|nil (18610.0) -
プロクシ経由で接続する HTTP オブジェクトならプロクシのアドレス を返します。
プロクシ経由で接続する HTTP オブジェクトならプロクシのアドレス
を返します。
そうでないなら nil を返します。
proxyaddr は時代遅れのメソッドです。
@see Net::HTTP#proxy_address=, Net::HTTP#proxy_port, Net::HTTP.new -
Net
:: HTTP # proxyaddr -> String|nil (18610.0) -
プロクシ経由で接続する HTTP オブジェクトならプロクシのアドレス を返します。
プロクシ経由で接続する HTTP オブジェクトならプロクシのアドレス
を返します。
そうでないなら nil を返します。
proxyaddr は時代遅れのメソッドです。
@see Net::HTTP#proxy_address=, Net::HTTP#proxy_port, Net::HTTP.new -
Net
:: HTTP # address -> String (18607.0) -
接続するアドレスを返します。
接続するアドレスを返します。
@see Net::HTTP.new -
Net
:: POP3 # address -> String (18607.0) -
接続するアドレスです。
接続するアドレスです。 -
Net
:: SMTP # address -> String (18607.0) -
接続先のアドレスを返します。
接続先のアドレスを返します。 -
Resolv
# getaddress(name) -> String (18607.0) -
ホスト名 name の IP アドレスをルックアップし、 ルックアップ結果の最初のアドレスを返します。
ホスト名 name の IP アドレスをルックアップし、
ルックアップ結果の最初のアドレスを返します。
@param name ホスト名を文字列で与えます。
@raise Resolv::ResolvError ルックアップに失敗したときに発生します。 -
Resolv
# getaddresses(name) -> [String] (18607.0) -
ホスト名 name の IP アドレスをルックアップし、 ルックアップ結果のアドレスリストを返します。
ホスト名 name の IP アドレスをルックアップし、
ルックアップ結果のアドレスリストを返します。
ルックアップに失敗した場合は空の配列が返されます。
@param name ホスト名を文字列で与えます。 -
Resolv
:: Hosts # getaddress(name) -> String (18607.0) -
ホスト名 name の IP アドレスをルックアップし、 ルックアップ結果の最初のアドレスを返します。
ホスト名 name の IP アドレスをルックアップし、
ルックアップ結果の最初のアドレスを返します。
@param name ホスト名を文字列で与えます。
@raise Resolv::ResolvError ルックアップに失敗したときに発生します。 -
Resolv
:: Hosts # getaddresses(name) -> [String] (18607.0) -
ホスト名 name の IP アドレスをルックアップし、 ルックアップ結果のアドレスリストを返します。
ホスト名 name の IP アドレスをルックアップし、
ルックアップ結果のアドレスリストを返します。
ルックアップに失敗した場合は空の配列が返されます。
@param name ホスト名を文字列で与えます。 -
Resolv
:: IPv4 # address -> String (18607.0) -
4byte バイト列の IPv4 アドレスを返します。
4byte バイト列の IPv4 アドレスを返します。 -
Resolv
:: IPv6 # address -> String (18607.0) -
IPv6アドレスを表す 16 byte の文字列(バイト列)を返します。
IPv6アドレスを表す 16 byte の文字列(バイト列)を返します。 -
Addrinfo
# getnameinfo(flags=0) -> [String , String] (9610.0) -
ノード名とサービスを文字列の配列で返します。
ノード名とサービスを文字列の配列で返します。
flags には Socket::NI_??? という名前の定数のビット OR を渡します。
require 'socket'
Addrinfo.tcp("127.0.0.1", 80).getnameinfo
#=> ["localhost", "www"]
Addrinfo.tcp("127.0.0.1", 80).getnameinfo(Socket::NI_NUMERICSERV)
#=> ["localhost", "80"]
@param flags フラグ
@raise SocketError getnam... -
IPAddr
# to _ s -> String (9397.0) -
文字列に変換します。
文字列に変換します。
require 'ipaddr'
addr6 = IPAddr.new('::1')
addr6.to_s #=> "::1"
addr6.to_string #=> "0000:0000:0000:0000:0000:0000:0000:0001"
@see IPAddr#to_string -
IPAddr
# reverse -> String (9325.0) -
DNS 逆引きのための文字列を返します。 IPv6 なら 3172 で定義された形式で返します。
DNS 逆引きのための文字列を返します。
IPv6 なら 3172 で定義された形式で返します。
例:
require "ipaddr"
p IPAddr.new("192.168.0.1").reverse # => "1.0.168.192.in-addr.arpa" -
Addrinfo
# to _ s -> String (9310.0) -
struct sockaddr をパックした形式の文字列に変換します。
struct sockaddr をパックした形式の文字列に変換します。
require 'socket'
Addrinfo.tcp("localhost", 80).to_sockaddr
#=> "\x02\x00\x00P\x7F\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00" -
Addrinfo
# canonname -> String|nil (9307.0) -
カノニカル名を文字列で返します。
カノニカル名を文字列で返します。
カノニカル名が存在しない場合には nil を返します。
カノニカル名は 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 TCP carbon.ruby-la... -
Addrinfo
# ip _ unpack -> [String , Integer] (9307.0) -
IP アドレスとポート番号を 2 要素の配列で返します。
IP アドレスとポート番号を 2 要素の配列で返します。
require 'socket'
Addrinfo.tcp("127.0.0.1", 80).ip_unpack #=> ["127.0.0.1", 80]
Addrinfo.tcp("::1", 80).ip_unpack #=> ["::1", 80]
@see Addrinfo#ip_address, Addrinfo#ip_port -
Addrinfo
# unix _ path -> String (9307.0) -
Unix domain socket の path を文字列で返します。
Unix domain socket の path を文字列で返します。
require 'socket'
Addrinfo.unix("/tmp/sock").unix_path #=> "/tmp/sock"
@raise SocketError アドレスが Unix domain socket のものでない場合に発生します -
IPAddr
# hton -> String (9307.0) -
ネットワークオーダーのバイト列に変換します。
ネットワークオーダーのバイト列に変換します。 -
IPAddr
# inspect -> String (9307.0) -
オブジェクトを人間が読める形式に変換した文字列を返します。
オブジェクトを人間が読める形式に変換した文字列を返します。 -
IPAddr
# ip6 _ arpa -> String (9307.0) -
IPv6 なら 3172 で定義された形式で DNS 逆引きのための文字列を返します。 IPv4 の場合は例外を発生します。
IPv6 なら 3172 で定義された形式で DNS 逆引きのための文字列を返します。
IPv4 の場合は例外を発生します。 -
IPAddr
# ip6 _ int -> String (9307.0) -
IPv6 なら 1886 互換形式で DNS 逆引きのための文字列を返します。 IPv4 の場合は例外を発生します。
IPv6 なら 1886 互換形式で DNS 逆引きのための文字列を返します。
IPv4 の場合は例外を発生します。 -
Net
:: IMAP :: Address # host -> String | nil (9307.0) -
メールアドレスのホスト名を返します。
メールアドレスのホスト名を返します。
nil は 822 のグループ文法に対応します。
これについては Net::IMAP::Address#mailbox も参照してください。
そうでない場合は 822 のドメイン名を表します。
通常は、メールアドレスの「@」の後ろのドメイン名を返します。 -
Net
:: IMAP :: Address # mailbox -> String | nil (9307.0) -
メールアドレスのメールボックス名を返します。
メールアドレスのメールボックス名を返します。
これが nil ならばそれは 822 group の終わりを意味します。
これが nil でなく、Net::IMAP::Address#mailbox が nil ならば、
822 のグループ名を表します。
どれでもなければ、822 の local-part を表します。
通常は、メールアドレスの「@」の手前を返します。 -
Net
:: IMAP :: Address # name -> String | nil (9307.0) -
メールアドレスの 822 の個人名(personal name)を返します。
メールアドレスの 822 の個人名(personal name)を返します。
個人名が存在しない場合は nil を返します。
通常は nil を返します。 -
Net
:: IMAP :: Address # route -> String | nil (9307.0) -
メールアドレスの SMTP at-domain-list を返します。
メールアドレスの SMTP at-domain-list を返します。
存在しない場合は nil を返します。
通常は nil を返します。 -
Socket
:: Ifaddr # inspect -> String (9307.0) -
self の情報を人間に読みやすい文字列にして返します。
self の情報を人間に読みやすい文字列にして返します。 -
Socket
:: Ifaddr # name -> String (9307.0) -
self のインターフェイス名を返します。
self のインターフェイス名を返します。 -
Net
:: SMTP # send _ mail(mailsrc , from _ addr , *to _ addrs) -> () (667.0) -
メールを送信します。
メールを送信します。
mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。
from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。
require 'net/smtp'
Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
... -
Net
:: SMTP # send _ message(mailsrc , from _ addr , *to _ addrs) -> () (667.0) -
メールを送信します。
メールを送信します。
mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。
from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。
require 'net/smtp'
Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
... -
Net
:: SMTP # sendmail(mailsrc , from _ addr , *to _ addrs) -> () (667.0) -
メールを送信します。
メールを送信します。
mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。
from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。
require 'net/smtp'
Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
... -
BasicSocket
# recvmsg(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (607.0) -
recvmsg(2) を用いてメッセージを受け取ります。
recvmsg(2) を用いてメッセージを受け取ります。
このメソッドはブロックします。ノンブロッキング方式で通信したい
場合は BasicSocket#recvmsg_nonblock を用います。
maxmesglen, maxcontrollen で受け取るメッセージおよび補助データ
(Socket::AncillaryData)の最大長をバイト単位で指定します。
省略した場合は必要なだけ内部バッファを拡大して
データが切れないようにします。
flags では Socket::MSG_* という名前の定数の biwsise OR を取った
ものを渡します。
opts にはその他... -
BasicSocket
# recvmsg _ nonblock(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (607.0) -
recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。
recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。
ブロッキングの有無以外は BasicSocket#recvmsg と同じです。
詳しくはそちらを参照してください。
@param maxmesglen 受け取るメッセージの最大長
@param flags フラグ
@param maxcontrollen 受け取る補助データの最大長
@param opts ハッシュオプション -
Resolv
# getname(address) -> String (607.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果の最初のホスト名を文字列で返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果の最初のホスト名を文字列で返します。
@param address IPアドレスを文字列で与えます。
@raise Resolv::ResolvError ルックアップに失敗したときに発生します。 -
Resolv
# getnames(address) -> [String] (607.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果のホスト名リストを返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果のホスト名リストを返します。
@param address IPアドレスを文字列で与えます。 -
Resolv
:: Hosts # getname(address) -> String (607.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果の最初のホスト名を文字列で返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果の最初のホスト名を文字列で返します。
@param address IPアドレスを文字列で与えます。
@raise Resolv::ResolvError ルックアップに失敗したときに発生します。 -
Resolv
:: Hosts # getnames(address) -> [String] (607.0) -
IP アドレス address のホスト名をルックアップし、 ルックアップ結果のホスト名リストを返します。
IP アドレス address のホスト名をルックアップし、
ルックアップ結果のホスト名リストを返します。
@param address IPアドレスを文字列で与えます。 -
Socket
# recvfrom(maxlen , flags=0) -> [String , Addrinfo] (607.0) -
ソケットからデータを受け取ります。
ソケットからデータを受け取ります。
Socket#recv と同様ですが、返り値として
データ文字列と相手ソケットのアドレスのペアが返されます。
flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。
@param maxlen ソケットから受けとるデータの最大値
@param flags フラグ
@raise Errno::EXXX recvfrom(2) がエラーを報告した場合に発生します。詳しくは
Errno と man を見てください。
例:
require 's... -
Socket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Addrinfo] (607.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
recvfrom(2) を呼び出します。
引数、返り値は Socket#recvfrom と同じです。
recvfrom(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Errno::EAGAIN のような待ってからリトライすることが
可能であることを意味する例外には、IO::WaitReadable が extend
されています。
@param maxlen ソケットから受けとるデータの最大値
@param flags フラグ
@rai... -
BasicSocket
# getpeername -> String (379.0) -
接続の相手先のソケットの情報を取得します。sockaddr 構造体をパッ クした文字列を返します。getpeername(2) を参照してください。
接続の相手先のソケットの情報を取得します。sockaddr 構造体をパッ
クした文字列を返します。getpeername(2) を参照してください。
例:
require 'socket'
serv = TCPServer.open("", 0)
c = TCPSocket.open(*Socket.unpack_sockaddr_in(serv.getsockname).reverse)
s = serv.accept
addr = c.getpeername
p addr #=> "\002\000\267\214\177\000\000\001\... -
UDPSocket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Array] (343.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。
ソケットをノンブロッキングモードに設定した後、
recvfrom(2) でソケットからデータを受け取ります。
maxlen で受け取るデータの最大バイト数を指定します。
flags はフラグで、Socket::MSG_* の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。
返り値はデータの文字列と送り元のアドレス情報の
2要素の配列となります。
recvfrom(2) がエラーになった場合、
Errno::EAGAIN, Errno::EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Err... -
Socket
# bind(my _ sockaddr) -> 0 (322.0) -
ソケットを my_sockaddr に結合します。bind(2) と同じ働きをします。
ソケットを my_sockaddr に結合します。bind(2)
と同じ働きをします。
@param my_sockaddr ソケットアドレス構造体を pack した文字列lib:socket#pack_stringもしくはAddrinfoオブジェクトを指定します。
@return 0 を返します。 -
Socket
# connect(server _ sockaddr) -> 0 (322.0) -
connect(2) でソケットを接続します。
connect(2) でソケットを接続します。
server_sockaddr は、
lib:socket#pack_string
もしくは Addrinfo オブジェクト
です。
0 を返します。
@param server_sockaddr 接続先アドレス
@raise Errno::EXXX connect(2) がエラーを報告した場合に発生します。詳しくは
man を参照してください。
たとえば IPv4 の TCP ソケットを生成し、connect で www.ruby-lang.org:80 に接続するには以下のようにします。
例:
require... -
UDPSocket
# send(mesg , flags , sockaddr _ to) -> Integer (322.0) -
UDP ソケットを介してデータを送ります。
UDP ソケットを介してデータを送ります。
flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しい意味は send(2) を参照してください。
host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先にデータを送ります。
実際に送ったデータの長さを返します。
sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。
host, port に関しては lib:so...