別のキーワード
クラス
- Addrinfo (429)
- BasicSocket (154)
- IPSocket (33)
- Socket (55)
-
Socket
:: AncillaryData (132) -
Socket
:: Ifaddr (11) -
Socket
:: Option (99) -
Socket
:: UDPSource (33) - TCPServer (44)
- UDPSocket (66)
- UNIXServer (33)
- UNIXSocket (66)
キーワード
- accept (33)
-
accept
_ nonblock (33) - addr (22)
- bind (33)
- bool (11)
- canonname (11)
-
cmsg
_ is? (11) - connect (11)
-
connect
_ address (11) -
connect
_ from (22) -
connect
_ to (22) - data (22)
-
do
_ not _ reverse _ lookup (11) -
do
_ not _ reverse _ lookup= (11) - family (22)
-
family
_ addrinfo (22) - getpeereid (11)
- getpeername (11)
- getsockname (11)
- getsockopt (11)
- inspect (11)
-
inspect
_ sockaddr (11) - int (22)
- ip? (11)
-
ip
_ address (11) -
ip
_ pktinfo (11) -
ip
_ port (11) -
ip
_ unpack (11) - ipv4? (11)
-
ipv4
_ loopback? (11) -
ipv4
_ multicast? (11) -
ipv4
_ private? (11) - ipv6? (11)
-
ipv6
_ linklocal? (11) -
ipv6
_ loopback? (11) -
ipv6
_ mc _ global? (11) -
ipv6
_ mc _ linklocal? (11) -
ipv6
_ mc _ nodelocal? (11) -
ipv6
_ mc _ orglocal? (11) -
ipv6
_ mc _ sitelocal? (11) -
ipv6
_ multicast? (11) -
ipv6
_ pktinfo (11) -
ipv6
_ pktinfo _ addr (11) -
ipv6
_ pktinfo _ ifindex (11) -
ipv6
_ sitelocal? (11) -
ipv6
_ to _ ipv4 (11) -
ipv6
_ unique _ local? (11) -
ipv6
_ unspecified? (11) -
ipv6
_ v4compat? (11) -
ipv6
_ v4mapped? (11) - ipv6only! (11)
- level (22)
- linger (11)
- listen (11)
-
local
_ address (22) - optname (11)
- path (11)
- peeraddr (22)
- pfamily (11)
- protocol (11)
- recv (11)
-
recv
_ io (11) - recvfrom (33)
-
recvfrom
_ nonblock (11) - recvmsg (11)
-
recvmsg
_ nonblock (11) -
remote
_ address (22) - reply (11)
- send (33)
-
send
_ io (11) - setsockopt (22)
- socktype (11)
- sysaccept (33)
-
to
_ s (22) -
to
_ sockaddr (11) - type (11)
-
unix
_ path (11) -
unix
_ rights (11) - unpack (11)
検索結果
先頭5件
-
Addrinfo
# ipv6 _ to _ ipv4 -> Addrinfo|nil (12203.0) -
IPv6 の v4 マップド/互換アドレスを v4 のアドレスに変換します。
...IPv6 の v4 マップド/互換アドレスを v4 のアドレスに変換します。
それ以外のアドレスの場合 nil を返します。
require 'socket'
Addrinfo.ip("::192.0.2.3").ipv6_to_ipv4 #=> #<Addrinfo: 192.0.2.3>
Addrinfo.ip("::ffff:192.0.2.3").ipv6_to_ipv4 #=> #<Addr......info: 192.0.2.3>
Addrinfo.ip("::1").ipv6_to_ipv4 #=> nil
Addrinfo.ip("192.0.2.3").ipv6_to_ipv4 #=> nil
Addrinfo.unix("/tmp/sock").ipv6_to_ipv4 #=> nil... -
Socket
:: Option # optname -> Integer (9103.0) -
ソケットのオプション名を表す整数を返します。
ソケットのオプション名を表す整数を返します。 -
BasicSocket
# getsockopt(level , optname) -> Socket :: Option (6327.0) -
ソケットのオプションを取得します。getsockopt(2) を参照してください。 取得したオプションのデータを Socket::Option で返します。
...します。getsockopt(2)
を参照してください。
取得したオプションのデータを Socket::Option で返します。
level, optname には Socket::SOL_SOCKET や Socket::SO_REUSEADDR
といった整数値の他、文字列("SOL_SOCKET", prefixなしの "SOCKET")や
シンボル(:S......param level getsockopt(2) の 第二引数のlevel
@param optname getsockopt(2) の 第三引数のoption_name
@see BasicSocket#setsockopt
例:
require 'socket'
serv = Socket.tcp_server_sockets("", 0)[0]
c = serv.local_address.connect
s = serv.accept
opt = c.getsockopt(Socket::IPP......ROTO_TCP, Socket::TCP_NODELAY)
# c.getsockopt("TCP", "NODELAY"), なども可能
p opt #=> #<Socket::Option: INET TCP NODELAY 0>
p opt.bool #=> false (Nagle アルゴリズム有効)
p opt.unpack("i")[0] #=> 0 (Socket::Option#unpack が互換性のために存在する)
# 整数値の場... -
BasicSocket
# setsockopt(level , optname , optval) -> 0 (6303.0) -
ソケットのオプションを設定します。setsockopt(2) を参照してください。
...ます。setsockopt(2)
を参照してください。
level, optname には Socket::SOL_SOCKET や Socket::SO_REUSEADDR
といった整数値の他、文字列("SOL_SOCKET", prefixなしの "SOCKET")や
シンボル(:SO_REUSEADDR, :REUSEADDR)を用いることができます。
optval には文......は setsockopt(2) にはその文字列と
長さが渡されます。整数の場合はintへのポインタが渡されます。
true/falseの場合は0/1という整数と解釈され、そのメモリ領域の
intポインタを渡します。
引数が1つの場合は Socket::Option で設定......e 'socket'
# 真偽値の場合
#setsockopt could be called like this:
sock.setsockopt(:SOCKET, :REUSEADDR, true)
sock.setsockopt(Socket::SOL_SOCKET,Socket::SO_REUSEADDR, true)
sock.setsockopt(Socket::Option.bool(:INET, :SOCKET, :REUSEADDR, true))
# 整数値の場合
#setsockopt c... -
BasicSocket
# setsockopt(socketoption) -> 0 (6203.0) -
ソケットのオプションを設定します。setsockopt(2) を参照してください。
...ます。setsockopt(2)
を参照してください。
level, optname には Socket::SOL_SOCKET や Socket::SO_REUSEADDR
といった整数値の他、文字列("SOL_SOCKET", prefixなしの "SOCKET")や
シンボル(:SO_REUSEADDR, :REUSEADDR)を用いることができます。
optval には文......は setsockopt(2) にはその文字列と
長さが渡されます。整数の場合はintへのポインタが渡されます。
true/falseの場合は0/1という整数と解釈され、そのメモリ領域の
intポインタを渡します。
引数が1つの場合は Socket::Option で設定......e 'socket'
# 真偽値の場合
#setsockopt could be called like this:
sock.setsockopt(:SOCKET, :REUSEADDR, true)
sock.setsockopt(Socket::SOL_SOCKET,Socket::SO_REUSEADDR, true)
sock.setsockopt(Socket::Option.bool(:INET, :SOCKET, :REUSEADDR, true))
# 整数値の場合
#setsockopt c... -
Socket
:: AncillaryData # timestamp -> Time (6127.0) -
タイムスタンプ制御メッセージに含まれる時刻を Time オブジェクト で返します。
...* SOL_SOCKET/SCM_TIMESTAMP (micro second) GNU/Linux, FreeBSD, NetBSD, OpenBSD, Solaris, MacOS X
* SOL_SOCKET/SCM_TIMESTAMPNS (nano second) GNU/Linux
* SOL_SOCKET/SCM_BINTIME (2**(-64) second) FreeBSD
require 'socket'
Addrinfo.udp("127.0.0.1", 0).bind {|s1|
Addrinfo.udp("127.0.0.1......pt(:SOCKET, :TIMESTAMP, true)
s2.send "a", 0, s1.local_address
ctl = s1.recvmsg.last
p ctl
#=> #<Socket::AncillaryData: INET SOCKET TIMESTAMP 2009-02-24 17:35:46.775581>
t = ctl.timestamp
p t #=> 2009-02-24 17:35:46 +0900
p t.usec #=> 775581
p......t.nsec #=> 775581000
}
}
@see Socket::Constants::SCM_TIMESTAMP,
Socket::Constants::SCM_TIMESTAMPNS,
Socket::Constants::SCM_BINTIME,
Socket::Constants::SO_TIMESTAMP,
Socket::Constants::SO_TIMESTAMPNS,
Socket::Constants::SO_BINTIME... -
BasicSocket
# getpeername -> String (6121.0) -
接続の相手先のソケットの情報を取得します。sockaddr 構造体をパッ クした文字列を返します。getpeername(2) を参照してください。
...クした文字列を返します。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\000\000\000\000\000\000\000\000"
p Socket.unpack_sockaddr_in(addr) #=> [46988, "127.0.0.1"]
p addr == s.getsockname #=> true... -
BasicSocket
# do _ not _ reverse _ lookup -> bool (6115.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.ruby......-lang.org", 80) {|sock|
p sock.do_not_reverse_lookup # => true
}
@see BasicSocket#do_not_reverse_lookup=... -
IPSocket
# peeraddr -> Array (6115.0) -
接続相手先ソケットの情報を表す配列を返します。配列の各要素は IPSocket#addr メソッドが返す配列 と同じです。
...ます。配列の各要素は
IPSocket#addr メソッドが返す配列
と同じです。
@raise Errno::EXXX getpeername(2) が 0 未満の値を返した場合に発生します。
例:
require 'socket'
TCPSocket.open("localhost", "http") {|s|
p s.peeraddr #=> ["AF_INET", 80, "loca......lhost.localdomain", "127.0.0.1"]
p s.addr #=> ["AF_INET", 52615, "localhost.localdomain", "127.0.0.1"]
}... -
UNIXServer
# accept -> UnixSocket (6115.0) -
クライアントからの接続要求を accept(2)で待ち受け、接続した UNIXSocket のインスタンスを返します。
...ept(2)で待ち受け、接続した
UNIXSocket のインスタンスを返します。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept
s.write "from server"
c.write "from client"
p c.recv(20) #=> "from server"
p...