1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2014-04-24 00:51+0900\n"
10 "PO-Revision-Date: 2014-04-27 01:54+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
19 #: build/C/man7/arp.7:13
25 #: build/C/man7/arp.7:13
31 #: build/C/man7/arp.7:13 build/C/man3/cmsg.3:11 build/C/man7/ddp.7:12
32 #: build/C/man5/gai.conf.5:19 build/C/man1/getent.1:24
33 #: build/C/man3/getipnodebyname.3:26 build/C/man2/getpeername.2:42
34 #: build/C/man5/host.conf.5:26 build/C/man7/hostname.7:39
35 #: build/C/man5/hosts.5:27 build/C/man5/hosts.equiv.5:6 build/C/man7/icmp.7:12
36 #: build/C/man3/inet_ntop.3:26 build/C/man3/inet_pton.3:27
37 #: build/C/man3/inet_net_pton.3:26 build/C/man7/ip.7:36 build/C/man7/ipv6.7:86
38 #: build/C/man7/netdevice.7:18 build/C/man5/nss.5:19
39 #: build/C/man5/nsswitch.conf.5:25 build/C/man7/packet.7:12
40 #: build/C/man5/protocols.5:29 build/C/man7/raw.7:13 build/C/man3/rcmd.3:43
41 #: build/C/man3/rexec.3:41 build/C/man5/services.5:34
42 #: build/C/man2/shutdown.2:40 build/C/man7/tcp.7:76 build/C/man7/udp.7:12
43 #: build/C/man7/udplite.7:27 build/C/man7/unix.7:18 build/C/man7/x25.7:12
49 #: build/C/man7/arp.7:13 build/C/man3/byteorder.3:32 build/C/man3/cmsg.3:11
50 #: build/C/man7/ddp.7:12 build/C/man3/endian.3:28 build/C/man3/ether_aton.3:31
51 #: build/C/man5/gai.conf.5:19 build/C/man3/getaddrinfo.3:43
52 #: build/C/man3/getaddrinfo_a.3:29 build/C/man3/gethostbyname.3:38
53 #: build/C/man3/getipnodebyname.3:26 build/C/man3/getnameinfo.3:10
54 #: build/C/man3/getnetent.3:30 build/C/man3/getnetent_r.3:26
55 #: build/C/man2/getpeername.2:42 build/C/man3/getprotoent.3:30
56 #: build/C/man3/getprotoent_r.3:26 build/C/man3/getservent.3:34
57 #: build/C/man3/getservent_r.3:26 build/C/man7/hostname.7:39
58 #: build/C/man5/hosts.5:27 build/C/man5/hosts.equiv.5:6 build/C/man7/icmp.7:12
59 #: build/C/man3/inet.3:42 build/C/man3/inet_ntop.3:26
60 #: build/C/man3/inet_pton.3:27 build/C/man3/inet_net_pton.3:26
61 #: build/C/man7/ip.7:36 build/C/man7/ipv6.7:86 build/C/man7/netdevice.7:18
62 #: build/C/man8/nscd.8:23 build/C/man5/nscd.conf.5:20 build/C/man5/nss.5:19
63 #: build/C/man5/nsswitch.conf.5:25 build/C/man7/packet.7:12
64 #: build/C/man5/protocols.5:29 build/C/man7/raw.7:13 build/C/man3/rcmd.3:43
65 #: build/C/man5/resolv.conf.5:23 build/C/man3/resolver.3:32
66 #: build/C/man3/rexec.3:41 build/C/man5/services.5:34
67 #: build/C/man3/setnetgrent.3:10 build/C/man2/shutdown.2:40
68 #: build/C/man7/tcp.7:76 build/C/man7/udp.7:12 build/C/man7/udplite.7:27
69 #: build/C/man7/unix.7:18 build/C/man7/x25.7:12
71 msgid "Linux Programmer's Manual"
72 msgstr "Linux Programmer's Manual"
75 #: build/C/man7/arp.7:14 build/C/man3/byteorder.3:33 build/C/man3/cmsg.3:12
76 #: build/C/man7/ddp.7:13 build/C/man3/endian.3:29 build/C/man3/ether_aton.3:32
77 #: build/C/man5/gai.conf.5:20 build/C/man3/getaddrinfo.3:44
78 #: build/C/man3/getaddrinfo_a.3:30 build/C/man1/getent.1:25
79 #: build/C/man3/gethostbyname.3:39 build/C/man3/getipnodebyname.3:27
80 #: build/C/man3/getnameinfo.3:11 build/C/man3/getnetent.3:31
81 #: build/C/man3/getnetent_r.3:27 build/C/man2/getpeername.2:43
82 #: build/C/man3/getprotoent.3:31 build/C/man3/getprotoent_r.3:27
83 #: build/C/man3/getservent.3:35 build/C/man3/getservent_r.3:27
84 #: build/C/man5/host.conf.5:27 build/C/man7/hostname.7:40
85 #: build/C/man5/hosts.5:28 build/C/man5/hosts.equiv.5:7 build/C/man7/icmp.7:13
86 #: build/C/man3/inet.3:43 build/C/man3/inet_ntop.3:27
87 #: build/C/man3/inet_pton.3:28 build/C/man3/inet_net_pton.3:27
88 #: build/C/man7/ip.7:37 build/C/man7/ipv6.7:87 build/C/man7/netdevice.7:19
89 #: build/C/man5/networks.5:27 build/C/man8/nscd.8:24
90 #: build/C/man5/nscd.conf.5:21 build/C/man5/nss.5:20
91 #: build/C/man5/nsswitch.conf.5:26 build/C/man7/packet.7:13
92 #: build/C/man5/protocols.5:30 build/C/man7/raw.7:14 build/C/man3/rcmd.3:44
93 #: build/C/man5/resolv.conf.5:25 build/C/man3/resolver.3:33
94 #: build/C/man3/rexec.3:42 build/C/man5/services.5:35
95 #: build/C/man3/setnetgrent.3:11 build/C/man2/shutdown.2:41
96 #: build/C/man7/tcp.7:77 build/C/man7/udp.7:13 build/C/man7/udplite.7:28
97 #: build/C/man7/unix.7:19 build/C/man7/x25.7:13
103 #: build/C/man7/arp.7:16
104 msgid "arp - Linux ARP kernel module."
105 msgstr "arp - Linux ARP カーネルモジュール"
108 #: build/C/man7/arp.7:16 build/C/man3/byteorder.3:48 build/C/man3/cmsg.3:37
109 #: build/C/man7/ddp.7:23 build/C/man3/endian.3:53 build/C/man3/ether_aton.3:57
110 #: build/C/man5/gai.conf.5:22 build/C/man3/getaddrinfo.3:75
111 #: build/C/man3/getaddrinfo_a.3:50 build/C/man1/getent.1:30
112 #: build/C/man3/gethostbyname.3:129 build/C/man3/getipnodebyname.3:44
113 #: build/C/man3/getnameinfo.3:32 build/C/man3/getnetent.3:48
114 #: build/C/man3/getnetent_r.3:62 build/C/man2/getpeername.2:50
115 #: build/C/man3/getprotoent.3:48 build/C/man3/getprotoent_r.3:59
116 #: build/C/man3/getservent.3:52 build/C/man3/getservent_r.3:59
117 #: build/C/man5/host.conf.5:29 build/C/man7/hostname.7:42
118 #: build/C/man5/hosts.5:32 build/C/man5/hosts.equiv.5:11
119 #: build/C/man7/icmp.7:15 build/C/man3/inet.3:75 build/C/man3/inet_ntop.3:36
120 #: build/C/man3/inet_pton.3:36 build/C/man3/inet_net_pton.3:62
121 #: build/C/man7/ip.7:53 build/C/man7/ipv6.7:99 build/C/man7/netdevice.7:25
122 #: build/C/man5/networks.5:29 build/C/man8/nscd.8:26
123 #: build/C/man5/nscd.conf.5:23 build/C/man5/nss.5:22
124 #: build/C/man5/nsswitch.conf.5:28 build/C/man7/packet.7:25
125 #: build/C/man5/protocols.5:32 build/C/man7/raw.7:22 build/C/man3/rcmd.3:92
126 #: build/C/man5/resolv.conf.5:29 build/C/man3/resolver.3:85
127 #: build/C/man3/rexec.3:56 build/C/man5/services.5:37
128 #: build/C/man3/setnetgrent.3:44 build/C/man2/shutdown.2:47
129 #: build/C/man7/tcp.7:87 build/C/man7/udp.7:23 build/C/man7/udplite.7:38
130 #: build/C/man7/unix.7:29 build/C/man7/x25.7:21
136 #: build/C/man7/arp.7:24
138 "This kernel protocol module implements the Address Resolution Protocol "
139 "defined in RFC\\ 826. It is used to convert between Layer2 hardware "
140 "addresses and IPv4 protocol addresses on directly connected networks. The "
141 "user normally doesn't interact directly with this module except to configure "
142 "it; instead it provides a service for other protocols in the kernel."
144 "このカーネルプロトコルモジュールは、 RFC\\ 826 で定義されている Address "
145 "Resolution Protocol を 実装したものである。 ARP は、ダイレクトに接続された"
146 "ネットワーク上で、 第 2 層のハードウェアアドレスをIPv4 プロトコルアドレスに "
147 "変換するために用いられる。ユーザーは設定の場合を除いて 通常直接このモジュール"
148 "に関ることはない。 これはカーネル内部の他のプロトコルにサービスを提供するもの"
152 #: build/C/man7/arp.7:37
154 "A user process can receive ARP packets by using B<packet>(7) sockets. "
155 "There is also a mechanism for managing the ARP cache in user-space by using "
156 "B<netlink>(7) sockets. The ARP table can also be controlled via B<ioctl>"
157 "(2) on any B<AF_INET> socket."
159 "ユーザープロセスは、 B<packet>(7) ソケットを用いれば ARP パケットを受信する"
160 "ことができる。 ARP キャッシュをユーザー空間で管理することもできる。 これには "
161 "B<netlink>(7) を用いる。 ARP テーブルも制御可能で、これには任意の "
162 "B<AF_INET> ソケットに B<ioctl>(2) を用いる。"
165 #: build/C/man7/arp.7:49
167 "The ARP module maintains a cache of mappings between hardware addresses and "
168 "protocol addresses. The cache has a limited size so old and less frequently "
169 "used entries are garbage-collected. Entries which are marked as permanent "
170 "are never deleted by the garbage-collector. The cache can be directly "
171 "manipulated by the use of ioctls and its behavior can be tuned by the I</"
172 "proc> interfaces described below."
174 "ARP モジュールはハードウェアアドレスからプロトコルアドレスへの マッピングの"
175 "キャッシュを管理する。キャッシュの大きさには制限が あるので、古いエントリや利"
176 "用されないエントリはガベージコレクト される。 permanent (保存) マークがつけら"
177 "れたエントリは、 決してガベージコレクタによって消去されない。 ioctl を用いれ"
178 "ばキャッシュを直接操作することもできる。 また後述の I</proc> インタフェースに"
179 "よりキャッシュの振る舞いを調整できる。"
182 #: build/C/man7/arp.7:72
184 "When there is no positive feedback for an existing mapping after some time "
185 "(see the I</proc> interfaces below), a neighbor cache entry is considered "
186 "stale. Positive feedback can be gotten from a higher layer; for example "
187 "from a successful TCP ACK. Other protocols can signal forward progress "
188 "using the B<MSG_CONFIRM> flag to B<sendmsg>(2). When there is no forward "
189 "progress, ARP tries to reprobe. It first tries to ask a local arp daemon "
190 "B<app_solicit> times for an updated MAC address. If that fails and an old "
191 "MAC address is known, a unicast probe is sent B<ucast_solicit> times. If "
192 "that fails too, it will broadcast a new ARP request to the network. "
193 "Requests are sent only when there is data queued for sending."
195 "存在しているマッピングに対して、 正のフィードバックが一定時間ない (後述の I</"
196 "proc> インタフェースを見よ) と、 近傍キャッシュエントリ (neighbor cache "
197 "entry) は 古くなった (stale) とみなされる。 正のフィードバックは高位のレイ"
198 "ヤーからも取得できる (例えば TCP ACK が成功した場合など)。 他のプロトコル"
199 "は、 B<sendmsg>(2) に B<MSG_CONFIRM> フラグを用いることによって、 フォワード"
200 "プログレス (forward progress) をシグナルできる。 フォワードプログレスがなけれ"
201 "ば、 ARP は再びプローブを試みる。 まずローカルな arp デーモンに問合わせを行"
202 "い、 更新された MAC アドレスを取得しようとする。 このリクエストに "
203 "B<app_solicit> 回失敗すると、古い MAC アドレスがわかっている場合は、 unicast "
204 "のプローブが B<ucaset_solicit> 回送られる。これにも失敗すると、新しい ARP リ"
205 "クエスト をネットワークにブロードキャストする。 リクエストは、データが送信"
209 #: build/C/man7/arp.7:77
211 "Linux will automatically add a nonpermanent proxy arp entry when it receives "
212 "a request for an address it forwards to and proxy arp is enabled on the "
213 "receiving interface. When there is a reject route for the target, no proxy "
214 "arp entry is added."
216 "Linux は、あるアドレスへのリクエストを受信・フォワードし、 受信したインター"
217 "フェースで代理 arp が有効になっている場合には、 自動的にそのアドレスを "
218 "nonpermanent な代理 arp エントリに追加する。 そのターゲットに reject route が"
219 "あった場合には、 代理 arp エントリは一切追加されない。"
222 #: build/C/man7/arp.7:77 build/C/man7/ddp.7:144 build/C/man7/ip.7:1047
223 #: build/C/man7/netdevice.7:64 build/C/man7/packet.7:449
224 #: build/C/man7/tcp.7:1126 build/C/man7/udp.7:202 build/C/man7/unix.7:284
230 #: build/C/man7/arp.7:84
232 "Three ioctls are available on all B<AF_INET> sockets. They take a pointer "
233 "to a I<struct arpreq> as their argument."
235 "すべての B<AF_INET> ソケットでは、 3 つの ioctl が使用できる。 これらは "
236 "I<struct arpreq> へのポインタを引数に取る。"
239 #: build/C/man7/arp.7:94
243 " struct sockaddr arp_pa; /* protocol address */\n"
244 " struct sockaddr arp_ha; /* hardware address */\n"
245 " int arp_flags; /* flags */\n"
246 " struct sockaddr arp_netmask; /* netmask of protocol address */\n"
247 " char arp_dev[16];\n"
251 " struct sockaddr arp_pa; /* protocol address */\n"
252 " struct sockaddr arp_ha; /* hardware address */\n"
253 " int arp_flags; /* flags */\n"
254 " struct sockaddr arp_netmask; /* netmask of protocol address */\n"
255 " char arp_dev[16];\n"
259 #: build/C/man7/arp.7:103
261 "B<SIOCSARP>, B<SIOCDARP> and B<SIOCGARP> respectively set, delete and get an "
262 "ARP mapping. Setting and deleting ARP maps are privileged operations and "
263 "may be performed only by a process with the B<CAP_NET_ADMIN> capability or "
264 "an effective UID of 0."
266 "B<SIOCSARP>, B<SIOCDARP>, B<SIOCGARP> は、それぞれ ARP マッピングを設定・削"
267 "除・取得する。 ARP マップの設定と削除は特権が必要な操作であり、 "
268 "B<CAP_NET_ADMIN> 権限を持つプロセスか、実行ユーザー ID が 0 のプロセス でなけ"
272 #: build/C/man7/arp.7:113
274 "I<arp_pa> must be an B<AF_INET> address and I<arp_ha> must have the same "
275 "type as the device which is specified in I<arp_dev>. I<arp_dev> is a zero-"
276 "terminated string which names a device."
278 "I<arp_pa> は B<AF_INET> アドレスでなければならず、 I<arp_ha> は I<arp_dev> で"
279 "設定されたデバイスと同じタイプでなければならない。 I<arp_dev> はデバイスの名"
280 "前を示す、ゼロで終端された文字列である。"
283 #: build/C/man7/arp.7:118
285 msgid "I<arp_flags>\n"
286 msgstr "I<arp_flags>\n"
289 #: build/C/man7/arp.7:119
291 msgid "flag:meaning\n"
295 #: build/C/man7/arp.7:120
297 msgid "ATF_COM:Lookup complete\n"
298 msgstr "ATF_COM:参照完了\n"
301 #: build/C/man7/arp.7:121
303 msgid "ATF_PERM:Permanent entry\n"
304 msgstr "ATF_PERM:エントリを peramanent にする\n"
307 #: build/C/man7/arp.7:122
309 msgid "ATF_PUBL:Publish entry\n"
310 msgstr "ATF_PUBL:エントリを publish する\n"
313 #: build/C/man7/arp.7:123
315 msgid "ATF_USETRAILERS:Trailers requested\n"
316 msgstr "ATF_USETRAILERS:trailer が必要\n"
319 #: build/C/man7/arp.7:124
321 msgid "ATF_NETMASK:Use a netmask\n"
322 msgstr "ATF_NETMASK:netmask を用いる\n"
325 #: build/C/man7/arp.7:125
327 msgid "ATF_DONTPUB:Don't answer\n"
328 msgstr "ATF_DONTPUB:回答しない\n"
331 #: build/C/man7/arp.7:138
333 "If the B<ATF_NETMASK> flag is set, then I<arp_netmask> should be valid. "
334 "Linux 2.2 does not support proxy network ARP entries, so this should be set "
335 "to 0xffffffff, or 0 to remove an existing proxy arp entry. "
336 "B<ATF_USETRAILERS> is obsolete and should not be used."
338 "B<ATF_NETMASK> フラグがセットされているときには、 I<arp_netmask> が有効でなけ"
339 "ればならない。 Linux 2.2 は代理ネットワーク ARP エントリをサポートしていない"
340 "ので、 これは 0xffffffff にセットしておくか、あるいは 現存の代理 arp エントリ"
341 "を削除したい場合には 0 にしておく必要がある。 B<ATF_USETRAILERS> は obsolete "
345 #: build/C/man7/arp.7:138 build/C/man7/ddp.7:122 build/C/man7/icmp.7:41
346 #: build/C/man7/ip.7:923 build/C/man7/tcp.7:219 build/C/man7/udp.7:137
348 msgid "/proc interfaces"
349 msgstr "/proc インタフェース"
352 #: build/C/man7/arp.7:151
354 "ARP supports a range of I</proc> interfaces to configure parameters on a "
355 "global or per-interface basis. The interfaces can be accessed by reading or "
356 "writing the I</proc/sys/net/ipv4/neigh/*/*> files. Each interface in the "
357 "system has its own directory in I</proc/sys/net/ipv4/neigh/>. The setting "
358 "in the \"default\" directory is used for all newly created devices. Unless "
359 "otherwise specified, time-related interfaces are specified in seconds."
361 "ARP では、グローバルなパラメータやインターフェースごとのパラメータを I</"
362 "proc> インタフェースを通して設定することができる。 これらのインタフェースに"
363 "は、 I<proc/sys/net/ipv4/neigh/*/*> ファイルの読み書きによりアクセスできる。 "
364 "システムにあるそれぞれのインターフェースには、 それぞれ対応するディレクトリ"
365 "が I</proc/sys/net/ipv4/neigh/> 以下にある。 \"default\" ディレクトリに対して"
366 "設定をすると、 それ以降生成されるデバイス全てに対してその設定が用いられる。 "
367 "特に指定がなければ、時間に関る sysctl の単位は秒である。"
370 #: build/C/man7/arp.7:151
372 msgid "I<anycast_delay> (since Linux 2.2)"
373 msgstr "I<anycast_delay> (Linux 2.2 以降)"
377 #: build/C/man7/arp.7:158
379 "The maximum number of jiffies to delay before replying to a IPv6 neighbor "
380 "solicitation message. Anycast support is not yet implemented. Defaults to "
383 "IPv6 の近傍要請メッセージ (neighbor soliciation message) に応答するまでの最"
384 "大遅延時間 (jiffy 単位)。 anycast のサポートはまだ実装されていない。 デフォル"
388 #: build/C/man7/arp.7:158
390 msgid "I<app_solicit> (since Linux 2.2)"
391 msgstr "I<app_solicit> (Linux 2.2 以降)"
395 #: build/C/man7/arp.7:165
397 "The maximum number of probes to send to the user space ARP daemon via "
398 "netlink before dropping back to multicast probes (see I<mcast_solicit>). "
401 "ユーザー空間の ARP デーモンに netlink を用いて探索させる最大回数。 これを越え"
402 "るとマルチキャストによる探索に移行する (I<mcast_solicit> を見よ)。"
405 #: build/C/man7/arp.7:165
407 msgid "I<base_reachable_time> (since Linux 2.2)"
408 msgstr "I<base_reachable_time> (Linux 2.2 以降)"
412 #: build/C/man7/arp.7:176
414 "Once a neighbor has been found, the entry is considered to be valid for at "
415 "least a random value between I<base_reachable_time>/2 and "
416 "3*I<base_reachable_time>/2. An entry's validity will be extended if it "
417 "receives positive feedback from higher level protocols. Defaults to 30 "
418 "seconds. This file is now obsolete in favor of I<base_reachable_time_ms>."
420 "近傍のホストがみつかると、そのエントリは I<base_reachable_time>/2 から "
421 "3*I<base_reachable_time>/2 の間のランダムな値の時間、有効であるとみなされ"
422 "る。 エントリの有効性は、高位のプロトコルからポジティブなフィードバックを 受"
423 "け取ると延長される。デフォルトは 30 秒。 このファイルは現在は非推奨であり、代"
424 "わりに I<base_reachable_time_ms> を使うこと。"
427 #: build/C/man7/arp.7:176
429 msgid "I<base_reachable_time_ms> (since Linux 2.6.12)"
430 msgstr "I<base_reachable_time_ms> (Linux 2.6.12 以降)"
433 #: build/C/man7/arp.7:182
435 "As for I<base_reachable_time>, but measures time in milliseconds. Defaults "
436 "to 30000 milliseconds."
438 "I<base_reachable_time> と同じだが、時間をミリ秒単位で測る。 デフォルトは "
442 #: build/C/man7/arp.7:182
444 msgid "I<delay_first_probe_time> (since Linux 2.2)"
445 msgstr "I<delay_first_probe_time> (Linux 2.2 以降)"
449 #: build/C/man7/arp.7:188
451 "Delay before first probe after it has been decided that a neighbor is "
452 "stale. Defaults to 5 seconds."
454 "近傍ホストのエントリが古くなったと判断された後に 最初に探索を行うまでの遅延時"
458 #: build/C/man7/arp.7:188
460 msgid "I<gc_interval> (since Linux 2.2)"
461 msgstr "I<gc_interval> (Linux 2.2 以降)"
465 #: build/C/man7/arp.7:194
467 "How frequently the garbage collector for neighbor entries should attempt to "
468 "run. Defaults to 30 seconds."
470 "ガベージ・コレクタを近傍ホストエントリに対して実行させる頻度。 デフォルトは "
474 #: build/C/man7/arp.7:194
476 msgid "I<gc_stale_time> (since Linux 2.2)"
477 msgstr "I<gc_stale_time> (Linux 2.2 以降)"
481 #: build/C/man7/arp.7:201
483 "Determines how often to check for stale neighbor entries. When a neighbor "
484 "entry is considered stale, it is resolved again before sending data to it. "
485 "Defaults to 60 seconds."
487 "古くなった近傍ホストエントリに対してチェックを行う頻度。 近傍ホストエントリが"
488 "古くなったとみなされると、そのエントリに データを送る前には再度解決が行われ"
492 #: build/C/man7/arp.7:201
494 msgid "I<gc_thresh1> (since Linux 2.2)"
495 msgstr "I<gc_thresh1> (Linux 2.2 以降)"
499 #: build/C/man7/arp.7:208
501 "The minimum number of entries to keep in the ARP cache. The garbage "
502 "collector will not run if there are fewer than this number of entries in the "
503 "cache. Defaults to 128."
505 "ARP キャッシュに保存するエントリ数の最小値。 この数より少ないエントリしか"
506 "キャッシュになければ、 ガベージ・コレクタは実行されない。 デフォルトは 128。"
509 #: build/C/man7/arp.7:208
511 msgid "I<gc_thresh2> (since Linux 2.2)"
512 msgstr "I<gc_thresh2> (Linux 2.2 以降)"
516 #: build/C/man7/arp.7:215
518 "The soft maximum number of entries to keep in the ARP cache. The garbage "
519 "collector will allow the number of entries to exceed this for 5 seconds "
520 "before collection will be performed. Defaults to 512."
522 "ARP キャッシュに保存されるエントリ数のソフトな最大値。 キャッシュのエントリが"
523 "この数を 5 秒間越えつづけると、 ガベージ・コレクタが実行される。 デフォルト"
527 #: build/C/man7/arp.7:215
529 msgid "I<gc_thresh3> (since Linux 2.2)"
530 msgstr "I<gc_thresh3> (Linux 2.2 以降)"
534 #: build/C/man7/arp.7:222
536 "The hard maximum number of entries to keep in the ARP cache. The garbage "
537 "collector will always run if there are more than this number of entries in "
538 "the cache. Defaults to 1024."
540 "ARP キャッシュに保存されるエントリ数のハードな最大値。 キャッシュのエントリが"
541 "この数を越えると、 ガベージ・コレクタはただちに実行される。 デフォルトは "
545 #: build/C/man7/arp.7:222
547 msgid "I<locktime> (since Linux 2.2)"
548 msgstr "I<locktime> (Linux 2.2 以降)"
552 #: build/C/man7/arp.7:229
554 "The minimum number of jiffies to keep an ARP entry in the cache. This "
555 "prevents ARP cache thrashing if there is more than one potential mapping "
556 "(generally due to network misconfiguration). Defaults to 1 second."
558 "ARP エントリをキャッシュに保存する時間の最小値 (jiffy 単位)。 可能性のある"
559 "マッピングが一つ以上ある (たいていはネットワーク設定のミス) 場合に、 ARP "
560 "キャッシュのスラッシングが起きることを防ぐ。 デフォルトは 1 秒。"
563 #: build/C/man7/arp.7:229
565 msgid "I<mcast_solicit> (since Linux 2.2)"
566 msgstr "I<mcast_solicit> (Linux 2.2 以降)"
570 #: build/C/man7/arp.7:235
572 "The maximum number of attempts to resolve an address by multicast/broadcast "
573 "before marking the entry as unreachable. Defaults to 3."
575 "エントリを unreachable マークする前に、 アドレスをマルチキャスト/ブロードキャ"
576 "ストで解決しようとする 試行回数の最大値。 デフォルトは 3。"
579 #: build/C/man7/arp.7:235
581 msgid "I<proxy_delay> (since Linux 2.2)"
582 msgstr "I<proxy_delay> (Linux 2.2 以降)"
586 #: build/C/man7/arp.7:243
588 "When an ARP request for a known proxy-ARP address is received, delay up to "
589 "I<proxy_delay> jiffies before replying. This is used to prevent network "
590 "flooding in some cases. Defaults to 0.8 seconds."
592 "既知の代理 ARP アドレスに対して ARP リクエストを受信した場合に、 応答前に最"
593 "大 I<proxy_delay> jiffy まで遅延する。これは場合によって生じる ネットワーク・"
594 "フラッディング (network flooding) を避けるために用いる。 デフォルトは 0.8 "
598 #: build/C/man7/arp.7:243
600 msgid "I<proxy_qlen> (since Linux 2.2)"
601 msgstr "I<proxy_qlen> (Linux 2.2 以降)"
605 #: build/C/man7/arp.7:248
607 "The maximum number of packets which may be queued to proxy-ARP addresses. "
610 "代理 ARP アドレスに対してキューイングできる最大のパケット数。 デフォルトは "
614 #: build/C/man7/arp.7:248
616 msgid "I<retrans_time> (since Linux 2.2)"
617 msgstr "I<retrans_time> (Linux 2.2 以降)"
621 #: build/C/man7/arp.7:255
623 "The number of jiffies to delay before retransmitting a request. Defaults to "
624 "1 second. This file is now obsolete in favor of I<retrans_time_ms>."
626 "リクエストを再度送るまでの遅延時間 (jiffy 単位)。 デフォルトは 1 秒。 この"
627 "ファイルは現在は非推奨であり、代わりに I<retrans_time_ms> を使うこと。"
630 #: build/C/man7/arp.7:255
632 msgid "I<retrans_time_ms> (since Linux 2.6.12)"
633 msgstr "I<retrans_time_ms> (Linux 2.6.12 以降)"
636 #: build/C/man7/arp.7:259
638 "The number of milliseconds to delay before retransmitting a request. "
639 "Defaults to 1000 milliseconds."
641 "リクエストを再度送るまでの遅延時間 (ミリ秒単位)。 デフォルトは 1000 ミリ秒。"
644 #: build/C/man7/arp.7:259
646 msgid "I<ucast_solicit> (since Linux 2.2)"
647 msgstr "I<ucast_solicit> (Linux 2.2 以降)"
651 #: build/C/man7/arp.7:266
653 "The maximum number of attempts to send unicast probes before asking the ARP "
654 "daemon (see I<app_solicit>). Defaults to 3."
656 "ARP デーモンへの問い合わせを行う前に行う unicast 探索の最大試行数 "
657 "(I<app_solicit> を見よ)。デフォルトは 3。"
660 #: build/C/man7/arp.7:266
662 msgid "I<unres_qlen> (since Linux 2.2)"
663 msgstr "I<unres_qlen> (Linux 2.2 以降)"
667 #: build/C/man7/arp.7:272
669 "The maximum number of packets which may be queued for each unresolved "
670 "address by other network layers. Defaults to 3."
672 "解決されていないアドレスに対して、 他のネットワーク層からキューイングできる最"
676 #: build/C/man7/arp.7:272 build/C/man7/ddp.7:221 build/C/man3/endian.3:74
677 #: build/C/man3/getnameinfo.3:203 build/C/man7/icmp.7:161
678 #: build/C/man7/ipv6.7:363 build/C/man7/packet.7:502 build/C/man7/raw.7:175
679 #: build/C/man3/rcmd.3:262 build/C/man3/rexec.3:138 build/C/man7/tcp.7:1243
680 #: build/C/man7/udp.7:251 build/C/man7/udplite.7:132 build/C/man7/unix.7:401
681 #: build/C/man7/x25.7:100
687 #: build/C/man7/arp.7:279
689 "The I<struct arpreq> changed in Linux 2.0 to include the I<arp_dev> member "
690 "and the ioctl numbers changed at the same time. Support for the old ioctls "
691 "was dropped in Linux 2.2."
693 "Linux 2.0 で、 I<struct arpreq> に I<arp_dev> メンバーが含まれるように変更が"
694 "あった。また同時に ioctl 番号も変更された。古い ioctl は Linux 2.2 で用いるこ"
698 #: build/C/man7/arp.7:285
700 "Support for proxy arp entries for networks (netmask not equal 0xffffffff) "
701 "was dropped in Linux 2.2. It is replaced by automatic proxy arp setup by "
702 "the kernel for all reachable hosts on other interfaces (when forwarding and "
703 "proxy arp is enabled for the interface)."
705 "ネットワークに対する代理 arp エントリ (netmask が 0xffffffff でない) は、 "
706 "Linux 2.2 で用いることができなくなった。 これはカーネルによって設定される、別"
707 "のインターフェースにおける 到達可能なすべてのホストに対する自動代理 arp に"
708 "よって置き換えられた (そのインターフェースでフォワーディングと代理 arp が有効"
712 #: build/C/man7/arp.7:289
713 msgid "The I<neigh/*> interfaces did not exist before Linux 2.2."
714 msgstr "I<neigh/*> の各インタフェースは Linux 2.2 以前には存在しない。"
717 #: build/C/man7/arp.7:289 build/C/man7/ddp.7:244 build/C/man3/ether_aton.3:145
718 #: build/C/man3/gethostbyname.3:438 build/C/man3/inet_ntop.3:112
719 #: build/C/man3/inet_pton.3:150 build/C/man7/ip.7:1217 build/C/man7/ipv6.7:402
720 #: build/C/man7/netdevice.7:359 build/C/man7/packet.7:583
721 #: build/C/man7/raw.7:252 build/C/man3/rcmd.3:278 build/C/man3/rexec.3:158
722 #: build/C/man2/shutdown.2:104 build/C/man7/tcp.7:1250
723 #: build/C/man7/udplite.7:134 build/C/man7/x25.7:102
729 #: build/C/man7/arp.7:293
731 "Some timer settings are specified in jiffies, which is architecture- and "
732 "kernel version-dependent; see B<time>(7)."
734 "いくつかのタイマー設定は jiffy で指定されるが、 jiffy はアーキテクチャやカー"
735 "ネルのバージョンに依存する。 B<time>(7) を参照のこと。"
738 #: build/C/man7/arp.7:299
740 "There is no way to signal positive feedback from user space. This means "
741 "connection-oriented protocols implemented in user space will generate "
742 "excessive ARP traffic, because ndisc will regularly reprobe the MAC "
743 "address. The same problem applies for some kernel protocols (e.g., NFS over "
746 "ユーザー空間からポジティブなフィードバックを送る方法が存在しない。 つまり接続"
747 "指向 (connection-oriented) のプロトコルをユーザー空間で 実装すると、余計な "
748 "ARP トラフィックの原因となる。 なぜなら ndisc は定期的に MAC アドレスを再探索"
749 "するからである。 同様の問題はいくつかのカーネルプロトコル (NFS over UDP な"
753 #: build/C/man7/arp.7:302
755 "This man page mashes together functionality that is IPv4-specific with "
756 "functionality that is shared between IPv4 and IPv6."
758 "この man ページでは IPv4 特有の機能と IPv4 とIPv6 で共通の機能を一緒に説明し"
762 #: build/C/man7/arp.7:302 build/C/man3/byteorder.3:92 build/C/man3/cmsg.3:217
763 #: build/C/man7/ddp.7:249 build/C/man3/endian.3:151
764 #: build/C/man3/ether_aton.3:149 build/C/man5/gai.conf.5:93
765 #: build/C/man3/getaddrinfo.3:827 build/C/man3/getaddrinfo_a.3:600
766 #: build/C/man1/getent.1:368 build/C/man3/gethostbyname.3:443
767 #: build/C/man3/getipnodebyname.3:266 build/C/man3/getnameinfo.3:275
768 #: build/C/man3/getnetent.3:154 build/C/man3/getnetent_r.3:145
769 #: build/C/man2/getpeername.2:143 build/C/man3/getprotoent.3:142
770 #: build/C/man3/getprotoent_r.3:237 build/C/man3/getservent.3:159
771 #: build/C/man3/getservent_r.3:241 build/C/man5/host.conf.5:199
772 #: build/C/man7/hostname.7:85 build/C/man5/hosts.5:115
773 #: build/C/man5/hosts.equiv.5:84 build/C/man7/icmp.7:191
774 #: build/C/man3/inet.3:306 build/C/man3/inet_ntop.3:118
775 #: build/C/man3/inet_pton.3:215 build/C/man3/inet_net_pton.3:391
776 #: build/C/man7/ip.7:1236 build/C/man7/ipv6.7:413 build/C/man7/netdevice.7:373
777 #: build/C/man5/networks.5:74 build/C/man8/nscd.8:85
778 #: build/C/man5/nscd.conf.5:239 build/C/man5/nss.5:110
779 #: build/C/man5/nsswitch.conf.5:352 build/C/man7/packet.7:614
780 #: build/C/man5/protocols.5:81 build/C/man7/raw.7:269 build/C/man3/rcmd.3:285
781 #: build/C/man5/resolv.conf.5:290 build/C/man3/resolver.3:274
782 #: build/C/man3/rexec.3:167 build/C/man5/services.5:210
783 #: build/C/man3/setnetgrent.3:107 build/C/man2/shutdown.2:113
784 #: build/C/man7/tcp.7:1262 build/C/man7/udp.7:256 build/C/man7/udplite.7:146
785 #: build/C/man7/unix.7:445 build/C/man7/x25.7:118
791 #: build/C/man7/arp.7:305
792 msgid "B<capabilities>(7), B<ip>(7)"
793 msgstr "B<capabilities>(7), B<ip>(7)"
796 #: build/C/man7/arp.7:310
798 "RFC\\ 826 for a description of ARP. RFC\\ 2461 for a description of IPv6 "
799 "neighbor discovery and the base algorithms used. Linux 2.2+ IPv4 ARP uses "
800 "the IPv6 algorithms when applicable."
802 "RFC \\ 826: ARP の説明。 RFC\\ 2461: IPv6 neighbor discovery の説明と利用され"
803 "ている基礎アルゴリズム。 Linux 2.2 以降では IPv4 ARP は可能な場合は IPv6 アル"
807 #: build/C/man7/arp.7:310 build/C/man3/byteorder.3:96 build/C/man3/cmsg.3:222
808 #: build/C/man7/ddp.7:254 build/C/man3/endian.3:153
809 #: build/C/man3/ether_aton.3:151 build/C/man5/gai.conf.5:96
810 #: build/C/man3/getaddrinfo.3:837 build/C/man3/getaddrinfo_a.3:607
811 #: build/C/man1/getent.1:370 build/C/man3/gethostbyname.3:457
812 #: build/C/man3/getipnodebyname.3:271 build/C/man3/getnameinfo.3:308
813 #: build/C/man3/getnetent.3:161 build/C/man3/getnetent_r.3:148
814 #: build/C/man2/getpeername.2:150 build/C/man3/getprotoent.3:147
815 #: build/C/man3/getprotoent_r.3:240 build/C/man3/getservent.3:164
816 #: build/C/man3/getservent_r.3:244 build/C/man5/host.conf.5:204
817 #: build/C/man7/hostname.7:93 build/C/man5/hosts.5:126
818 #: build/C/man5/hosts.equiv.5:88 build/C/man7/icmp.7:195
819 #: build/C/man3/inet.3:317 build/C/man3/inet_ntop.3:122
820 #: build/C/man3/inet_pton.3:219 build/C/man3/inet_net_pton.3:394
821 #: build/C/man7/ip.7:1254 build/C/man7/ipv6.7:420 build/C/man7/netdevice.7:378
822 #: build/C/man5/networks.5:80 build/C/man8/nscd.8:91
823 #: build/C/man5/nscd.conf.5:244 build/C/man5/nss.5:112
824 #: build/C/man5/nsswitch.conf.5:355 build/C/man7/packet.7:628
825 #: build/C/man5/protocols.5:86 build/C/man7/raw.7:282 build/C/man3/rcmd.3:293
826 #: build/C/man5/resolv.conf.5:297 build/C/man3/resolver.3:280
827 #: build/C/man3/rexec.3:170 build/C/man5/services.5:222
828 #: build/C/man3/setnetgrent.3:111 build/C/man2/shutdown.2:117
829 #: build/C/man7/tcp.7:1288 build/C/man7/udp.7:267 build/C/man7/udplite.7:156
830 #: build/C/man7/unix.7:454 build/C/man7/x25.7:127
836 #: build/C/man7/arp.7:317 build/C/man3/byteorder.3:103 build/C/man3/cmsg.3:229
837 #: build/C/man7/ddp.7:261 build/C/man3/endian.3:160
838 #: build/C/man3/ether_aton.3:158 build/C/man5/gai.conf.5:103
839 #: build/C/man3/getaddrinfo.3:844 build/C/man3/getaddrinfo_a.3:614
840 #: build/C/man1/getent.1:377 build/C/man3/gethostbyname.3:464
841 #: build/C/man3/getipnodebyname.3:278 build/C/man3/getnameinfo.3:315
842 #: build/C/man3/getnetent.3:168 build/C/man3/getnetent_r.3:155
843 #: build/C/man2/getpeername.2:157 build/C/man3/getprotoent.3:154
844 #: build/C/man3/getprotoent_r.3:247 build/C/man3/getservent.3:171
845 #: build/C/man3/getservent_r.3:251 build/C/man5/host.conf.5:211
846 #: build/C/man7/hostname.7:100 build/C/man5/hosts.5:133
847 #: build/C/man5/hosts.equiv.5:95 build/C/man7/icmp.7:202
848 #: build/C/man3/inet.3:324 build/C/man3/inet_ntop.3:129
849 #: build/C/man3/inet_pton.3:226 build/C/man3/inet_net_pton.3:401
850 #: build/C/man7/ip.7:1261 build/C/man7/ipv6.7:427 build/C/man7/netdevice.7:385
851 #: build/C/man5/networks.5:87 build/C/man8/nscd.8:98
852 #: build/C/man5/nscd.conf.5:251 build/C/man5/nss.5:119
853 #: build/C/man5/nsswitch.conf.5:362 build/C/man7/packet.7:635
854 #: build/C/man5/protocols.5:93 build/C/man7/raw.7:289 build/C/man3/rcmd.3:300
855 #: build/C/man5/resolv.conf.5:304 build/C/man3/resolver.3:287
856 #: build/C/man3/rexec.3:177 build/C/man5/services.5:229
857 #: build/C/man3/setnetgrent.3:118 build/C/man2/shutdown.2:124
858 #: build/C/man7/tcp.7:1295 build/C/man7/udp.7:274 build/C/man7/udplite.7:163
859 #: build/C/man7/unix.7:461 build/C/man7/x25.7:134
861 "This page is part of release 3.65 of the Linux I<man-pages> project. A "
862 "description of the project, and information about reporting bugs, can be "
863 "found at \\%http://www.kernel.org/doc/man-pages/."
865 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.65 の一部\n"
866 "である。プロジェクトの説明とバグ報告に関する情報は\n"
867 "http://www.kernel.org/doc/man-pages/ に書かれている。"
870 #: build/C/man3/byteorder.3:32
876 #: build/C/man3/byteorder.3:32
882 #: build/C/man3/byteorder.3:32 build/C/man3/endian.3:28
883 #: build/C/man3/ether_aton.3:31 build/C/man3/getaddrinfo.3:43
884 #: build/C/man3/getaddrinfo_a.3:29 build/C/man3/getnameinfo.3:10
885 #: build/C/man3/getnetent.3:30 build/C/man3/getnetent_r.3:26
886 #: build/C/man3/getprotoent.3:30 build/C/man3/getprotoent_r.3:26
887 #: build/C/man3/getservent.3:34 build/C/man3/getservent_r.3:26
888 #: build/C/man3/inet.3:42 build/C/man8/nscd.8:23 build/C/man5/nscd.conf.5:20
889 #: build/C/man3/resolver.3:32 build/C/man3/setnetgrent.3:10
895 #: build/C/man3/byteorder.3:36
897 "htonl, htons, ntohl, ntohs - convert values between host and network byte "
900 "htonl, htons, ntohl, ntohs - ホストバイトオーダーとネットワークバイトオーダー"
904 #: build/C/man3/byteorder.3:36 build/C/man3/cmsg.3:14 build/C/man7/ddp.7:15
905 #: build/C/man3/endian.3:33 build/C/man3/ether_aton.3:35
906 #: build/C/man3/getaddrinfo.3:47 build/C/man3/getaddrinfo_a.3:33
907 #: build/C/man1/getent.1:27 build/C/man3/gethostbyname.3:46
908 #: build/C/man3/getipnodebyname.3:30 build/C/man3/getnameinfo.3:13
909 #: build/C/man3/getnetent.3:34 build/C/man3/getnetent_r.3:30
910 #: build/C/man2/getpeername.2:45 build/C/man3/getprotoent.3:34
911 #: build/C/man3/getprotoent_r.3:30 build/C/man3/getservent.3:38
912 #: build/C/man3/getservent_r.3:30 build/C/man5/hosts.5:30
913 #: build/C/man3/inet.3:46 build/C/man3/inet_ntop.3:29
914 #: build/C/man3/inet_pton.3:30 build/C/man3/inet_net_pton.3:29
915 #: build/C/man7/ip.7:39 build/C/man7/ipv6.7:89 build/C/man7/netdevice.7:21
916 #: build/C/man7/packet.7:15 build/C/man7/raw.7:16 build/C/man3/rcmd.3:48
917 #: build/C/man5/resolv.conf.5:27 build/C/man3/resolver.3:36
918 #: build/C/man3/rexec.3:44 build/C/man3/setnetgrent.3:14
919 #: build/C/man2/shutdown.2:43 build/C/man7/tcp.7:79 build/C/man7/udp.7:15
920 #: build/C/man7/udplite.7:30 build/C/man7/unix.7:21 build/C/man7/x25.7:15
926 #: build/C/man3/byteorder.3:39 build/C/man3/inet_ntop.3:32
927 #: build/C/man3/inet_pton.3:33 build/C/man3/inet_net_pton.3:32
929 msgid "B<#include E<lt>arpa/inet.hE<gt>>\n"
930 msgstr "B<#include E<lt>arpa/inet.hE<gt>>\n"
933 #: build/C/man3/byteorder.3:41
935 msgid "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
936 msgstr "B<uint32_t htonl(uint32_t >I<hostlong>B<);>\n"
939 #: build/C/man3/byteorder.3:43
941 msgid "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
942 msgstr "B<uint16_t htons(uint16_t >I<hostshort>B<);>\n"
945 #: build/C/man3/byteorder.3:45
947 msgid "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
948 msgstr "B<uint32_t ntohl(uint32_t >I<netlong>B<);>\n"
951 #: build/C/man3/byteorder.3:47
953 msgid "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
954 msgstr "B<uint16_t ntohs(uint16_t >I<netshort>B<);>\n"
957 #: build/C/man3/byteorder.3:54
959 "The B<htonl>() function converts the unsigned integer I<hostlong> from host "
960 "byte order to network byte order."
962 "B<htonl>() 関数は unsigned integer I<hostlong> を ホストバイトオーダーから"
963 "ネットワークバイトオーダーに変換する。"
966 #: build/C/man3/byteorder.3:60
968 "The B<htons>() function converts the unsigned short integer I<hostshort> "
969 "from host byte order to network byte order."
971 "B<htons>() 関数は unsigned short integer I<hostshort> を ホストバイトオー"
972 "ダーからネットワークバイトオーダーに変換する。"
975 #: build/C/man3/byteorder.3:66
977 "The B<ntohl>() function converts the unsigned integer I<netlong> from "
978 "network byte order to host byte order."
980 "B<ntohl>() 関数は unsigned integer I<netlong> を ネットワークバイトオーダー"
984 #: build/C/man3/byteorder.3:72
986 "The B<ntohs>() function converts the unsigned short integer I<netshort> "
987 "from network byte order to host byte order."
989 "B<ntohs>() 関数は unsigned short integer I<netshort> を ネットワークバイト"
990 "オーダーからホストバイトオーダーに変換する。"
993 #: build/C/man3/byteorder.3:76
995 "On the i386 the host byte order is Least Significant Byte first, whereas the "
996 "network byte order, as used on the Internet, is Most Significant Byte first."
998 "i80x86 のホストバイトオーダーでは最下位バイトが若いアドレスに配置されるが、 "
999 "インターネットで用いられるネットワークバイトオーダーでは最上位バイト が先に配"
1003 #: build/C/man3/byteorder.3:76 build/C/man3/ether_aton.3:127
1004 #: build/C/man3/rexec.3:142
1010 #: build/C/man3/byteorder.3:77 build/C/man3/ether_aton.3:128
1011 #: build/C/man3/rexec.3:143
1013 msgid "Multithreading (see pthreads(7))"
1014 msgstr "マルチスレッディング (pthreads(7) 参照)"
1017 #: build/C/man3/byteorder.3:85
1019 "The B<htonl>(), B<htons>(), B<ntohl>(), and B<ntohs>() functions are thread-"
1021 msgstr "関数 B<htonl>(), B<htons>(), B<ntohl>(), B<ntohs>() はスレッドセーフである。"
1024 #: build/C/man3/byteorder.3:85 build/C/man3/cmsg.3:141
1025 #: build/C/man3/endian.3:76 build/C/man3/ether_aton.3:143
1026 #: build/C/man3/getaddrinfo.3:594 build/C/man3/getaddrinfo_a.3:305
1027 #: build/C/man3/gethostbyname.3:317 build/C/man3/getipnodebyname.3:258
1028 #: build/C/man3/getnameinfo.3:206 build/C/man3/getnetent.3:145
1029 #: build/C/man3/getnetent_r.3:141 build/C/man2/getpeername.2:101
1030 #: build/C/man3/getprotoent.3:140 build/C/man3/getprotoent_r.3:131
1031 #: build/C/man3/getservent.3:157 build/C/man3/getservent_r.3:130
1032 #: build/C/man3/inet.3:219 build/C/man3/inet_ntop.3:100
1033 #: build/C/man3/inet_pton.3:129 build/C/man3/inet_net_pton.3:160
1034 #: build/C/man3/rcmd.3:270 build/C/man3/resolver.3:272
1035 #: build/C/man3/rexec.3:149 build/C/man3/setnetgrent.3:92
1036 #: build/C/man2/shutdown.2:91
1038 msgid "CONFORMING TO"
1042 #: build/C/man3/byteorder.3:87 build/C/man3/inet_pton.3:131
1043 msgid "POSIX.1-2001."
1044 msgstr "POSIX.1-2001."
1047 #: build/C/man3/byteorder.3:92
1049 "Some systems require the inclusion of I<E<lt>netinet/in.hE<gt>> instead of "
1050 "I<E<lt>arpa/inet.hE<gt>>."
1052 "いくつかのシステムでは、 I<E<lt>arpa/inet.hE<gt>> の代わりに I<E<lt>netinet/"
1053 "in.hE<gt>> をインクルードする必要がある。"
1056 #: build/C/man3/byteorder.3:96
1057 msgid "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1058 msgstr "B<endian>(3), B<gethostbyname>(3), B<getservent>(3)"
1061 #: build/C/man3/cmsg.3:11
1067 #: build/C/man3/cmsg.3:11 build/C/man7/ddp.7:12
1073 #: build/C/man3/cmsg.3:14
1075 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - access ancillary data"
1077 "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - 補助データにアクセスす"
1081 #: build/C/man3/cmsg.3:16 build/C/man7/ddp.7:17 build/C/man2/getpeername.2:47
1082 #: build/C/man7/ip.7:41 build/C/man7/ipv6.7:91 build/C/man7/raw.7:18
1083 #: build/C/man2/shutdown.2:45 build/C/man7/tcp.7:81 build/C/man7/udp.7:17
1084 #: build/C/man7/udplite.7:32 build/C/man7/unix.7:23 build/C/man7/x25.7:17
1085 msgid "B<#include E<lt>sys/socket.hE<gt>>"
1086 msgstr "B<#include E<lt>sys/socket.hE<gt>>"
1089 #: build/C/man3/cmsg.3:18
1090 msgid "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1091 msgstr "B<struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *>I<msgh>B<);>"
1094 #: build/C/man3/cmsg.3:20
1096 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1099 "B<struct cmsghdr *CMSG_NXTHDR(struct msghdr *>I<msgh>B<, struct cmsghdr "
1103 #: build/C/man3/cmsg.3:22
1104 msgid "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1105 msgstr "B<size_t CMSG_ALIGN(size_t >I<length>B<);>"
1108 #: build/C/man3/cmsg.3:24
1109 msgid "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1110 msgstr "B<size_t CMSG_SPACE(size_t >I<length>B<);>"
1113 #: build/C/man3/cmsg.3:26
1114 msgid "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1115 msgstr "B<size_t CMSG_LEN(size_t >I<length>B<);>"
1118 #: build/C/man3/cmsg.3:28
1119 msgid "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1120 msgstr "B<unsigned char *CMSG_DATA(struct cmsghdr *>I<cmsg>B<);>"
1123 #: build/C/man3/cmsg.3:36
1126 "struct cmsghdr {\n"
1127 " socklen_t cmsg_len; /* data byte count, including header */\n"
1128 " int cmsg_level; /* originating protocol */\n"
1129 " int cmsg_type; /* protocol-specific type */\n"
1130 " /* followed by unsigned char cmsg_data[]; */\n"
1133 "struct cmsghdr {\n"
1134 " socklen_t cmsg_len; /* data byte count, including header */\n"
1135 " int cmsg_level; /* originating protocol */\n"
1136 " int cmsg_type; /* protocol-specific type */\n"
1137 " /* followed by unsigned char cmsg_data[]; */\n"
1141 #: build/C/man3/cmsg.3:51
1143 "These macros are used to create and access control messages (also called "
1144 "ancillary data) that are not a part of the socket payload. This control "
1145 "information may include the interface the packet was received on, various "
1146 "rarely used header fields, an extended error description, a set of file "
1147 "descriptors or UNIX credentials. For instance, control messages can be used "
1148 "to send additional header fields such as IP options. Ancillary data is sent "
1149 "by calling B<sendmsg>(2) and received by calling B<recvmsg>(2). See their "
1150 "manual pages for more information."
1152 "これらのマクロは制御メッセージ (補助データ (ancillary data) とも呼ばれる) を"
1153 "作り、 それにアクセスするために使われる。 制御メッセージはソケットにのるデー"
1154 "タではない。 この制御情報は、到着したパケットへのインターフェイス、様々なあま"
1155 "り 使われないヘッダーフィールド、エラー記述の拡張、ファイルデスクリ プタの集"
1156 "合や、UNIXにおける信頼情報 (credential) を含んでいる。 制御メッセージは、例え"
1157 "ば IP オプションのような追加ヘッダーフィールドを 送るのに使う事ができる。 補"
1158 "助データは、 B<sendmsg>(2) を呼び出して送り、 B<recvmsg>(2) を呼び出して受"
1159 "け取る。 詳細はそれらのマニュアルページを参照。"
1162 #: build/C/man3/cmsg.3:62
1164 "Ancillary data is a sequence of I<struct cmsghdr> structures with appended "
1165 "data. This sequence should be accessed using only the macros described in "
1166 "this manual page and never directly. See the specific protocol man pages "
1167 "for the available control message types. The maximum ancillary buffer size "
1168 "allowed per socket can be set using I</proc/sys/net/core/optmem_max>; see "
1171 "補助データは I<struct cmsghdr> 構造体のシーケンスに追加データが付加されたもの"
1172 "である。 このシーケンスにはこのマニュアルページに書かれている マクロを使って"
1173 "アクセスすべきで、直接アクセスすべきではない。 使用可能な制御メッセージのタイ"
1174 "プについては、 それぞれのプロトコルのマニュアルページを参照のこと。 接続毎の"
1175 "最大補助用バッファサイズは I</proc/sys/net/core/optmem_max> を使って設定でき"
1176 "る。 B<socket>(7) を参照。"
1179 #: build/C/man3/cmsg.3:69
1181 "B<CMSG_FIRSTHDR>() returns a pointer to the first I<cmsghdr> in the "
1182 "ancillary data buffer associated with the passed I<msghdr>."
1184 "B<CMSG_FIRSTHDR>() は、渡した I<msghdr> に関連した補助データバッファ中の、最"
1185 "初の I<cmsghdr> へのポインタを返す。"
1188 #: build/C/man3/cmsg.3:76
1190 "B<CMSG_NXTHDR>() returns the next valid I<cmsghdr> after the passed "
1191 "I<cmsghdr>. It returns NULL when there isn't enough space left in the "
1194 "B<CMSG_NXTHDR>() は、渡した I<cmsghdr> の次にくる (有効な) I<cmsghdr> を返"
1195 "す。 バッファに十分な空きが無い場合、NULL を返す。"
1198 #: build/C/man3/cmsg.3:81
1200 "B<CMSG_ALIGN>(), given a length, returns it including the required "
1201 "alignment. This is a constant expression."
1203 "B<CMSG_ALIGN>() に長さを与えると、必要なアラインメントを加味した長さを返して"
1207 #: build/C/man3/cmsg.3:86
1209 "B<CMSG_SPACE>() returns the number of bytes an ancillary element with "
1210 "payload of the passed data length occupies. This is a constant expression."
1212 "B<CMSG_SPACE>() は、与えたデータ長が占めるのに必要な補助要素 (ancillary "
1213 "element) の バイト数を返す。これは定数式である。"
1216 #: build/C/man3/cmsg.3:90
1217 msgid "B<CMSG_DATA>() returns a pointer to the data portion of a I<cmsghdr>."
1218 msgstr "B<CMSG_DATA>() は、 I<cmsghdr> のデータ部分へのポインタを返す。"
1221 #: build/C/man3/cmsg.3:101
1223 "B<CMSG_LEN>() returns the value to store in the I<cmsg_len> member of the "
1224 "I<cmsghdr> structure, taking into account any necessary alignment. It takes "
1225 "the data length as an argument. This is a constant expression."
1227 "B<CMSG_LEN>() は、 I<cmsghdr> 構造体の I<cmsg_len> メンバにデータを格納する"
1228 "際に必要な値を返す。アラインメントも考慮に入れ られる。 引数としてデータ長を"
1232 #: build/C/man3/cmsg.3:134
1234 "To create ancillary data, first initialize the I<msg_controllen> member of "
1235 "the I<msghdr> with the length of the control message buffer. Use "
1236 "B<CMSG_FIRSTHDR>() on the I<msghdr> to get the first control message and "
1237 "B<CMSG_NXTHDR>() to get all subsequent ones. In each control message, "
1238 "initialize I<cmsg_len> (with B<CMSG_LEN>()), the other I<cmsghdr> header "
1239 "fields, and the data portion using B<CMSG_DATA>(). Finally, the "
1240 "I<msg_controllen> field of the I<msghdr> should be set to the sum of the "
1241 "B<CMSG_SPACE>() of the length of all control messages in the buffer. For "
1242 "more information on the I<msghdr>, see B<recvmsg>(2)."
1244 "補助データを作るためには最初に I<msghdr> のメンバー I<msg_controllen> を、制"
1245 "御メッセージバッファの長さで初期化する。 B<CMSG_FIRSTHDR>() を I<msghdr> に"
1246 "用いると最初の制御メッセージが得られ、 B<CMSG_NXTHDR>() を使うと次の制御メッ"
1247 "セージが得られる。 それぞれの制御メッセージでは、 I<cmsg_len> を初期化する "
1248 "(B<CMSG_LEN>() を使う)。 その他の I<cmsghdr> ヘッダーフィールド、そしてデー"
1249 "タ部分に対しても B<CMSG_DATA>() を使って初期化をする。 最後に I<msghdr> の "
1250 "I<msg_controllen> フィールドに、バッファ中の制御メッセージの長さの "
1251 "B<CMSG_SPACE>() の合計がセットされる。 I<msghdr> についての詳細は B<recvmsg>"
1255 #: build/C/man3/cmsg.3:141
1257 "When the control message buffer is too short to store all messages, the "
1258 "B<MSG_CTRUNC> flag is set in the I<msg_flags> member of the I<msghdr>."
1260 "制御メッセージバッファが全てのメッセージを納めるのには短すぎる場合、 "
1261 "I<msghdr> の I<msg_flags> メンバーに B<MSG_CTRUNC> フラグがセットされる。"
1264 #: build/C/man3/cmsg.3:146
1266 "This ancillary data model conforms to the POSIX.1g draft, 4.4BSD-Lite, the "
1267 "IPv6 advanced API described in RFC\\ 2292 and the SUSv2. B<CMSG_ALIGN>() "
1268 "is a Linux extension."
1270 "この補助データモデルは、POSIX.1g draft, 4.4BSD-Lite, RFC\\ 2292 に 記述されて"
1271 "いる IPv6 advanced API, そして SUSv2 に準拠している。 B<CMSG_ALIGN>() は "
1275 #: build/C/man3/cmsg.3:146 build/C/man7/ddp.7:226 build/C/man3/endian.3:91
1276 #: build/C/man3/getaddrinfo.3:599 build/C/man3/getaddrinfo_a.3:308
1277 #: build/C/man3/gethostbyname.3:341 build/C/man3/getipnodebyname.3:261
1278 #: build/C/man3/getnameinfo.3:208 build/C/man3/getnetent.3:147
1279 #: build/C/man2/getpeername.2:105 build/C/man5/host.conf.5:190
1280 #: build/C/man5/hosts.5:88 build/C/man5/hosts.equiv.5:71
1281 #: build/C/man7/icmp.7:169 build/C/man3/inet.3:227
1282 #: build/C/man3/inet_pton.3:131 build/C/man3/inet_net_pton.3:166
1283 #: build/C/man7/ip.7:1155 build/C/man7/ipv6.7:392 build/C/man7/netdevice.7:341
1284 #: build/C/man8/nscd.8:60 build/C/man5/nscd.conf.5:232
1285 #: build/C/man5/nsswitch.conf.5:333 build/C/man7/packet.7:520
1286 #: build/C/man7/raw.7:187 build/C/man3/setnetgrent.3:103
1287 #: build/C/man2/shutdown.2:95 build/C/man7/unix.7:407
1293 #: build/C/man3/cmsg.3:151
1295 "For portability, ancillary data should be accessed using only the macros "
1296 "described here. B<CMSG_ALIGN>() is a Linux extension and should not be "
1297 "used in portable programs."
1299 "移植性のために、補助データへのアクセスには、 ここで述べられているマクロだけを"
1300 "使うべきである。 B<CMSG_ALIGN>() は Linux での拡張であり、移植性を考えたプロ"
1304 #: build/C/man3/cmsg.3:161
1306 "In Linux, B<CMSG_LEN>(), B<CMSG_DATA>(), and B<CMSG_ALIGN>() are constant "
1307 "expressions (assuming their argument is constant); this could be used to "
1308 "declare the size of global variables. This may not be portable, however."
1310 "Linux では B<CMSG_LEN>(), B<CMSG_DATA>(), B<CMSG_ALIGN>() は定数式である (そ"
1311 "れらの引数が定数とみなされる)。 このことは、大域変数のサイズを宣言するのに使"
1312 "える。 しかし移植性はなくなるだろう。"
1315 #: build/C/man3/cmsg.3:161 build/C/man3/endian.3:107
1316 #: build/C/man5/gai.conf.5:74 build/C/man3/getaddrinfo.3:622
1317 #: build/C/man3/getaddrinfo_a.3:314 build/C/man3/getnameinfo.3:236
1318 #: build/C/man3/getprotoent_r.3:135 build/C/man3/getservent_r.3:134
1319 #: build/C/man5/hosts.5:107 build/C/man3/inet.3:263
1320 #: build/C/man3/inet_ntop.3:115 build/C/man3/inet_pton.3:156
1321 #: build/C/man3/inet_net_pton.3:248 build/C/man5/nss.5:100
1322 #: build/C/man7/unix.7:437
1328 #: build/C/man3/cmsg.3:165
1330 "This code looks for the B<IP_TTL> option in a received ancillary buffer:"
1332 "次のコードは、受け取った補助バッファから B<IP_TTL> オプションを探すものであ"
1336 #: build/C/man3/cmsg.3:172
1339 "struct msghdr msgh;\n"
1340 "struct cmsghdr *cmsg;\n"
1342 "int received_ttl;\n"
1344 "struct msghdr msgh;\n"
1345 "struct cmsghdr *cmsg;\n"
1347 "int received_ttl;\n"
1350 #: build/C/man3/cmsg.3:189
1353 "/* Receive auxiliary data in msgh */\n"
1354 "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n"
1355 " cmsg = CMSG_NXTHDR(&msgh,cmsg)) {\n"
1356 " if (cmsg-E<gt>cmsg_level == IPPROTO_IP\n"
1357 " && cmsg-E<gt>cmsg_type == IP_TTL) {\n"
1358 " ttlptr = (int *) CMSG_DATA(cmsg);\n"
1359 " received_ttl = *ttlptr;\n"
1363 "if (cmsg == NULL) {\n"
1365 " * Error: IP_TTL not enabled or small buffer\n"
1366 " * or I/O error.\n"
1370 "/* Receive auxiliary data in msgh */\n"
1371 "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n"
1372 " cmsg = CMSG_NXTHDR(&msgh,cmsg)) {\n"
1373 " if (cmsg-E<gt>cmsg_level == IPPROTO_IP\n"
1374 " && cmsg-E<gt>cmsg_type == IP_TTL) {\n"
1375 " ttlptr = (int *) CMSG_DATA(cmsg);\n"
1376 " received_ttl = *ttlptr;\n"
1380 "if (cmsg == NULL) {\n"
1382 " * Error: IP_TTL not enabled or small buffer\n"
1383 " * or I/O error.\n"
1388 #: build/C/man3/cmsg.3:195
1390 "The code below passes an array of file descriptors over a UNIX domain socket "
1391 "using B<SCM_RIGHTS>:"
1393 "以下のコードは、 B<SCM_RIGHTS> を使い、ファイルデスクリプタの配列を UNIX ドメ"
1394 "インソケットを通して送るものである。"
1397 #: build/C/man3/cmsg.3:203
1400 "struct msghdr msg = {0};\n"
1401 "struct cmsghdr *cmsg;\n"
1402 "int myfds[NUM_FD]; /* Contains the file descriptors to pass. */\n"
1403 "char buf[CMSG_SPACE(sizeof myfds)]; /* ancillary data buffer */\n"
1406 "struct msghdr msg = {0};\n"
1407 "struct cmsghdr *cmsg;\n"
1408 "int myfds[NUM_FD]; /* Contains the file descriptors to pass. */\n"
1409 "char buf[CMSG_SPACE(sizeof myfds)]; /* ancillary data buffer */\n"
1413 #: build/C/man3/cmsg.3:215
1416 "msg.msg_control = buf;\n"
1417 "msg.msg_controllen = sizeof buf;\n"
1418 "cmsg = CMSG_FIRSTHDR(&msg);\n"
1419 "cmsg-E<gt>cmsg_level = SOL_SOCKET;\n"
1420 "cmsg-E<gt>cmsg_type = SCM_RIGHTS;\n"
1421 "cmsg-E<gt>cmsg_len = CMSG_LEN(sizeof(int) * NUM_FD);\n"
1422 "/* Initialize the payload: */\n"
1423 "fdptr = (int *) CMSG_DATA(cmsg);\n"
1424 "memcpy(fdptr, myfds, NUM_FD * sizeof(int));\n"
1425 "/* Sum of the length of all control messages in the buffer: */\n"
1426 "msg.msg_controllen = cmsg-E<gt>cmsg_len;\n"
1428 "msg.msg_control = buf;\n"
1429 "msg.msg_controllen = sizeof buf;\n"
1430 "cmsg = CMSG_FIRSTHDR(&msg);\n"
1431 "cmsg-E<gt>cmsg_level = SOL_SOCKET;\n"
1432 "cmsg-E<gt>cmsg_type = SCM_RIGHTS;\n"
1433 "cmsg-E<gt>cmsg_len = CMSG_LEN(sizeof(int) * NUM_FD);\n"
1434 "/* Initialize the payload: */\n"
1435 "fdptr = (int *) CMSG_DATA(cmsg);\n"
1436 "memcpy(fdptr, myfds, NUM_FD * sizeof(int));\n"
1437 "/* Sum of the length of all control messages in the buffer: */\n"
1438 "msg.msg_controllen = cmsg-E<gt>cmsg_len;\n"
1441 #: build/C/man3/cmsg.3:220
1442 msgid "B<recvmsg>(2), B<sendmsg>(2)"
1443 msgstr "B<recvmsg>(2), B<sendmsg>(2)"
1446 #: build/C/man3/cmsg.3:222
1451 #: build/C/man7/ddp.7:12
1457 #: build/C/man7/ddp.7:15
1458 msgid "ddp - Linux AppleTalk protocol implementation"
1459 msgstr "ddp - Linux での AppleTalk プロトコルの実装"
1462 #: build/C/man7/ddp.7:19
1463 msgid "B<#include E<lt>netatalk/at.hE<gt>>"
1464 msgstr "B<#include E<lt>netatalk/at.hE<gt>>"
1467 #: build/C/man7/ddp.7:21
1468 msgid "I<ddp_socket>B< = socket(AF_APPLETALK, SOCK_DGRAM, 0);>"
1469 msgstr "I<ddp_socket>B< = socket(AF_APPLETALK, SOCK_DGRAM, 0);>"
1472 #: build/C/man7/ddp.7:23
1473 msgid "I<raw_socket>B< = socket(AF_APPLETALK, SOCK_RAW, >I<protocol>B<);>"
1474 msgstr "I<raw_socket>B< = socket(AF_APPLETALK, SOCK_RAW, >I<protocol>B<);>"
1477 #: build/C/man7/ddp.7:34
1479 "Linux implements the Appletalk protocols described in I<Inside Appletalk>. "
1480 "Only the DDP layer and AARP are present in the kernel. They are designed to "
1481 "be used via the B<netatalk> protocol libraries. This page documents the "
1482 "interface for those who wish or need to use the DDP layer directly."
1484 "Linux は I<Inside Appletalk> に記述されている Appletalk プロトコルを実装して"
1485 "いる。 カーネルにあるのは DDP 層と AARP だけである。これらは B<netatalk> プロ"
1486 "トコルライブラリを通して利用されるように設計されている。 このページは DDP 層"
1487 "を直接利用したいユーザーのために、 インターフェースを記述したものである。"
1490 #: build/C/man7/ddp.7:39
1492 "The communication between Appletalk and the user program works using a BSD-"
1493 "compatible socket interface. For more information on sockets, see B<socket>"
1496 "Appletalk とユーザープログラムとの通信には、 BSD 互換のソケットインターフェー"
1497 "スを利用する。 ソケットに関するより詳しい情報は B<socket>(7) を見よ。"
1500 #: build/C/man7/ddp.7:60
1502 "An AppleTalk socket is created by calling the B<socket>(2) function with a "
1503 "B<AF_APPLETALK> socket family argument. Valid socket types are "
1504 "B<SOCK_DGRAM> to open a B<ddp> socket or B<SOCK_RAW> to open a B<raw> "
1505 "socket. I<protocol> is the Appletalk protocol to be received or sent. For "
1506 "B<SOCK_RAW> you must specify B<ATPROTO_DDP>."
1508 "Appletalk ソケットは、 ソケットファミリーの引数に B<AF_APPLETALK> を指定して "
1509 "B<socket>(2) 関数を呼び出すことによって生成される。指定できるソケットタイプ"
1510 "は、 B<ddp> ソケットをオープンする場合には B<SOCK_DGRAM>、 B<raw> ソケットを"
1511 "オープンする場合には B<SOCK_RAW> である。 I<protocol> は送受信される "
1512 "Appletalk プロトコルである。 ソケットタイプに B<SOCK_RAW> を指定した場合は、"
1513 "プロトコルに B<ATPROTO_DDP> を指定しなければならない。"
1516 #: build/C/man7/ddp.7:65
1518 "Raw sockets may be opened only by a process with effective user ID 0 or when "
1519 "the process has the B<CAP_NET_RAW> capability."
1521 "raw ソケットは実効ユーザー ID が 0 のプロセスか、 B<CAT_NEW_RAW> 権限を持った"
1525 #: build/C/man7/ddp.7:65 build/C/man7/ip.7:123 build/C/man7/ipv6.7:142
1526 #: build/C/man7/raw.7:93 build/C/man7/udp.7:98 build/C/man7/udplite.7:58
1527 #: build/C/man7/unix.7:55
1529 msgid "Address format"
1530 msgstr "アドレスのフォーマット"
1533 #: build/C/man7/ddp.7:68
1535 "An Appletalk socket address is defined as a combination of a network number, "
1536 "a node number, and a port number."
1538 "Appletalk ソケットアドレスはネットワーク番号・ノード番号・ポート番号の 組み合"
1542 #: build/C/man7/ddp.7:75
1545 "struct at_addr {\n"
1546 " unsigned short s_net;\n"
1547 " unsigned char s_node;\n"
1550 "struct at_addr {\n"
1551 " unsigned short s_net;\n"
1552 " unsigned char s_node;\n"
1556 #: build/C/man7/ddp.7:81
1559 "struct sockaddr_atalk {\n"
1560 " sa_family_t sat_family; /* address family */\n"
1561 " unsigned char sat_port; /* port */\n"
1562 " struct at_addr sat_addr; /* net/node */\n"
1565 "struct sockaddr_atalk {\n"
1566 " sa_family_t sat_family; /* address family */\n"
1567 " unsigned char sat_port; /* port */\n"
1568 " struct at_addr sat_addr; /* net/node */\n"
1571 #. FIXME this doesn't make sense [johnl]
1573 #: build/C/man7/ddp.7:120
1575 "I<sat_family> is always set to B<AF_APPLETALK>. I<sat_port> contains the "
1576 "port. The port numbers below 129 are known as I<reserved ports>. Only "
1577 "processes with the effective user ID 0 or the B<CAP_NET_BIND_SERVICE> "
1578 "capability may B<bind>(2) to these sockets. I<sat_addr> is the host "
1579 "address. The I<net> member of I<struct at_addr> contains the host network "
1580 "in network byte order. The value of B<AT_ANYNET> is a wildcard and also "
1581 "implies \\(lqthis network.\\(rq The I<node> member of I<struct at_addr> "
1582 "contains the host node number. The value of B<AT_ANYNODE> is a wildcard and "
1583 "also implies \\(lqthis node.\\(rq The value of B<ATADDR_BCAST> is a link "
1584 "local broadcast address."
1586 "I<sat_family> は常に B<AF_APPLETALK> に設定する。 I<sat_port> はポートを与え"
1587 "る。ポート番号が 129 以下のポートは 「予約ポート (reserved port)」 と呼ばれ"
1588 "る。実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_BIND_SERVICE> 権限を持つプ"
1589 "ロセスだけが、このようなソケットを B<bind>(2) できる。 I<sat_addr> はホスト"
1590 "アドレスである。 I<struct at_addr> のメンバー I<s_net> にはホストのネットワー"
1591 "クをネットワークバイトオーダーで与える。値 B<AT_ANYNET> はワイルドカードで、"
1592 "「このネットワーク」も暗黙のうちに含まれる。 I<struct at_addr> のメンバー "
1593 "I<s_node> にはホストのノード番号を与える。値 B<AT_ANYNODE> はワイルドカード"
1594 "で、「このノード」も暗黙のうちに含まれる。値 B<ATADDR_BCAST> はローカルなブ"
1598 #: build/C/man7/ddp.7:120 build/C/man7/ip.7:224 build/C/man7/ipv6.7:192
1599 #: build/C/man7/packet.7:180 build/C/man7/raw.7:109 build/C/man7/tcp.7:888
1600 #: build/C/man7/udp.7:178 build/C/man7/udplite.7:67 build/C/man7/unix.7:137
1601 #: build/C/man7/x25.7:72
1603 msgid "Socket options"
1607 #: build/C/man7/ddp.7:122
1608 msgid "No protocol-specific socket options are supported."
1609 msgstr "プロトコル固有のソケットオプションはない。"
1612 #: build/C/man7/ddp.7:128
1614 "IP supports a set of I</proc> interfaces to configure some global AppleTalk "
1615 "parameters. The parameters can be accessed by reading or writing files in "
1616 "the directory I</proc/sys/net/atalk/>."
1618 "Appletalk のグローバルパラメータのいくつかは、 I</proc> インタフェースを通し"
1619 "て設定することができる。 これらのパラメータには、 I</proc/sys/net/atalk/> "
1620 "ディレクトリ内のファイルの読み書きでアクセスできる。"
1623 #: build/C/man7/ddp.7:128
1625 msgid "I<aarp-expiry-time>"
1626 msgstr "I<aarp-expiry-time>"
1629 #: build/C/man7/ddp.7:131
1630 msgid "The time interval (in seconds) before an AARP cache entry expires."
1631 msgstr "AARP キャッシュエントリを破棄するまでのタイムインターバル (秒単位)。"
1634 #: build/C/man7/ddp.7:131
1636 msgid "I<aarp-resolve-time>"
1637 msgstr "I<aarp-resolve-time>"
1640 #: build/C/man7/ddp.7:134
1641 msgid "The time interval (in seconds) before an AARP cache entry is resolved."
1642 msgstr "AARP キャッシュエントリが解決されるまでのタイムインターバル (秒単位)。"
1645 #: build/C/man7/ddp.7:134
1647 msgid "I<aarp-retransmit-limit>"
1648 msgstr "I<aarp-retransmit-limit>"
1651 #: build/C/man7/ddp.7:138
1653 "The number of retransmissions of an AARP query before the node is declared "
1656 "AARP クエリーの最大再送信回数。この回数を越えると、 そのノードは dead である"
1660 #: build/C/man7/ddp.7:138
1662 msgid "I<aarp-tick-time>"
1663 msgstr "I<aarp-tick-time>"
1666 #: build/C/man7/ddp.7:141
1667 msgid "The timer rate (in seconds) for the timer driving AARP."
1668 msgstr "タイマー動作する AARP のタイマーレート (秒単位)"
1671 #: build/C/man7/ddp.7:144
1673 "The default values match the specification and should never need to be "
1676 "デフォルトの値で仕様にマッチしているので、 変更する必要は全くないはずである。"
1678 #. FIXME Add a section about multicasting
1680 #: build/C/man7/ddp.7:149
1681 msgid "All ioctls described in B<socket>(7) apply to DDP."
1682 msgstr "B<socket>(7) に記述されているすべての ioctl が DDP にも適用される。"
1685 #: build/C/man7/ddp.7:149 build/C/man3/gethostbyname.3:292
1686 #: build/C/man3/getnetent_r.3:129 build/C/man2/getpeername.2:73
1687 #: build/C/man3/getprotoent_r.3:119 build/C/man3/getservent_r.3:118
1688 #: build/C/man3/inet_ntop.3:91 build/C/man3/inet_net_pton.3:146
1689 #: build/C/man7/ip.7:1064 build/C/man7/ipv6.7:351 build/C/man7/packet.7:466
1690 #: build/C/man7/raw.7:144 build/C/man2/shutdown.2:74 build/C/man7/tcp.7:1225
1691 #: build/C/man7/udp.7:241 build/C/man7/udplite.7:121 build/C/man7/unix.7:322
1697 #: build/C/man7/ddp.7:153 build/C/man7/ip.7:1068 build/C/man7/raw.7:145
1703 #: build/C/man7/ddp.7:160
1705 "The user tried to execute an operation without the necessary permissions. "
1706 "These include sending to a broadcast address without having the broadcast "
1707 "flag set, and trying to bind to a reserved port without effective user ID 0 "
1708 "or B<CAP_NET_BIND_SERVICE>."
1710 "ユーザが行おうとした操作に必要な権限を持っていない。 broadcast フラグをセット"
1711 "せずにブロードキャストアドレスへ送信を行おうとした、 実効ユーザー ID が 0 で"
1712 "なく、 B<CAP_NET_BIND_SERVICE> 権限のないプロセスで特権ポートをバインドしよう"
1716 #: build/C/man7/ddp.7:160 build/C/man7/ip.7:1084 build/C/man7/unix.7:323
1718 msgid "B<EADDRINUSE>"
1719 msgstr "B<EADDRINUSE>"
1722 #: build/C/man7/ddp.7:163 build/C/man7/ip.7:1087
1723 msgid "Tried to bind to an address already in use."
1724 msgstr "既に使用されているアドレスにバインドしようとした。"
1727 #: build/C/man7/ddp.7:163 build/C/man7/ip.7:1087 build/C/man7/packet.7:467
1729 msgid "B<EADDRNOTAVAIL>"
1730 msgstr "B<EADDRNOTAVAIL>"
1733 #: build/C/man7/ddp.7:167 build/C/man7/ip.7:1091
1735 "A nonexistent interface was requested or the requested source address was "
1738 "存在しないインターフェースが要求された。または 要求されたソースアドレスがロー"
1742 #: build/C/man7/ddp.7:167 build/C/man7/ip.7:1091
1748 #: build/C/man7/ddp.7:170 build/C/man7/ip.7:1094
1749 msgid "Operation on a nonblocking socket would block."
1750 msgstr "非ブロッキングソケットに対してブロックする操作を行った。"
1753 #: build/C/man7/ddp.7:170 build/C/man7/ip.7:1094
1756 msgstr "B<EALREADY>"
1759 #: build/C/man7/ddp.7:173
1760 msgid "A connection operation on a nonblocking socket is already in progress."
1761 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
1764 #: build/C/man7/ddp.7:173 build/C/man7/ip.7:1097
1766 msgid "B<ECONNABORTED>"
1767 msgstr "B<ECONNABORTED>"
1770 #: build/C/man7/ddp.7:177 build/C/man7/ip.7:1101
1771 msgid "A connection was closed during an B<accept>(2)."
1772 msgstr "B<accept>(2) の途中で接続がクローズされた。"
1775 #: build/C/man7/ddp.7:177 build/C/man7/ip.7:1101
1777 msgid "B<EHOSTUNREACH>"
1778 msgstr "B<EHOSTUNREACH>"
1781 #: build/C/man7/ddp.7:180
1782 msgid "No routing table entry matches the destination address."
1783 msgstr "行き先アドレスにマッチするエントリがルーティングテーブルにない。"
1786 #: build/C/man7/ddp.7:180 build/C/man2/getpeername.2:85 build/C/man7/ip.7:1106
1787 #: build/C/man7/packet.7:473 build/C/man7/raw.7:152 build/C/man2/shutdown.2:79
1788 #: build/C/man7/unix.7:339
1794 #: build/C/man7/ddp.7:183
1795 msgid "Invalid argument passed."
1799 #: build/C/man7/ddp.7:183 build/C/man7/ip.7:1112 build/C/man7/unix.7:348
1805 #: build/C/man7/ddp.7:187 build/C/man7/ip.7:1116
1806 msgid "B<connect>(2) was called on an already connected socket."
1807 msgstr "接続済みのソケットに対して B<connect>(2) が呼ばれた。"
1810 #: build/C/man7/ddp.7:187 build/C/man3/inet_net_pton.3:152
1811 #: build/C/man7/ip.7:1116 build/C/man7/packet.7:476 build/C/man7/raw.7:155
1814 msgstr "B<EMSGSIZE>"
1817 #: build/C/man7/ddp.7:190
1818 msgid "Datagram is bigger than the DDP MTU."
1819 msgstr "データグラムが DDP MTU より大きい。"
1822 #: build/C/man7/ddp.7:190 build/C/man7/ipv6.7:353 build/C/man7/packet.7:485
1828 #: build/C/man7/ddp.7:193
1829 msgid "Network device not available or not capable of sending IP."
1830 msgstr "ネットワークデバイスがない。あるいは IP を送ることができない。"
1833 #: build/C/man7/ddp.7:193 build/C/man3/getnetent_r.3:130
1834 #: build/C/man3/getprotoent_r.3:120 build/C/man3/getservent_r.3:119
1835 #: build/C/man3/inet_net_pton.3:155 build/C/man7/ip.7:1124
1836 #: build/C/man7/packet.7:488 build/C/man7/unix.7:353
1842 #: build/C/man7/ddp.7:197 build/C/man7/ip.7:1128
1843 msgid "B<SIOCGSTAMP> was called on a socket where no packet arrived."
1844 msgstr "パケットが到着していないソケットに対して B<SIOCGSTAMP> が呼ばれた。"
1847 #: build/C/man7/ddp.7:197
1849 msgid "B<ENOMEM> and B<ENOBUFS>"
1850 msgstr "B<ENOMEM> と B<ENOBUFS>"
1853 #: build/C/man7/ddp.7:200
1854 msgid "Not enough memory available."
1858 #: build/C/man7/ddp.7:200 build/C/man7/ip.7:1128
1864 #: build/C/man7/ddp.7:203 build/C/man7/ip.7:1131
1865 msgid "A kernel subsystem was not configured."
1866 msgstr "カーネルサブシステムが設定されていない。"
1869 #: build/C/man7/ddp.7:203 build/C/man7/ip.7:1131
1871 msgid "B<ENOPROTOOPT> and B<EOPNOTSUPP>"
1872 msgstr "B<ENOPROTOOPT> と B<EOPNOTSUPP>"
1875 #: build/C/man7/ddp.7:206 build/C/man7/ip.7:1134
1876 msgid "Invalid socket option passed."
1877 msgstr "無効なソケットオプションが渡された。"
1880 #: build/C/man7/ddp.7:206 build/C/man2/getpeername.2:93 build/C/man7/ip.7:1134
1881 #: build/C/man7/packet.7:491 build/C/man2/shutdown.2:84
1882 #: build/C/man7/unix.7:361
1885 msgstr "B<ENOTCONN>"
1888 #: build/C/man7/ddp.7:210 build/C/man7/ip.7:1138
1890 "The operation is defined only on a connected socket, but the socket wasn't "
1893 "接続されていないソケットに対して、 接続状態でしか定義されていない操作を行おう"
1897 #: build/C/man7/ddp.7:210 build/C/man7/ip.7:1138 build/C/man7/packet.7:497
1898 #: build/C/man7/raw.7:166 build/C/man7/unix.7:368
1904 #: build/C/man7/ddp.7:215
1906 "User doesn't have permission to set high priority, make a configuration "
1907 "change, or send signals to the requested process or group."
1909 "高い優先度に設定したり、設定を変更したり、 指定したプロセスやグループにシグナ"
1910 "ルを送るのに必要な権限を ユーザが持っていない。"
1913 #: build/C/man7/ddp.7:215 build/C/man7/ip.7:1142 build/C/man7/tcp.7:1232
1914 #: build/C/man7/unix.7:372
1920 #: build/C/man7/ddp.7:218 build/C/man7/ip.7:1145
1921 msgid "The connection was unexpectedly closed or shut down by the other end."
1923 "接続が接続相手によって、予期しないやり方でクローズまたはシャットダウンされ"
1927 #: build/C/man7/ddp.7:218 build/C/man7/ip.7:1145 build/C/man7/unix.7:394
1929 msgid "B<ESOCKTNOSUPPORT>"
1930 msgstr "B<ESOCKTNOSUPPORT>"
1933 #: build/C/man7/ddp.7:221
1934 msgid "The socket was unconfigured, or an unknown socket type was requested."
1935 msgstr "ソケットが設定されていない。または未知のソケットタイプが要求された。"
1938 #: build/C/man7/ddp.7:226
1940 "Appletalk is supported by Linux 2.0 or higher. The I</proc> interfaces "
1941 "exist since Linux 2.2."
1943 "Appletalk は Linux 2.0 以降でサポートされている。 I</proc> インタフェースは "
1944 "Linux 2.2 以降に存在する。"
1947 #: build/C/man7/ddp.7:232
1949 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
1950 "Linux. It is easy to overload the network with careless sending to "
1951 "broadcast addresses."
1953 "B<SO_BROADCAST> オプションを用いる時には慎重の上にも慎重になってほしい。 "
1954 "Linux ではこれに特権を必要としない。 不注意にブロードキャストアドレスに送信を"
1955 "行うと、 ネットワークの状態が簡単に変更されてしまう。"
1958 #: build/C/man7/ddp.7:232 build/C/man7/ip.7:1204 build/C/man7/packet.7:551
1960 msgid "Compatibility"
1964 #: build/C/man7/ddp.7:239
1966 "The basic AppleTalk socket interface is compatible with B<netatalk> on BSD-"
1967 "derived systems. Many BSD systems fail to check B<SO_BROADCAST> when "
1968 "sending broadcast frames; this can lead to compatibility problems."
1970 "基本的な Appletalk ソケットインターフェースは BSD 由来のシステムにおける "
1971 "B<netatalk> と互換性がある。多くの BSD システムでは、 ブロードキャストフレー"
1972 "ムを送信しようとしたときの B<SO_BROADCAST> のチェックに失敗する。これは互換性"
1976 #: build/C/man7/ddp.7:244
1978 "The raw socket mode is unique to Linux and exists to support the alternative "
1979 "CAP package and AppleTalk monitoring tools more easily."
1981 "raw ソケットモードは Linux 独特のもので、もう一方の実装である CAP パッケージ"
1982 "や、 Appletalk モニタツールをより簡単に実装できるようになる。"
1985 #: build/C/man7/ddp.7:246 build/C/man7/ip.7:1219
1986 msgid "There are too many inconsistent error values."
1987 msgstr "エラーの値がまったく首尾一貫していない。"
1990 #: build/C/man7/ddp.7:249
1992 "The ioctls used to configure routing tables, devices, AARP tables and other "
1993 "devices are not yet described."
1995 "ルーティングテーブル・デバイス・ AARP テーブル・その他のデバイスを 設定するた"
1996 "めに用いられる ioctl がまだ記述されていない。"
1999 #: build/C/man7/ddp.7:254
2000 msgid "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
2001 msgstr "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<socket>(7)"
2004 #: build/C/man3/endian.3:28
2010 #: build/C/man3/endian.3:28 build/C/man3/getnetent_r.3:26
2011 #: build/C/man3/getprotoent_r.3:26 build/C/man3/getservent_r.3:26
2017 #: build/C/man3/endian.3:33
2019 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh, le32toh, "
2020 "htobe64, htole64, be64toh, le64toh - convert values between host and big-/"
2021 "little-endian byte order"
2023 "htobe16, htole16, be16toh, le16toh, htobe32, htole32, be32toh,\n"
2024 "le32toh, htobe64, htole64, be64toh, le64toh - ホストバイトオーダーと\n"
2025 "ビッグ/リトルエンディアンバイトオーダーの間で値の変換を行う"
2028 #: build/C/man3/endian.3:37
2031 "B<#define _BSD_SOURCE> /* See feature_test_macros(7) */\n"
2032 "B<#include E<lt>endian.hE<gt>>\n"
2034 "B<#define _BSD_SOURCE> /* feature_test_macros(7) 参照 */\n"
2035 "B<#include E<lt>endian.hE<gt>>\n"
2038 #: build/C/man3/endian.3:42
2041 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2042 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2043 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2044 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2046 "B<uint16_t htobe16(uint16_t >I<host_16bits>B<);>\n"
2047 "B<uint16_t htole16(uint16_t >I<host_16bits>B<);>\n"
2048 "B<uint16_t be16toh(uint16_t >I<big_endian_16bits>B<);>\n"
2049 "B<uint16_t le16toh(uint16_t >I<little_endian_16bits>B<);>\n"
2052 #: build/C/man3/endian.3:47
2055 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2056 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2057 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2058 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2060 "B<uint32_t htobe32(uint32_t >I<host_32bits>B<);>\n"
2061 "B<uint32_t htole32(uint32_t >I<host_32bits>B<);>\n"
2062 "B<uint32_t be32toh(uint32_t >I<big_endian_32bits>B<);>\n"
2063 "B<uint32_t le32toh(uint32_t >I<little_endian_32bits>B<);>\n"
2066 #: build/C/man3/endian.3:52
2069 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2070 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2071 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2072 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2074 "B<uint64_t htobe64(uint64_t >I<host_64bits>B<);>\n"
2075 "B<uint64_t htole64(uint64_t >I<host_64bits>B<);>\n"
2076 "B<uint64_t be64toh(uint64_t >I<big_endian_64bits>B<);>\n"
2077 "B<uint64_t le64toh(uint64_t >I<little_endian_64bits>B<);>\n"
2080 #: build/C/man3/endian.3:57
2082 "These functions convert the byte encoding of integer values from the byte "
2083 "order that the current CPU (the \"host\") uses, to and from little-endian "
2084 "and big-endian byte order."
2086 "これらの関数は、整数値のバイトエンコーディングを、\n"
2087 "使用中の CPU (\"ホスト\") のバイトオーダーから\n"
2088 "リトルエンディアンやビッグエンディアンバイトオーダーへの変換や\n"
2092 #: build/C/man3/endian.3:62
2094 "The number, I<nn>, in the name of each function indicates the size of "
2095 "integer handled by the function, either 16, 32, or 64 bits."
2097 "各関数の名前に付いている数字 I<nn> は、その関数が扱う整数のサイズ\n"
2098 "(16, 32, 64 ビットのどれか) を示している。"
2101 #: build/C/man3/endian.3:65
2103 "The functions with names of the form \"htobeI<nn>\" convert from host byte "
2104 "order to big-endian order."
2106 "名前が \"htobeI<nn>\" という形の関数は、ホストバイトオーダーから\n"
2107 "ビッグエンディアンバイトオーダーへの変換を行う。"
2110 #: build/C/man3/endian.3:68
2112 "The functions with names of the form \"htoleI<nn>\" convert from host byte "
2113 "order to little-endian order."
2115 "名前が \"htoleI<nn>\" という形の関数は、ホストバイトオーダーから\n"
2116 "リトルエンディアンバイトオーダーへの変換を行う。"
2119 #: build/C/man3/endian.3:71
2121 "The functions with names of the form \"beI<nn>toh\" convert from big-endian "
2122 "order to host byte order."
2124 "名前が \"beI<nn>toh\" という形の関数は、ビッグエンディアンバイトオーダー\n"
2125 "からホストバイトオーダーへの変換を行う。"
2128 #: build/C/man3/endian.3:74
2130 "The functions with names of the form \"leI<nn>toh\" convert from little-"
2131 "endian order to host byte order."
2133 "名前が \"leI<nn>toh\" という形の関数は、リトルエンディアンバイトオーダー\n"
2134 "からホストバイトオーダーへの変換を行う。"
2137 #: build/C/man3/endian.3:76
2138 msgid "These functions were added to glibc in version 2.9."
2139 msgstr "これらの関数は glibc バージョン 2.9 で追加された。"
2142 #: build/C/man3/endian.3:91
2144 "These functions are nonstandard. Similar functions are present on the BSDs, "
2145 "where the required header file is I<E<lt>sys/endian.hE<gt>> instead of "
2146 "I<E<lt>endian.hE<gt>>. Unfortunately, NetBSD, FreeBSD, and glibc haven't "
2147 "followed the original OpenBSD naming convention for these functions, whereby "
2148 "the I<nn> component always appears at the end of the function name (thus, "
2149 "for example, in NetBSD, FreeBSD, and glibc, the equivalent of OpenBSDs "
2150 "\"betoh32\" is \"be32toh\")."
2153 "BSD には同様の関数が存在するが、 BSD では\n"
2154 "必要なヘッダファイルは I<E<lt>endian.hE<gt>> ではなく\n"
2155 "I<E<lt>sys/endian.hE<gt>> である。\n"
2156 "不幸なことに、 NetBSD, FreeBSD, glibc では、\n"
2157 "これらの関数の元々の OpenBSD での、 I<nn> は常に関数名の末尾に置く\n"
2158 "という名前付けルールが踏襲されていない\n"
2159 "(そのため、例を挙げると、 OpenBSD の \"betoh32\" と等価な関数は\n"
2160 "NetBSD, FreeBSD, glibc では \"be32toh\" となる)。"
2163 #: build/C/man3/endian.3:99
2165 "These functions are similar to the older B<byteorder>(3) family of "
2166 "functions. For example, B<be32toh>() is identical to B<ntohl>()."
2168 "これらの関数は、前からある B<byteorder>(3) 系の関数と同じである。\n"
2169 "例えば、 B<be32toh>() は B<ntohl>() と等価である。"
2172 #: build/C/man3/endian.3:107
2174 "The advantage of the B<byteorder>(3) functions is that they are standard "
2175 "functions available on all UNIX systems. On the other hand, the fact that "
2176 "they were designed for use in the context of TCP/IP means that they lack the "
2177 "64-bit and little-endian variants described in this page."
2179 "B<byteorder>(3) 系の関数のメリットは、これらが\n"
2180 "全ての UNIX システムで利用可能な標準関数である点である。\n"
2181 "一方で、これらの関数は TCP/IP 処理で使用されることを想定して\n"
2182 "設計されたため、このページで説明している 64 ビット版や\n"
2183 "リトルエンディアン版などが存在しない。"
2186 #: build/C/man3/endian.3:114
2188 "The program below display the results of converting an integer from host "
2189 "byte order to both little-endian and big-endian byte order. Since host byte "
2190 "order is either little-endian or big-endian, only one of these conversions "
2191 "will have an effect. When we run this program on a little-endian system "
2192 "such as x86-32, we see the following:"
2194 "以下のプログラムは、整数をホストバイトオーダーからリトルエンディアンと\n"
2195 "ビットエンディアンの両方のバイトオーダーに変換し、その結果を表示する。\n"
2196 "ホストバイトオーダーはリトルエンディアンかビットエンディアンのいずれか\n"
2197 "なので、変換に意味があるのはどちらか一方だけである。\n"
2198 "このプログラムを x86-32 などのリトルエンディアンのシステムで実行した\n"
2202 #: build/C/man3/endian.3:121
2206 "x.u32 = 0x44332211\n"
2207 "htole32(x.u32) = 0x44332211\n"
2208 "htobe32(x.u32) = 0x11223344\n"
2211 "x.u32 = 0x44332211\n"
2212 "htole32(x.u32) = 0x44332211\n"
2213 "htobe32(x.u32) = 0x11223344\n"
2216 #: build/C/man3/endian.3:123 build/C/man3/getprotoent_r.3:162
2217 #: build/C/man3/getservent_r.3:160 build/C/man3/inet.3:279
2218 #: build/C/man3/inet_pton.3:173 build/C/man3/inet_net_pton.3:332
2220 msgid "Program source"
2224 #: build/C/man3/endian.3:130
2227 "#include E<lt>endian.hE<gt>\n"
2228 "#include E<lt>stdint.hE<gt>\n"
2229 "#include E<lt>stdio.hE<gt>\n"
2230 "#include E<lt>stdlib.hE<gt>\n"
2232 "#include E<lt>endian.hE<gt>\n"
2233 "#include E<lt>stdint.hE<gt>\n"
2234 "#include E<lt>stdio.hE<gt>\n"
2235 "#include E<lt>stdlib.hE<gt>\n"
2238 #: build/C/man3/endian.3:138
2242 "main(int argc, char *argv[])\n"
2246 " uint8_t arr[4];\n"
2250 "main(int argc, char *argv[])\n"
2254 " uint8_t arr[4];\n"
2258 #: build/C/man3/endian.3:143
2261 " x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2262 " x.arr[1] = 0x22;\n"
2263 " x.arr[2] = 0x33;\n"
2264 " x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2266 " x.arr[0] = 0x11;\t/* Lowest-address byte */\n"
2267 " x.arr[1] = 0x22;\n"
2268 " x.arr[2] = 0x33;\n"
2269 " x.arr[3] = 0x44;\t/* Highest-address byte */\n"
2272 #: build/C/man3/endian.3:147
2275 " printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2276 " printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2277 " printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2279 " printf(\"x.u32 = 0x%x\\en\", x.u32);\n"
2280 " printf(\"htole32(x.u32) = 0x%x\\en\", htole32(x.u32));\n"
2281 " printf(\"htobe32(x.u32) = 0x%x\\en\", htobe32(x.u32));\n"
2284 #: build/C/man3/endian.3:150 build/C/man3/getaddrinfo.3:826
2285 #: build/C/man3/getprotoent_r.3:236 build/C/man3/getservent_r.3:240
2286 #: build/C/man3/inet_pton.3:214 build/C/man3/inet_net_pton.3:390
2289 " exit(EXIT_SUCCESS);\n"
2292 " exit(EXIT_SUCCESS);\n"
2296 #: build/C/man3/endian.3:153
2297 msgid "B<byteorder>(3)"
2298 msgstr "B<byteorder>(3)"
2301 #: build/C/man3/ether_aton.3:31
2307 #: build/C/man3/ether_aton.3:31
2313 #: build/C/man3/ether_aton.3:35
2315 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2316 "ether_ntoa_r, ether_aton_r - Ethernet address manipulation routines"
2318 "ether_aton, ether_ntoa, ether_ntohost, ether_hostton, ether_line, "
2319 "ether_ntoa_r, ether_aton_r - Ethernet アドレスの操作用関数"
2322 #: build/C/man3/ether_aton.3:38
2324 msgid "B<#include E<lt>netinet/ether.hE<gt>>\n"
2325 msgstr "B<#include E<lt>netinet/ether.hE<gt>>\n"
2328 #: build/C/man3/ether_aton.3:40
2330 msgid "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2331 msgstr "B<char *ether_ntoa(const struct ether_addr *>I<addr>B<);>\n"
2334 #: build/C/man3/ether_aton.3:42
2336 msgid "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2337 msgstr "B<struct ether_addr *ether_aton(const char *>I<asc>B<);>\n"
2340 #: build/C/man3/ether_aton.3:44
2342 msgid "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2343 msgstr "B<int ether_ntohost(char *>I<hostname>B<, const struct ether_addr *>I<addr>B<);>\n"
2346 #: build/C/man3/ether_aton.3:46
2348 msgid "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2349 msgstr "B<int ether_hostton(const char *>I<hostname>B<, struct ether_addr *>I<addr>B<);>\n"
2352 #: build/C/man3/ether_aton.3:49
2355 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2356 "B< char *>I<hostname>B<);>\n"
2358 "B<int ether_line(const char *>I<line>B<, struct ether_addr *>I<addr>B<,>\n"
2359 "B< char *>I<hostname>B<);>\n"
2362 #: build/C/man3/ether_aton.3:51 build/C/man3/gethostbyname.3:70
2364 msgid "/* GNU extensions */\n"
2365 msgstr "/* GNU 拡張 */\n"
2368 #: build/C/man3/ether_aton.3:53
2370 msgid "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2371 msgstr "B<char *ether_ntoa_r(const struct ether_addr *>I<addr>B<, char *>I<buf>B<);>\n"
2374 #: build/C/man3/ether_aton.3:56
2377 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2378 "B< struct ether_addr *>I<addr>B<);>\n"
2380 "B<struct ether_addr *ether_aton_r(const char *>I<asc>B<,>\n"
2381 "B< struct ether_addr *>I<addr>B<);>\n"
2384 #: build/C/man3/ether_aton.3:67
2386 "B<ether_aton>() converts the 48-bit Ethernet host address I<asc> from the "
2387 "standard hex-digits-and-colons notation into binary data in network byte "
2388 "order and returns a pointer to it in a statically allocated buffer, which "
2389 "subsequent calls will overwrite. B<ether_aton>() returns NULL if the "
2390 "address is invalid."
2392 "関数 B<ether_aton>() は、標準的な 16進数とコロンの形式で書かれた 48ビットの "
2393 "Ethernet ホストアドレス I<asc> を、ネットワークでのバイト順 (byte order) の"
2394 "バイナリデータに変換し、静的に割り当てられたバッファに格納されたデータ へのポ"
2395 "インタを返す。このバッファは、これ以降の関数呼び出しで上書きされる。 アドレス"
2396 "が不正な場合、 B<ether_aton>() は NULL を返す。"
2399 #: build/C/man3/ether_aton.3:76
2401 "The B<ether_ntoa>() function converts the Ethernet host address I<addr> "
2402 "given in network byte order to a string in standard hex-digits-and-colons "
2403 "notation, omitting leading zeros. The string is returned in a statically "
2404 "allocated buffer, which subsequent calls will overwrite."
2406 "関数 B<ether_ntoa>() は、ネットワークのバイト順で表された Ethernet ホストア"
2407 "ドレス I<addr> を、標準的な 16進数とコロンの形式の文字列に変換する。 但し、先"
2408 "頭の 0 は省略される。変換後の文字列は静的に割り当てられたバッファ に格納され"
2409 "て返される。このバッファは、これ以降の関数呼び出しで上書きされる。"
2412 #: build/C/man3/ether_aton.3:83
2414 "The B<ether_ntohost>() function maps an Ethernet address to the "
2415 "corresponding hostname in I</etc/ethers> and returns nonzero if it cannot be "
2418 "関数 B<ether_ntohost>() は、Ethernet アドレスに対応するホスト名を I</etc/"
2419 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2423 #: build/C/man3/ether_aton.3:90
2425 "The B<ether_hostton>() function maps a hostname to the corresponding "
2426 "Ethernet address in I</etc/ethers> and returns nonzero if it cannot be found."
2428 "関数 B<ether_hostton>() は、ホスト名に対応する Ethernet アドレスを I</etc/"
2429 "ethers> を検索して割り当てる。対応するホスト名が見つからなかった場合は、 非 "
2433 #: build/C/man3/ether_aton.3:102
2435 "The B<ether_line>() function parses a line in I</etc/ethers> format "
2436 "(ethernet address followed by whitespace followed by hostname; \\(aq#\\(aq "
2437 "introduces a comment) and returns an address and hostname pair, or nonzero "
2438 "if it cannot be parsed. The buffer pointed to by I<hostname> must be "
2439 "sufficiently long, for example, have the same length as I<line>."
2441 "関数 B<ether_line>() は、 I</etc/ethers> 形式になった行を解析し、 アドレスと"
2442 "ホスト名の組を返す (I</etc/ethers> 形式は、Ethernet アドレス、ホスト名が空白"
2443 "文字 (whitespace) で区切られた書式で、\\(aq#\\(aq 以降はコメントとみなされ"
2444 "る)。 解析できなかった場合は、非 0 を返す。 I<hostname> で指定されたバッファ"
2445 "は十分な長さが必要である。つまり、 I<line> と同じ長さでなければならない。"
2448 #: build/C/man3/ether_aton.3:113
2450 "The functions B<ether_ntoa_r>() and B<ether_aton_r>() are reentrant thread-"
2451 "safe versions of B<ether_ntoa>() and B<ether_aton>() respectively, and do "
2452 "not use static buffers."
2454 "関数 B<ether_ntoa_r>() と B<ether_aton_r>() は、 それぞれ B<ether_ntoa>() "
2455 "と B<ether_aton>() の リエントラントでスレッドセーフなバージョンであり、 静"
2459 #: build/C/man3/ether_aton.3:119
2461 "The structure I<ether_addr> is defined in I<E<lt>net/ethernet.hE<gt>> as:"
2463 "I<ether_addr> 構造体は I<E<lt>net/ethernet.hE<gt>> で次のように定義されてい"
2467 #: build/C/man3/ether_aton.3:125
2470 "struct ether_addr {\n"
2471 " uint8_t ether_addr_octet[6];\n"
2474 "struct ether_addr {\n"
2475 " uint8_t ether_addr_octet[6];\n"
2479 #: build/C/man3/ether_aton.3:134
2481 "The B<ether_aton>() and B<ether_ntoa>() functions are not thread-safe."
2482 msgstr "関数 B<ether_aton>() と B<ether_ntoa>() はスレッドセーフではない。"
2485 #: build/C/man3/ether_aton.3:143
2487 "The B<ether_ntohost>(), B<ether_hostton>(), B<ether_line>(), B<ether_ntoa_r>"
2488 "() and B<ether_aton_r>() functions are thread-safe."
2490 "関数 B<ether_ntohost>(), B<ether_hostton>(), B<ether_line>(), B<ether_ntoa_r>"
2491 "(), B<ether_aton_r>() はスレッドセーフである。"
2494 #: build/C/man3/ether_aton.3:145
2495 msgid "4.3BSD, SunOS."
2496 msgstr "4.3BSD, SunOS."
2499 #: build/C/man3/ether_aton.3:149
2500 msgid "The glibc 2.2.5 implementation of B<ether_line>() is broken."
2501 msgstr "glibc 2.2.5 での B<ether_line>() の実装はおかしい。"
2504 #: build/C/man3/ether_aton.3:151
2505 msgid "B<ethers>(5)"
2506 msgstr "B<ethers>(5)"
2509 #: build/C/man5/gai.conf.5:19
2515 #: build/C/man5/gai.conf.5:19 build/C/man5/nss.5:19
2521 #: build/C/man5/gai.conf.5:22
2522 msgid "gai.conf - getaddrinfo(3) configuration file"
2523 msgstr "gai.conf - getaddrinfo(3) 設定ファイル"
2526 #: build/C/man5/gai.conf.5:36
2528 "A call to B<getaddrinfo>(3) might return multiple answers. According to RFC"
2529 "\\ 3484 these answers must be sorted so that the answer with the highest "
2530 "success rate is first in the list. The RFC provides an algorithm for the "
2531 "sorting. The static rules are not always adequate, though. For this "
2532 "reason, the RFC also requires that system administrators should have the "
2533 "possibility to dynamically change the sorting. For the glibc "
2534 "implementation, this can be achieved with the I</etc/gai.conf> file."
2536 "B<getaddrinfo>(3) の呼び出しでは、複数の答えが返る場合がある。 RFC\\ 3484 に"
2537 "よれば、 これらの答えは、 最も成功の可能性が高い答えがリストの先頭になるよう"
2538 "な順番に並び替えなければならない。 RFC には、 並び替えのアルゴリズムが書かれ"
2539 "ている。 しかしながら、 静的なルールが常に適切という訳ではない。 この理由か"
2540 "ら、 RFC では、 並び替え方法をシステム管理者が動的に変更できるようにすること"
2541 "も要求している。 glibc の実装では、 I</etc/gai.conf> ファイルでこれが実現でき"
2545 #: build/C/man5/gai.conf.5:40
2547 "Each line in the configuration file consists of a keyword and its "
2548 "parameters. White spaces in any place are ignored. Lines starting with "
2549 "\\(aq#\\(aq are comments and are ignored."
2551 "設定ファイルの各行は、キーワードとそのパラメータで構成される。 ホワイトスペー"
2552 "スはどこにあっても全て無視される。 \\(aq#\\(aq で始まる行はコメントで、 無視"
2556 #: build/C/man5/gai.conf.5:42
2557 msgid "The keywords currently recognized are:"
2558 msgstr "現在のところ、認識されるキーワードは以下の通りである。"
2561 #: build/C/man5/gai.conf.5:42
2563 msgid "B<label> I<netmask> I<precedence>"
2564 msgstr "B<label> I<netmask> I<precedence>"
2567 #: build/C/man5/gai.conf.5:51
2569 "The value is added to the label table used in the RFC\\ 3484 sorting. If "
2570 "any B<label> definition is present in the configuration file is present, the "
2571 "default table is not used. All the label definitions of the default table "
2572 "which are to be maintained have to be duplicated. Following the keyword, "
2573 "the line has to contain a network mask and a label value."
2575 "指定した値は RFC\\ 3484 の並び替えで使用されるラベルテーブルに追加される。 設"
2576 "定ファイルに B<label> 定義が一つでもあれば、デフォルトテーブルは使用されな"
2577 "い。 デフォルトテーブルのすべてのラベル定義はきちんと管理されていれば、 重複"
2578 "が発生するはずだからである。 ラベル行では、 キーワードの後に、 ネットワークマ"
2579 "スクとラベル値が含まれていなければならない。"
2582 #: build/C/man5/gai.conf.5:51
2584 msgid "B<precedence> I<netmask> I<precedence>"
2585 msgstr "B<precedence> I<netmask> I<precedence>"
2588 #: build/C/man5/gai.conf.5:58
2590 "This keyword is similar to B<label>, but instead the value is added to the "
2591 "precedence table as specified in RFC\\ 3484. Once again, the presence of a "
2592 "single B<precedence> line in the configuration file causes the default table "
2595 "このキーワードは B<label> に似ているが、 指定された値を RFC\\ 3484 で規定され"
2596 "た優先度テーブルに追加する点が異なる。 繰り返しになるが、 設定ファイルに "
2597 "B<precedence> が一つでもあれば、デフォルトテーブルは使用されない。"
2600 #: build/C/man5/gai.conf.5:58
2602 msgid "B<reload> E<lt>B<yes>|B<no>E<gt>"
2603 msgstr "B<reload> E<lt>B<yes>|B<no>E<gt>"
2606 #: build/C/man5/gai.conf.5:67
2608 "This keyword controls whether a process checks whether the configuration "
2609 "file has been changed since the last time it was read. If the value is "
2610 "\"B<yes>\", the file is reread. This might cause problems in multithreaded "
2611 "applications and is generally a bad idea. The default is \"B<no>\"."
2613 "このキーワードは、 設定ファイルが前回の読み出し以降に変更されているかをプロセ"
2614 "スが確認するかを制御する。 値が \"B<yes>\" であれば、 ファイルが再読み込みさ"
2615 "れる。 再読み込みはマルチスレッドアプリケーションで問題を起こす可能性があ"
2616 "り、 一般にはよい考えとは言えない。 デフォルトは \"B<no>\" である。"
2619 #: build/C/man5/gai.conf.5:67
2621 msgid "B<scopev4> I<mask> I<value>"
2622 msgstr "B<scopev4> I<mask> I<value>"
2625 #: build/C/man5/gai.conf.5:72
2627 "Add another rule to the RFC\\ 3484 scope table for IPv4 address. By "
2628 "default, the scope IDs described in section 3.2 in RFC\\ 3438 are used. "
2629 "Changing these defaults should hardly ever be necessary."
2631 "IPv4 アドレス用の RFC\\ 3484 スコープテーブルに別のルールを追加する。 デフォ"
2632 "ルトでは、 RFC\\ 3438 のセクション 3.2 で説明されているスコープ ID が使用され"
2633 "る。 これらのデフォルト値の変更が必要になることはまずないだろう。"
2636 #: build/C/man5/gai.conf.5:72 build/C/man3/getaddrinfo.3:592
2637 #: build/C/man3/gethostbyname.3:307 build/C/man3/getnameinfo.3:197
2638 #: build/C/man3/getnetent.3:141 build/C/man3/getprotoent.3:134
2639 #: build/C/man3/getservent.3:153 build/C/man5/host.conf.5:180
2640 #: build/C/man5/hosts.5:86 build/C/man5/hosts.equiv.5:69
2641 #: build/C/man5/networks.5:70 build/C/man5/nss.5:98
2642 #: build/C/man5/nsswitch.conf.5:298 build/C/man5/protocols.5:77
2643 #: build/C/man5/resolv.conf.5:287 build/C/man3/resolver.3:267
2644 #: build/C/man5/services.5:185 build/C/man3/setnetgrent.3:88
2645 #: build/C/man7/udplite.7:126
2651 #: build/C/man5/gai.conf.5:74 build/C/man3/getaddrinfo.3:594
2652 msgid "I</etc/gai.conf>"
2653 msgstr "I</etc/gai.conf>"
2656 #: build/C/man5/gai.conf.5:77
2658 "The default table according to RFC\\ 3484 would be specified with the "
2659 "following configuration file:"
2661 "RFC\\ 3484 で規定されているデフォルトテーブルは、 以下の設定ファイルを指定す"
2665 #: build/C/man5/gai.conf.5:89
2670 "label 2002::/16 2\n"
2672 "label ::ffff:0:0/96 4\n"
2673 "precedence ::1/128 50\n"
2674 "precedence ::/0 40\n"
2675 "precedence 2002::/16 30\n"
2676 "precedence ::/96 20\n"
2677 "precedence ::ffff:0:0/96 10\n"
2681 "label 2002::/16 2\n"
2683 "label ::ffff:0:0/96 4\n"
2684 "precedence ::1/128 50\n"
2685 "precedence ::/0 40\n"
2686 "precedence 2002::/16 30\n"
2687 "precedence ::/96 20\n"
2688 "precedence ::ffff:0:0/96 10\n"
2691 #: build/C/man5/gai.conf.5:96
2692 msgid "B<getaddrinfo>(3), RFC\\ 3484"
2693 msgstr "B<getaddrinfo>(3), RFC\\ 3484"
2696 #: build/C/man3/getaddrinfo.3:43
2699 msgstr "GETADDRINFO"
2702 #: build/C/man3/getaddrinfo.3:43
2708 #: build/C/man3/getaddrinfo.3:47
2710 "getaddrinfo, freeaddrinfo, gai_strerror - network address and service "
2713 "getaddrinfo, freeaddrinfo, gai_strerror - ネットワークのアドレスとサービスを"
2717 #: build/C/man3/getaddrinfo.3:52 build/C/man3/getipnodebyname.3:35
2720 "B<#include E<lt>sys/types.hE<gt>>\n"
2721 "B<#include E<lt>sys/socket.hE<gt>>\n"
2722 "B<#include E<lt>netdb.hE<gt>>\n"
2724 "B<#include E<lt>sys/types.hE<gt>>\n"
2725 "B<#include E<lt>sys/socket.hE<gt>>\n"
2726 "B<#include E<lt>netdb.hE<gt>>\n"
2729 #: build/C/man3/getaddrinfo.3:56
2732 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2733 "B< const struct addrinfo *>I<hints>B<,>\n"
2734 "B< struct addrinfo **>I<res>B<);>\n"
2736 "B<int getaddrinfo(const char *>I<node>B<, const char *>I<service>B<,>\n"
2737 "B< const struct addrinfo *>I<hints>B<,>\n"
2738 "B< struct addrinfo **>I<res>B<);>\n"
2741 #: build/C/man3/getaddrinfo.3:58
2743 msgid "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2744 msgstr "B<void freeaddrinfo(struct addrinfo *>I<res>B<);>\n"
2747 #: build/C/man3/getaddrinfo.3:60
2749 msgid "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2750 msgstr "B<const char *gai_strerror(int >I<errcode>B<);>\n"
2753 #: build/C/man3/getaddrinfo.3:65 build/C/man3/gethostbyname.3:93
2754 #: build/C/man3/getnameinfo.3:26 build/C/man3/getnetent_r.3:52
2755 #: build/C/man3/getprotoent_r.3:49 build/C/man3/getservent_r.3:49
2756 #: build/C/man3/inet.3:70 build/C/man3/inet_net_pton.3:46
2757 #: build/C/man3/rcmd.3:81 build/C/man3/setnetgrent.3:34
2759 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
2760 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7) 参照):"
2763 #: build/C/man3/getaddrinfo.3:71
2764 msgid "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2765 msgstr "B<getaddrinfo>(), B<freeaddrinfo>(), B<gai_strerror>():"
2768 #: build/C/man3/getaddrinfo.3:73
2769 msgid "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2770 msgstr "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
2772 #. .BR getipnodebyname (3),
2773 #. .BR getipnodebyaddr (3),
2775 #: build/C/man3/getaddrinfo.3:100
2777 "Given I<node> and I<service>, which identify an Internet host and a service, "
2778 "B<getaddrinfo>() returns one or more I<addrinfo> structures, each of which "
2779 "contains an Internet address that can be specified in a call to B<bind>(2) "
2780 "or B<connect>(2). The B<getaddrinfo>() function combines the functionality "
2781 "provided by the B<gethostbyname>(3) and B<getservbyname>(3) functions into "
2782 "a single interface, but unlike the latter functions, B<getaddrinfo>() is "
2783 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
2785 "B<getaddrinfo>() は、(インターネットのホストとサービスを識別する) I<node> "
2786 "と I<service> を渡すと、一つ以上の I<addrinfo> 構造体を返す。それぞれの "
2787 "I<addrinfo> 構造体には、 B<bind>(2) や B<connect>(2) を呼び出す際に指定でき"
2788 "るインターネットアドレスが格納されている。 B<getaddrinfo>() 関数は、 "
2789 "B<gethostbyname>(3) と B<getservbyname>(3) の機能をまとめて一つのインター"
2790 "フェースにしたものであるが、 これらの関数と違い、 B<getaddrinfo>() はリエント"
2791 "ラントであり、 B<getaddrinfo>() を使うことでプログラムは IPv4 と IPv6 の違い"
2792 "に関する依存関係を なくすことができる。"
2795 #: build/C/man3/getaddrinfo.3:106
2797 "The I<addrinfo> structure used by B<getaddrinfo>() contains the following "
2800 "B<getaddrinfo>() が用いる I<addrinfo> 構造体は以下のフィールドを含む。"
2803 #: build/C/man3/getaddrinfo.3:119
2806 "struct addrinfo {\n"
2809 " int ai_socktype;\n"
2810 " int ai_protocol;\n"
2811 " socklen_t ai_addrlen;\n"
2812 " struct sockaddr *ai_addr;\n"
2813 " char *ai_canonname;\n"
2814 " struct addrinfo *ai_next;\n"
2817 "struct addrinfo {\n"
2820 " int ai_socktype;\n"
2821 " int ai_protocol;\n"
2822 " socklen_t ai_addrlen;\n"
2823 " struct sockaddr *ai_addr;\n"
2824 " char *ai_canonname;\n"
2825 " struct addrinfo *ai_next;\n"
2829 #: build/C/man3/getaddrinfo.3:141
2831 "The I<hints> argument points to an I<addrinfo> structure that specifies "
2832 "criteria for selecting the socket address structures returned in the list "
2833 "pointed to by I<res>. If I<hints> is not NULL it points to an I<addrinfo> "
2834 "structure whose I<ai_family>, I<ai_socktype>, and I<ai_protocol> specify "
2835 "criteria that limit the set of socket addresses returned by B<getaddrinfo>"
2838 "I<hints> 引き数は I<addrinfo> 構造体を指し示し、この構造体を用いて I<res> が"
2839 "指すリストに入れて返すソケットアドレス構造体を選択するための基準を指定する。 "
2840 "I<hints> が NULL でない場合、 I<hints> は I<addrinfo> 構造体を指し示し、その"
2841 "構造体のフィールド I<ai_family>, I<ai_socktype>, I<ai_protocol> で "
2842 "B<getaddrinfo>() が返すソケットアドレス集合に対する基準を指定する。"
2845 #: build/C/man3/getaddrinfo.3:141
2847 msgid "I<ai_family>"
2848 msgstr "I<ai_family>"
2851 #: build/C/man3/getaddrinfo.3:157
2853 "This field specifies the desired address family for the returned addresses. "
2854 "Valid values for this field include B<AF_INET> and B<AF_INET6>. The value "
2855 "B<AF_UNSPEC> indicates that B<getaddrinfo>() should return socket addresses "
2856 "for any address family (either IPv4 or IPv6, for example) that can be used "
2857 "with I<node> and I<service>."
2859 "このフィールドは返されるアドレスの希望のアドレスファミリーを指定する。 この"
2860 "フィールドに指定できる有効な値としては B<AF_INET> と B<AF_INET6> がある。 ま"
2861 "た、値 B<AF_UNSPEC> を指定すると、 B<getaddrinfo>() は I<node> と "
2862 "I<service> で使用できるいずれかのアドレスファミリー (例えば IPv4 か IPv6) の "
2863 "ソケットアドレスを返すことを求められる。"
2866 #: build/C/man3/getaddrinfo.3:157
2868 msgid "I<ai_socktype>"
2869 msgstr "I<ai_socktype>"
2872 #: build/C/man3/getaddrinfo.3:166
2874 "This field specifies the preferred socket type, for example B<SOCK_STREAM> "
2875 "or B<SOCK_DGRAM>. Specifying 0 in this field indicates that socket "
2876 "addresses of any type can be returned by B<getaddrinfo>()."
2878 "このフィールドは推奨のソケット型 (例えば B<SOCK_STREAM> や B<SOCK_DGRAM>) を"
2879 "指定する。 このフィールドに 0 を指定すると、任意のソケット型のソケットアドレ"
2880 "スを B<getaddrinfo>() が返してよいことを意味する。"
2883 #: build/C/man3/getaddrinfo.3:166
2885 msgid "I<ai_protocol>"
2886 msgstr "I<ai_protocol>"
2889 #: build/C/man3/getaddrinfo.3:172
2891 "This field specifies the protocol for the returned socket addresses. "
2892 "Specifying 0 in this field indicates that socket addresses with any protocol "
2893 "can be returned by B<getaddrinfo>()."
2895 "このフィールドは返されるソケットアドレスのプロトコルを指定する。 このフィール"
2896 "ドに 0 を指定すると、任意のプロトコルののソケットアドレスを B<getaddrinfo>"
2900 #: build/C/man3/getaddrinfo.3:172
2903 msgstr "I<ai_flags>"
2906 #: build/C/man3/getaddrinfo.3:176
2908 "This field specifies additional options, described below. Multiple flags "
2909 "are specified by bitwise OR-ing them together."
2911 "このフィールドは、追加のオプション (下記) を指定する。 複数のフラグを指定する"
2912 "際には、それらのビット単位の OR をとって指定する。"
2915 #: build/C/man3/getaddrinfo.3:180
2917 "All the other fields in the structure pointed to by I<hints> must contain "
2918 "either 0 or a null pointer, as appropriate."
2920 "I<hints> が指し示す構造体の他のすべてのフィールドには 0 か NULL ポインタを適"
2924 #: build/C/man3/getaddrinfo.3:215
2926 "Specifying I<hints> as NULL is equivalent to setting I<ai_socktype> and "
2927 "I<ai_protocol> to 0; I<ai_family> to B<AF_UNSPEC>; and I<ai_flags> to B<"
2928 "(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)>. (POSIX specifies different defaults for "
2929 "I<ai_flags>; see NOTES.) I<node> specifies either a numerical network "
2930 "address (for IPv4, numbers-and-dots notation as supported by B<inet_aton>"
2931 "(3); for IPv6, hexadecimal string format as supported by B<inet_pton>(3)), "
2932 "or a network hostname, whose network addresses are looked up and resolved. "
2933 "If I<hints.ai_flags> contains the B<AI_NUMERICHOST> flag, then I<node> must "
2934 "be a numerical network address. The B<AI_NUMERICHOST> flag suppresses any "
2935 "potentially lengthy network host address lookups."
2937 "I<hints> に NULL を指定するのは、 I<ai_socktype> と I<ai_protocol> に 0 を、 "
2938 "I<ai_family> に B<AF_UNSPEC> を、 I<ai_flags> に B<(AI_V4MAPPED\\ |\\ "
2939 "AI_ADDRCONFIG)> を設定するのと等価である (POSIX では I<ai_flags> には別のデ"
2940 "フォルト値が規定されている; 「備考」を参照)。 I<node> には、数値形式のネット"
2941 "ワークアドレス (IPv4 の場合は B<inet_aton>(3) でサポートされているドット区切"
2942 "りの数字による表記、 IPv6 の場合は B<inet_pton>(3) でサポートされている 16 "
2943 "進数の文字列形式) もしくは ネットワークホスト名を指定する。 ネットワークホス"
2944 "ト名を指定した場合には、そのネットワークアドレスが検索され、 名前解決が行なわ"
2945 "れる。 I<hints.ai_flags> に B<AI_NUMERICHOST> フラグが含まれている場合は、 "
2946 "I<node> は数値形式のネットワークアドレスでなければならない。 "
2947 "B<AI_NUMERICHOST> フラグを使うと、時間の掛かる可能性のあるネットワークホスト"
2948 "アドレスの検索は すべて抑制される。"
2951 #: build/C/man3/getaddrinfo.3:240
2953 "If the B<AI_PASSIVE> flag is specified in I<hints.ai_flags>, and I<node> is "
2954 "NULL, then the returned socket addresses will be suitable for B<bind>(2)ing "
2955 "a socket that will B<accept>(2) connections. The returned socket address "
2956 "will contain the \"wildcard address\" (B<INADDR_ANY> for IPv4 addresses, "
2957 "B<IN6ADDR_ANY_INIT> for IPv6 address). The wildcard address is used by "
2958 "applications (typically servers) that intend to accept connections on any "
2959 "of the hosts's network addresses. If I<node> is not NULL, then the "
2960 "B<AI_PASSIVE> flag is ignored."
2962 "I<hints.ai_flags> に B<AI_PASSIVE> フラグが指定され、かつ I<node> が NULL の"
2963 "場合、 返されるソケットアドレスは コネクションを B<accept>(2) するためのソ"
2964 "ケットを B<bind>(2) するのに適したものとなる。 返されるソケットアドレスには"
2965 "「ワイルドカード・アドレス」 (IPv4 アドレスの場合は B<INADDR_ANY>、 IPv6 アド"
2966 "レスの場合は B<IN6ADDR_ANY_INIT>) が入る。 ワイルドカード・アドレスは、任意"
2967 "のホストのネットワークアドレスで接続を 受け付けようとするアプリケーション (通"
2968 "常はサーバー) で用いられる。 I<node> が NULL でない場合、 B<AI_PASSIVE> フラ"
2972 #: build/C/man3/getaddrinfo.3:260
2974 "If the B<AI_PASSIVE> flag is not set in I<hints.ai_flags>, then the returned "
2975 "socket addresses will be suitable for use with B<connect>(2), B<sendto>(2), "
2976 "or B<sendmsg>(2). If I<node> is NULL, then the network address will be set "
2977 "to the loopback interface address (B<INADDR_LOOPBACK> for IPv4 addresses, "
2978 "B<IN6ADDR_LOOPBACK_INIT> for IPv6 address); this is used by applications "
2979 "that intend to communicate with peers running on the same host."
2981 "I<hints.ai_flags> に B<AI_PASSIVE> フラグがセットされていない場合、 返される"
2982 "ソケットアドレスは B<connect>(2), B<sendto>(2), B<sendmsg>(2) での使用に適し"
2983 "たものとなる。 I<node> が NULL の場合、ネットワークアドレスにはループバック・"
2984 "インターフェイスの アドレス (IPv4 アドレスの場合は B<INADDR_LOOPBACK> IPv6 ア"
2985 "ドレスの場合は B<IN6ADDR_LOOPBACK_INIT>)B<が設定される。> これは同じホスト上"
2986 "で動作している接続相手と通信するような アプリケーションで用いられる。"
2989 #: build/C/man3/getaddrinfo.3:283
2991 "I<service> sets the port in each returned address structure. If this "
2992 "argument is a service name (see B<services>(5)), it is translated to the "
2993 "corresponding port number. This argument can also be specified as a decimal "
2994 "number, which is simply converted to binary. If I<service> is NULL, then "
2995 "the port number of the returned socket addresses will be left "
2996 "uninitialized. If B<AI_NUMERICSERV> is specified in I<hints.ai_flags> and "
2997 "I<service> is not NULL, then I<service> must point to a string containing a "
2998 "numeric port number. This flag is used to inhibit the invocation of a name "
2999 "resolution service in cases where it is known not to be required."
3001 "I<service> により、返される各アドレス構造体のポート番号が決まる。 この引き数"
3002 "がサービス名 (B<services>(5) 参照) の場合、対応するポート番号に翻訳される。 "
3003 "この引き数には 10 進数も指定することができ、 この場合にはバイナリへの変換だけ"
3004 "が行われる。 I<service> が NULL の場合、返されるソケットアドレスのポート番号"
3005 "は 初期化されないままとなる。 I<hints.ai_flags> に B<AI_NUMERICSERV> が指定さ"
3006 "れ、かつ I<service> が NULL でない場合、 I<service> は数値のポート番号を含む"
3007 "文字列を指し示さなければならない。 このフラグは、名前解決サービスが不要である"
3008 "ことが分かっている場合に、 サービスの起動を抑制するために用いられる。"
3011 #: build/C/man3/getaddrinfo.3:289
3012 msgid "Either I<node> or I<service>, but not both, may be NULL."
3014 "I<node> と I<service> のどちらかは NULL にしてよいが、両方同時に NULL にして"
3018 #: build/C/man3/getaddrinfo.3:305
3020 "The B<getaddrinfo>() function allocates and initializes a linked list of "
3021 "I<addrinfo> structures, one for each network address that matches I<node> "
3022 "and I<service>, subject to any restrictions imposed by I<hints>, and returns "
3023 "a pointer to the start of the list in I<res>. The items in the linked list "
3024 "are linked by the I<ai_next> field."
3026 "B<getaddrinfo>() 関数は、 I<addrinfo> 構造体のメモリ確保を行い、 "
3027 "I<addrinfo> 構造体のリンクリストを初期化し、 I<res> にリストの先頭へのポイン"
3028 "タを入れて返す。 このとき、各構造体のネットワークアドレスは I<node> と "
3029 "I<service> に一致し、 I<hints> で課されたすべての制限を満たすものとなる。 リ"
3030 "ンクリストの要素は I<ai_next> フィールドにより連結される。"
3033 #: build/C/man3/getaddrinfo.3:327
3035 "There are several reasons why the linked list may have more than one "
3036 "I<addrinfo> structure, including: the network host is multihomed, accessible "
3037 "over multiple protocols (e.g., both B<AF_INET> and B<AF_INET6>); or the same "
3038 "service is available from multiple socket types (one B<SOCK_STREAM> address "
3039 "and another B<SOCK_DGRAM> address, for example). Normally, the application "
3040 "should try using the addresses in the order in which they are returned. The "
3041 "sorting function used within B<getaddrinfo>() is defined in RFC\\ 3484; the "
3042 "order can be tweaked for a particular system by editing I</etc/gai.conf> "
3043 "(available since glibc 2.5)."
3045 "リンクリストの I<addrinfo> 構造体は複数個になることもあり、その理由はいくつか"
3046 "ある。 ネットワークホストがマルチホームである、 複数のプロトコルでアクセスで"
3047 "きる (例えば B<AF_INET> と B<AF_INET6> の両方) 、 複数のソケット種別で同じ"
3048 "サービスが利用できる (例えば、ひとつが B<SOCK_STREM> アドレスで、もうひとつ"
3049 "が B<SOCK_DGRAM> アドレスである)、がある。 通常は、アプリケーションは返された"
3050 "順序でアドレスを試すべきである。 B<getaddrinfo>() の中で使用される並べ替え関"
3051 "数は RFC\\ 3484 で定義されている。 特殊なシステムでは、 I</etc/gai.conf> を編"
3052 "集することで、この順序を微調整することができる (I</etc/gai.conf> は glibc "
3055 #. In glibc prior to 2.3.4, the ai_canonname of each addrinfo
3056 #. structure was set pointing to the canonical name; that was
3057 #. more than POSIX.1-2001 specified, or other implementations provided.
3060 #: build/C/man3/getaddrinfo.3:342
3062 "If I<hints.ai_flags> includes the B<AI_CANONNAME> flag, then the "
3063 "I<ai_canonname> field of the first of the I<addrinfo> structures in the "
3064 "returned list is set to point to the official name of the host."
3066 "I<hints.ai_flags> に B<AI_CANONNAME> フラグが含まれている場合、返されるリスト"
3067 "の最初の I<addrinfo> 構造体の I<ai_canonname> フィールドはホストの公式な名前"
3071 #: build/C/man3/getaddrinfo.3:346
3073 "The remaining fields of each returned I<addrinfo> structure are initialized "
3076 "返される各々の I<addrinfo> 構造体の残りのフィールドは以下のように初期化され"
3080 #: build/C/man3/getaddrinfo.3:346 build/C/man3/getaddrinfo.3:369
3081 #: build/C/man3/getaddrinfo_a.3:191 build/C/man3/getaddrinfo_a.3:195
3082 #: build/C/man3/getaddrinfo_a.3:197 build/C/man3/inet_net_pton.3:208
3083 #: build/C/man3/inet_net_pton.3:214 build/C/man3/inet_net_pton.3:221
3084 #: build/C/man3/inet_net_pton.3:228 build/C/man3/inet_net_pton.3:235
3085 #: build/C/man5/nsswitch.conf.5:144 build/C/man5/nsswitch.conf.5:148
3086 #: build/C/man7/unix.7:74 build/C/man7/unix.7:91 build/C/man7/unix.7:111
3092 #: build/C/man3/getaddrinfo.3:369
3094 "The I<ai_family>, I<ai_socktype>, and I<ai_protocol> fields return the "
3095 "socket creation parameters (i.e., these fields have the same meaning as the "
3096 "corresponding arguments of B<socket>(2)). For example, I<ai_family> might "
3097 "return B<AF_INET> or B<AF_INET6>; I<ai_socktype> might return B<SOCK_DGRAM> "
3098 "or B<SOCK_STREAM>; and I<ai_protocol> returns the protocol for the socket."
3100 "I<ai_family>, I<ai_socktype>, I<ai_protocol> フィールドはソケット生成パラメー"
3101 "タを返す (これらのフィールドの意味は B<socket>(2) の同じ名前の引き数と同じで"
3102 "ある)。 例えば、 I<ai_family> は B<AF_INET> や B<AF_INET6> を返し、 "
3103 "I<ai_socktype> は B<SOCK_DGRAM> や B<SOCK_STREAM> を返し、 I<ai_protocol> は"
3107 #: build/C/man3/getaddrinfo.3:376
3109 "A pointer to the socket address is placed in the I<ai_addr> field, and the "
3110 "length of the socket address, in bytes, is placed in the I<ai_addrlen> field."
3112 "I<ai_addr> フィールドにはソケットアドレスへのポインタが書き込まれ、 "
3113 "I<ai_addrlen> フィールドにはソケットアドレスの長さがバイト単位で書き込まれ"
3117 #: build/C/man3/getaddrinfo.3:395
3119 "If I<hints.ai_flags> includes the B<AI_ADDRCONFIG> flag, then IPv4 addresses "
3120 "are returned in the list pointed to by I<res> only if the local system has "
3121 "at least one IPv4 address configured, and IPv6 addresses are returned only "
3122 "if the local system has at least one IPv6 address configured. The loopback "
3123 "address is not considered for this case as valid as a configured address. "
3124 "This flag is useful on, for example, IPv4-only systems, to ensure that "
3125 "B<getaddrinfo>() does not return IPv6 socket addresses that would always "
3126 "fail in B<connect>(2) or B<bind>(2)."
3128 "I<hints.ai_flags> が B<AI_ADDRCONFIG> を含む場合、 I<res> が指すリストには、"
3129 "ローカルシステムに最低一つの IPv4 アドレスが設定されている場合のみ IPv4 アド"
3130 "レスが返され、 ローカルシステムに最低一つの IPv6 アドレスが設定されている場合"
3131 "にのみ IPv6 アドレスが返される。 なお、この場合には、ループバックアドレスは有"
3132 "効に設定されたアドレスとはみなされない。 このフラグは、例えば、IPv4 だけのシ"
3133 "ステムで、 B<getaddrinfo>() が必ず IPv6 ソケットアドレスを返さないことを保証"
3134 "するのに役立つ。 IPv4 だけのシステムでは、IPv6 アドレスは B<connect>(2) や "
3135 "B<bind>(2) で必ず失敗することになる。"
3138 #: build/C/man3/getaddrinfo.3:420
3140 "If I<hints.ai_flags> specifies the B<AI_V4MAPPED> flag, and I<hints."
3141 "ai_family> was specified as B<AF_INET6>, and no matching IPv6 addresses "
3142 "could be found, then return IPv4-mapped IPv6 addresses in the list pointed "
3143 "to by I<res>. If both B<AI_V4MAPPED> and B<AI_ALL> are specified in I<hints."
3144 "ai_flags>, then return both IPv6 and IPv4-mapped IPv6 addresses in the list "
3145 "pointed to by I<res>. B<AI_ALL> is ignored if B<AI_V4MAPPED> is not also "
3148 "I<hints.ai_flags> に B<AI_V4MAPPED> が指定されていて、 I<hints.ai_family> に "
3149 "B<AF_INET6> が指定され、 マッチする IPv6 アドレスが見つからなかった場合、 "
3150 "I<res> が指すリストには IPv4-mapped IPv6 アドレスが返される。 I<hints."
3151 "ai_flags> に B<AI_V4MAPPED> と B<AI_ALL> の両方が指定されている場合、 I<res> "
3152 "が指すリストには IPv6 アドレスと IPv4-mapped IPv6 アドレスの 両方が返され"
3153 "る。 B<AI_V4MAPPED> が指定されていない場合、 B<AI_ALL> は無視される。"
3156 #: build/C/man3/getaddrinfo.3:426
3158 "The B<freeaddrinfo>() function frees the memory that was allocated for the "
3159 "dynamically allocated linked list I<res>."
3161 "B<freeaddrinfo>() 関数は、 リンクリスト I<res> に対して動的に割り当てられた"
3165 #: build/C/man3/getaddrinfo.3:426
3167 msgid "Extensions to getaddrinfo() for Internationalized Domain Names"
3168 msgstr "国際化ドメイン名のための getaddrinfo() の拡張"
3171 #: build/C/man3/getaddrinfo.3:435
3173 "Starting with glibc 2.3.4, B<getaddrinfo>() has been extended to "
3174 "selectively allow the incoming and outgoing hostnames to be transparently "
3175 "converted to and from the Internationalized Domain Name (IDN) format (see "
3176 "RFC 3490, I<Internationalizing Domain Names in Applications (IDNA)>). Four "
3177 "new flags are defined:"
3179 "glibc 2.3.4 から、 B<getaddrinfo>() は入出力するホスト名を透過的に国際化ドメ"
3180 "イン名 (IDN) 形式 (RFC 3490 の I<Internationalizing Domain Names in "
3181 "Applications (IDNA)> を参照のこと) と変換することを選択的に認めるように拡張さ"
3182 "れている。 4 つの新しいフラグが定義されている:"
3185 #: build/C/man3/getaddrinfo.3:435
3191 #: build/C/man3/getaddrinfo.3:441
3193 "If this flag is specified, then the node name given in I<node> is converted "
3194 "to IDN format if necessary. The source encoding is that of the current "
3197 "このフラグが指定されると、 I<node> で与えられたノード名は必要があれば IDN 形"
3198 "式に変換される。 ソース符号化形式は現在のロケールのものである。"
3200 #. Implementation Detail:
3201 #. To minimize effects on system performance the implementation might
3202 #. want to check whether the input string contains any non-ASCII
3203 #. characters. If there are none the IDN step can be skipped completely.
3204 #. On systems which allow not-ASCII safe encodings for a locale this
3205 #. might be a problem.
3207 #: build/C/man3/getaddrinfo.3:453
3209 "If the input name contains non-ASCII characters, then the IDN encoding is "
3210 "used. Those parts of the node name (delimited by dots) that contain non-"
3211 "ASCII characters are encoded using ASCII Compatible Encoding (ACE) before "
3212 "being passed to the name resolution functions."
3214 "入力名に非 ASCII 文字が含まれている場合、 IDN 符号化形式が使われる。 非 "
3215 "ASCII 文字が含まれている(ピリオドで区切られる)部分ノード名は、 名前解決機能に"
3216 "渡される前に ASCII 互換符号化形式 (ACE) を使って 符号化される。"
3219 #: build/C/man3/getaddrinfo.3:453
3221 msgid "B<AI_CANONIDN>"
3222 msgstr "B<AI_CANONIDN>"
3225 #: build/C/man3/getaddrinfo.3:465
3227 "After a successful name lookup, and if the B<AI_CANONNAME> flag was "
3228 "specified, B<getaddrinfo>() will return the canonical name of the node "
3229 "corresponding to the I<addrinfo> structure value passed back. The return "
3230 "value is an exact copy of the value returned by the name resolution function."
3232 "B<AI_CANONNAME> が指定されている場合、 B<getaddrinfo>() は名前の検索に成功し"
3233 "た後、 返された I<addrinfo> 構造体に対応するノードの正規名を返す。 返り値は名"
3234 "前解決機能から返された値の正確なコピーである。"
3236 #. Implementation Detail:
3237 #. If no component of the returned name starts with xn\-\- the IDN
3238 #. step can be skipped, therefore avoiding unnecessary slowdowns.
3240 #: build/C/man3/getaddrinfo.3:478
3242 "If the name is encoded using ACE, then it will contain the I<xn--> prefix "
3243 "for one or more components of the name. To convert these components into a "
3244 "readable form the B<AI_CANONIDN> flag can be passed in addition to "
3245 "B<AI_CANONNAME>. The resulting string is encoded using the current locale's "
3248 "B<AI_CANONIDN> 名前が ACE で符号化されている場合、一つまたは複数の名前の構成"
3249 "要素の先頭に I<xn--> を含んでいる。 これらの構成要素を読み込み可能な形に変換"
3250 "するために、 B<AI_CANONNAME> と共に B<AI_CANONIDN> フラグを渡すことも出来"
3251 "る。 返される文字列は現在のロケールの符号化形式で符号化されている。"
3254 #: build/C/man3/getaddrinfo.3:478
3256 msgid "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3257 msgstr "B<AI_IDN_ALLOW_UNASSIGNED>, B<AI_IDN_USE_STD3_ASCII_RULES>"
3260 #: build/C/man3/getaddrinfo.3:485 build/C/man3/getnameinfo.3:139
3262 "Setting these flags will enable the IDNA_ALLOW_UNASSIGNED (allow unassigned "
3263 "Unicode code points) and IDNA_USE_STD3_ASCII_RULES (check output to make "
3264 "sure it is a STD3 conforming hostname) flags respectively to be used in the "
3267 "これらのフラグをセットすると、IDNA 処理で使用されるフラグ "
3268 "IDNA_ALLOW_UNASSIGNED (未割り当ての Unicode のコードポイントを許容) と "
3269 "IDNA_USE_STD3_ASCII_RULES (出力が STD3 準拠のホスト名かをチェックする) がそ"
3273 #: build/C/man3/getaddrinfo.3:485 build/C/man3/getaddrinfo_a.3:242
3274 #: build/C/man3/gethostbyname.3:280 build/C/man3/getipnodebyname.3:186
3275 #: build/C/man3/getnameinfo.3:139 build/C/man3/getnetent.3:130
3276 #: build/C/man3/getnetent_r.3:118 build/C/man2/getpeername.2:68
3277 #: build/C/man3/getprotoent.3:123 build/C/man3/getprotoent_r.3:108
3278 #: build/C/man3/getservent.3:142 build/C/man3/getservent_r.3:107
3279 #: build/C/man3/inet_ntop.3:83 build/C/man3/inet_pton.3:116
3280 #: build/C/man3/inet_net_pton.3:131 build/C/man3/rcmd.3:239
3281 #: build/C/man3/resolver.3:245 build/C/man3/setnetgrent.3:86
3282 #: build/C/man2/shutdown.2:69
3284 msgid "RETURN VALUE"
3287 #. FIXME glibc defines the following additional errors, some which
3288 #. can probably be returned by getaddrinfo(); they need to
3291 #. #define EAI_INPROGRESS -100 /* Processing request in progress. */
3292 #. #define EAI_CANCELED -101 /* Request canceled. */
3293 #. #define EAI_NOTCANCELED -102 /* Request not canceled. */
3294 #. #define EAI_ALLDONE -103 /* All requests done. */
3295 #. #define EAI_INTR -104 /* Interrupted by a signal. */
3296 #. #define EAI_IDN_ENCODE -105 /* IDN encoding failed. */
3299 #: build/C/man3/getaddrinfo.3:499
3301 "B<getaddrinfo>() returns 0 if it succeeds, or one of the following nonzero "
3304 "B<getaddrinfo>() は成功すると 0 を返し、失敗すると以下の非 0 のエラーコード"
3308 #: build/C/man3/getaddrinfo.3:499
3310 msgid "B<EAI_ADDRFAMILY>"
3311 msgstr "B<EAI_ADDRFAMILY>"
3315 #: build/C/man3/getaddrinfo.3:504
3317 "The specified network host does not have any network addresses in the "
3318 "requested address family."
3320 "指定されたネットワークホストには、 要求されたアドレスファミリーのネットワーク"
3324 #: build/C/man3/getaddrinfo.3:504 build/C/man3/getaddrinfo_a.3:247
3325 #: build/C/man3/getaddrinfo_a.3:264 build/C/man3/getnameinfo.3:155
3327 msgid "B<EAI_AGAIN>"
3328 msgstr "B<EAI_AGAIN>"
3331 #: build/C/man3/getaddrinfo.3:508
3333 "The name server returned a temporary failure indication. Try again later."
3335 "ネームサーバーから一時的な失敗 (temporary failure) を意味する返事が返され"
3339 #: build/C/man3/getaddrinfo.3:508 build/C/man3/getnameinfo.3:159
3341 msgid "B<EAI_BADFLAGS>"
3342 msgstr "B<EAI_BADFLAGS>"
3345 #: build/C/man3/getaddrinfo.3:518
3347 "I<hints.ai_flags> contains invalid flags; or, I<hints.ai_flags> included "
3348 "B<AI_CANONNAME> and I<name> was NULL."
3350 "I<hints.ai_flags> のフラグに不正なフラグが含まれている。または、 I<hints."
3351 "ai_flags> に B<AI_CANONNAME> が含まれていて、かつ I<name> が NULL であった。"
3354 #: build/C/man3/getaddrinfo.3:518 build/C/man3/getnameinfo.3:164
3357 msgstr "B<EAI_FAIL>"
3360 #: build/C/man3/getaddrinfo.3:521
3361 msgid "The name server returned a permanent failure indication."
3363 "ネームサーバーから恒久的な失敗 (permanent failure) を意味する返事が返され"
3367 #: build/C/man3/getaddrinfo.3:521 build/C/man3/getnameinfo.3:167
3369 msgid "B<EAI_FAMILY>"
3370 msgstr "B<EAI_FAMILY>"
3373 #: build/C/man3/getaddrinfo.3:524
3374 msgid "The requested address family is not supported."
3375 msgstr "要求されたアドレスファミリーがサポートされていない。"
3378 #: build/C/man3/getaddrinfo.3:524 build/C/man3/getaddrinfo_a.3:252
3379 #: build/C/man3/getnameinfo.3:171
3381 msgid "B<EAI_MEMORY>"
3382 msgstr "B<EAI_MEMORY>"
3385 #: build/C/man3/getaddrinfo.3:527 build/C/man3/getaddrinfo_a.3:255
3386 #: build/C/man3/getnameinfo.3:174 build/C/man7/unix.7:361
3387 msgid "Out of memory."
3391 #: build/C/man3/getaddrinfo.3:527
3393 msgid "B<EAI_NODATA>"
3394 msgstr "B<EAI_NODATA>"
3398 #: build/C/man3/getaddrinfo.3:532
3400 "The specified network host exists, but does not have any network addresses "
3403 "指定されたネットワークホストは存在するが、 ネットワークアドレスがひとつも定義"
3407 #: build/C/man3/getaddrinfo.3:532 build/C/man3/getnameinfo.3:174
3409 msgid "B<EAI_NONAME>"
3410 msgstr "B<EAI_NONAME>"
3413 #: build/C/man3/getaddrinfo.3:549
3415 "The I<node> or I<service> is not known; or both I<node> and I<service> are "
3416 "NULL; or B<AI_NUMERICSERV> was specified in I<hints.ai_flags> and I<service> "
3417 "was not a numeric port-number string."
3419 "I<node> と I<service> のどちらかが不明、または I<node> と I<service> の両方"
3420 "が NULL だった場合、または B<AI_NUMERICSERV> が I<hints.ai_flags> に指定され"
3421 "ていて、 I<hints.ai_flags> と I<service> が数値のポート番号の文字列でない。"
3424 #: build/C/man3/getaddrinfo.3:549
3426 msgid "B<EAI_SERVICE>"
3427 msgstr "B<EAI_SERVICE>"
3430 #: build/C/man3/getaddrinfo.3:570
3432 "The requested service is not available for the requested socket type. It "
3433 "may be available through another socket type. For example, this error could "
3434 "occur if I<service> was \"shell\" (a service available only on stream "
3435 "sockets), and either I<hints.ai_protocol> was B<IPPROTO_UDP>, or I<hints."
3436 "ai_socktype> was B<SOCK_DGRAM>; or the error could occur if I<service> was "
3437 "not NULL, and I<hints.ai_socktype> was B<SOCK_RAW> (a socket type that does "
3438 "not support the concept of services)."
3440 "要求されたサービスは、要求されたソケットタイプでは利用できない。 他のソケット"
3441 "タイプでなら利用可能かもしれない。 このエラーが発生する例としては、 "
3442 "I<service> が \"shell\" (ストリーム・ソケットでのみ利用できるサービス) で、 "
3443 "I<hints.ai_protocol> に B<IPPROTO_UDP> が指定されたり、 I<hints.ai_socktype> "
3444 "に B<SOCK_DGRAM> が指定されたりした場合がある。 また、 I<service> が NULL 以"
3445 "外で、 I<hints.ai_socktype> に B<SOCK_RAW> (サービスの考え方をサポートしてい"
3446 "ないソケット種別) が指定された場合にも、このエラーが発生する。"
3449 #: build/C/man3/getaddrinfo.3:570
3451 msgid "B<EAI_SOCKTYPE>"
3452 msgstr "B<EAI_SOCKTYPE>"
3455 #: build/C/man3/getaddrinfo.3:582
3457 "The requested socket type is not supported. This could occur, for example, "
3458 "if I<hints.ai_socktype> and I<hints.ai_protocol> are inconsistent (e.g., "
3459 "B<SOCK_DGRAM> and B<IPPROTO_TCP>, respectively)."
3461 "要求されたソケットタイプがサポートされていない。 このエラーが発生する例として"
3462 "は、 I<hints.ai_socktype> と I<hints.ai_protocol> が矛盾している場合 (例えば "
3463 "I<hints.ai_socktype> が B<SOCK_DGRAM> で I<hints.ai_protocol> が "
3464 "B<IPPROTO_TCP>) がある。"
3467 #: build/C/man3/getaddrinfo.3:582 build/C/man3/getaddrinfo_a.3:255
3468 #: build/C/man3/getnameinfo.3:187
3470 msgid "B<EAI_SYSTEM>"
3471 msgstr "B<EAI_SYSTEM>"
3474 #: build/C/man3/getaddrinfo.3:587
3475 msgid "Other system error, check I<errno> for details."
3476 msgstr "その他のシステムエラー。詳しくは I<errno> を調べること。"
3479 #: build/C/man3/getaddrinfo.3:592
3481 "The B<gai_strerror>() function translates these error codes to a human "
3482 "readable string, suitable for error reporting."
3484 "B<gai_strerror>() 関数を用いると、これらのエラーコードを人間に可読な文字列に"
3485 "変換できるので、 エラー報告に適するだろう。"
3488 #: build/C/man3/getaddrinfo.3:599
3490 "POSIX.1-2001. The B<getaddrinfo>() function is documented in RFC\\ 2553."
3491 msgstr "POSIX.1-2001. B<getaddrinfo>() 関数は RFC 2553 に記載されている。"
3494 #: build/C/man3/getaddrinfo.3:604
3496 "B<getaddrinfo>() supports the I<address>B<%>I<scope-id> notation for "
3497 "specifying the IPv6 scope-ID."
3499 "B<getaddrinfo>() は、IPv6 scope-ID を指定するために I<address>B<%>I<scope-"
3503 #: build/C/man3/getaddrinfo.3:612
3505 "B<AI_ADDRCONFIG>, B<AI_ALL>, and B<AI_V4MAPPED> are available since glibc "
3506 "2.3.3. B<AI_NUMERICSERV> is available since glibc 2.3.4."
3508 "B<AI_ADDRCONFIG>, B<AI_ALL>, B<AI_V4MAPPED> は glibc 2.3.3 以降で利用可能であ"
3509 "る。 B<AI_NUMERICSERV> は glibc 2.3.4 以降で利用可能である。"
3512 #: build/C/man3/getaddrinfo.3:622
3514 "According to POSIX.1-2001, specifying I<hints> as NULL should cause "
3515 "I<ai_flags> to be assumed as 0. The GNU C library instead assumes a value "
3516 "of B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> for this case, since this value is "
3517 "considered an improvement on the specification."
3519 "POSIX.1-2001 によると、 I<hints> に NULL が指定された場合、 I<ai_flags> を 0 "
3520 "とみなすべきとされている。 GNU C ライブラリでは、この場合に、代わりに "
3521 "I<ai_flags> を B<(AI_V4MAPPED\\ |\\ AI_ADDRCONFIG)> とみなすようになってい"
3522 "る。 この値の方が標準規格の改善になると考えられているからである。"
3524 #. getnameinfo.3 refers to this example
3525 #. socket.2 refers to this example
3526 #. bind.2 refers to this example
3527 #. connect.2 refers to this example
3528 #. recvfrom.2 refers to this example
3529 #. sendto.2 refers to this example
3531 #: build/C/man3/getaddrinfo.3:636
3533 "The following programs demonstrate the use of B<getaddrinfo>(), "
3534 "B<gai_strerror>(), B<freeaddrinfo>(), and B<getnameinfo>(3). The programs "
3535 "are an echo server and client for UDP datagrams."
3537 "以下のプログラムは、 B<getaddrinfo>(), B<gai_strerror>(), B<freeaddrinfo>(), "
3538 "B<getnameinfo>(3) の使い方を示したものである。 プログラムは UDP データグラム"
3539 "の echo サーバとクライアントである。"
3542 #: build/C/man3/getaddrinfo.3:636
3544 msgid "Server program"
3548 #: build/C/man3/getaddrinfo.3:646
3551 "#include E<lt>sys/types.hE<gt>\n"
3552 "#include E<lt>stdio.hE<gt>\n"
3553 "#include E<lt>stdlib.hE<gt>\n"
3554 "#include E<lt>unistd.hE<gt>\n"
3555 "#include E<lt>string.hE<gt>\n"
3556 "#include E<lt>sys/socket.hE<gt>\n"
3557 "#include E<lt>netdb.hE<gt>\n"
3559 "#include E<lt>sys/types.hE<gt>\n"
3560 "#include E<lt>stdio.hE<gt>\n"
3561 "#include E<lt>stdlib.hE<gt> \n"
3562 "#include E<lt>unistd.hE<gt>\n"
3563 "#include E<lt>string.hE<gt>\n"
3564 "#include E<lt>sys/socket.hE<gt>\n"
3565 "#include E<lt>netdb.hE<gt>\n"
3568 #: build/C/man3/getaddrinfo.3:648 build/C/man3/getaddrinfo.3:743
3570 msgid "#define BUF_SIZE 500\n"
3571 msgstr "#define BUF_SIZE 500\n"
3574 #: build/C/man3/getaddrinfo.3:659
3578 "main(int argc, char *argv[])\n"
3580 " struct addrinfo hints;\n"
3581 " struct addrinfo *result, *rp;\n"
3583 " struct sockaddr_storage peer_addr;\n"
3584 " socklen_t peer_addr_len;\n"
3586 " char buf[BUF_SIZE];\n"
3589 "main(int argc, char *argv[])\n"
3591 " struct addrinfo hints;\n"
3592 " struct addrinfo *result, *rp;\n"
3594 " struct sockaddr_storage peer_addr;\n"
3595 " socklen_t peer_addr_len;\n"
3597 " char buf[BUF_SIZE];\n"
3600 #: build/C/man3/getaddrinfo.3:664
3603 " if (argc != 2) {\n"
3604 " fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3605 " exit(EXIT_FAILURE);\n"
3608 " if (argc != 2) {\n"
3609 " fprintf(stderr, \"Usage: %s port\\en\", argv[0]);\n"
3610 " exit(EXIT_FAILURE);\n"
3614 #: build/C/man3/getaddrinfo.3:673
3617 " memset(&hints, 0, sizeof(struct addrinfo));\n"
3618 " hints.ai_family = AF_UNSPEC; /* Allow IPv4 or IPv6 */\n"
3619 " hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3620 " hints.ai_flags = AI_PASSIVE; /* For wildcard IP address */\n"
3621 " hints.ai_protocol = 0; /* Any protocol */\n"
3622 " hints.ai_canonname = NULL;\n"
3623 " hints.ai_addr = NULL;\n"
3624 " hints.ai_next = NULL;\n"
3626 " memset(&hints, 0, sizeof(struct addrinfo));\n"
3627 " hints.ai_family = AF_UNSPEC; /* Allow IPv4 or IPv6 */\n"
3628 " hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3629 " hints.ai_flags = AI_PASSIVE; /* For wildcard IP address */\n"
3630 " hints.ai_protocol = 0; /* Any protocol */\n"
3631 " hints.ai_canonname = NULL;\n"
3632 " hints.ai_addr = NULL;\n"
3633 " hints.ai_next = NULL;\n"
3636 #: build/C/man3/getaddrinfo.3:679
3639 " s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3641 " fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3642 " exit(EXIT_FAILURE);\n"
3645 " s = getaddrinfo(NULL, argv[1], &hints, &result);\n"
3647 " fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3648 " exit(EXIT_FAILURE);\n"
3652 #: build/C/man3/getaddrinfo.3:684
3655 " /* getaddrinfo() returns a list of address structures.\n"
3656 " Try each address until we successfully bind(2).\n"
3657 " If socket(2) (or bind(2)) fails, we (close the socket\n"
3658 " and) try the next address. */\n"
3660 " /* getaddrinfo() returns a list of address structures.\n"
3661 " Try each address until we successfully bind(2).\n"
3662 " If socket(2) (or bind(2)) fails, we (close the socket\n"
3663 " and) try the next address. */\n"
3666 #: build/C/man3/getaddrinfo.3:690
3669 " for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3670 " sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3671 " rp-E<gt>ai_protocol);\n"
3675 " for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3676 " sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype, \n"
3677 " rp-E<gt>ai_protocol);\n"
3682 #: build/C/man3/getaddrinfo.3:693
3685 " if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3686 " break; /* Success */\n"
3688 " if (bind(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) == 0)\n"
3689 " break; /* Success */\n"
3692 #: build/C/man3/getaddrinfo.3:696 build/C/man3/getaddrinfo.3:789
3702 #: build/C/man3/getaddrinfo.3:701
3705 " if (rp == NULL) { /* No address succeeded */\n"
3706 " fprintf(stderr, \"Could not bind\\en\");\n"
3707 " exit(EXIT_FAILURE);\n"
3710 " if (rp == NULL) { /* No address succeeded */\n"
3711 " fprintf(stderr, \"Could not bind\\en\");\n"
3712 " exit(EXIT_FAILURE);\n"
3716 #: build/C/man3/getaddrinfo.3:703 build/C/man3/getaddrinfo.3:796
3718 msgid " freeaddrinfo(result); /* No longer needed */\n"
3719 msgstr " freeaddrinfo(result); /* No longer needed */\n"
3722 #: build/C/man3/getaddrinfo.3:705
3724 msgid " /* Read datagrams and echo them back to sender */\n"
3725 msgstr " /* Read datagrams and echo them back to sender */\n"
3728 #: build/C/man3/getaddrinfo.3:712
3732 " peer_addr_len = sizeof(struct sockaddr_storage);\n"
3733 " nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3734 " (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3735 " if (nread == -1)\n"
3736 " continue; /* Ignore failed request */\n"
3739 " peer_addr_len = sizeof(struct sockaddr_storage);\n"
3740 " nread = recvfrom(sfd, buf, BUF_SIZE, 0,\n"
3741 " (struct sockaddr *) &peer_addr, &peer_addr_len);\n"
3742 " if (nread == -1)\n"
3743 " continue; /* Ignore failed request */\n"
3746 #: build/C/man3/getaddrinfo.3:714
3748 msgid " char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3749 msgstr " char host[NI_MAXHOST], service[NI_MAXSERV];\n"
3752 #: build/C/man3/getaddrinfo.3:723
3755 " s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3756 " peer_addr_len, host, NI_MAXHOST,\n"
3757 " service, NI_MAXSERV, NI_NUMERICSERV);\n"
3759 " printf(\"Received %zd bytes from %s:%s\\en\",\n"
3760 " nread, host, service);\n"
3762 " fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3764 " s = getnameinfo((struct sockaddr *) &peer_addr,\n"
3765 " peer_addr_len, host, NI_MAXHOST,\n"
3766 " service, NI_MAXSERV, NI_NUMERICSERV);\n"
3768 " printf(\"Received %zd bytes from %s:%s\\en\",\n"
3769 " nread, host, service);\n"
3771 " fprintf(stderr, \"getnameinfo: %s\\en\", gai_strerror(s));\n"
3774 #: build/C/man3/getaddrinfo.3:730
3777 " if (sendto(sfd, buf, nread, 0,\n"
3778 " (struct sockaddr *) &peer_addr,\n"
3779 " peer_addr_len) != nread)\n"
3780 " fprintf(stderr, \"Error sending response\\en\");\n"
3784 " if (sendto(sfd, buf, nread, 0,\n"
3785 " (struct sockaddr *) &peer_addr,\n"
3786 " peer_addr_len) != nread)\n"
3787 " fprintf(stderr, \"Error sending response\\en\");\n"
3792 #: build/C/man3/getaddrinfo.3:731
3794 msgid "Client program"
3795 msgstr "クライアントのプログラム"
3798 #: build/C/man3/getaddrinfo.3:741
3801 "#include E<lt>sys/types.hE<gt>\n"
3802 "#include E<lt>sys/socket.hE<gt>\n"
3803 "#include E<lt>netdb.hE<gt>\n"
3804 "#include E<lt>stdio.hE<gt>\n"
3805 "#include E<lt>stdlib.hE<gt>\n"
3806 "#include E<lt>unistd.hE<gt>\n"
3807 "#include E<lt>string.hE<gt>\n"
3809 "#include E<lt>sys/types.hE<gt>\n"
3810 "#include E<lt>sys/socket.hE<gt>\n"
3811 "#include E<lt>netdb.hE<gt>\n"
3812 "#include E<lt>stdio.hE<gt>\n"
3813 "#include E<lt>stdlib.hE<gt>\n"
3814 "#include E<lt>unistd.hE<gt>\n"
3815 "#include E<lt>string.hE<gt>\n"
3818 #: build/C/man3/getaddrinfo.3:753
3822 "main(int argc, char *argv[])\n"
3824 " struct addrinfo hints;\n"
3825 " struct addrinfo *result, *rp;\n"
3829 " char buf[BUF_SIZE];\n"
3832 "main(int argc, char *argv[])\n"
3834 " struct addrinfo hints;\n"
3835 " struct addrinfo *result, *rp;\n"
3839 " char buf[BUF_SIZE];\n"
3842 #: build/C/man3/getaddrinfo.3:758
3845 " if (argc E<lt> 3) {\n"
3846 " fprintf(stderr, \"Usage: %s host port msg...\\en\", argv[0]);\n"
3847 " exit(EXIT_FAILURE);\n"
3850 " if (argc E<lt> 3) {\n"
3851 " fprintf(stderr, \"Usage: %s host port msg...\\en\", argv[0]);\n"
3852 " exit(EXIT_FAILURE);\n"
3856 #: build/C/man3/getaddrinfo.3:760
3858 msgid " /* Obtain address(es) matching host/port */\n"
3859 msgstr " /* Obtain address(es) matching host/port */\n"
3862 #: build/C/man3/getaddrinfo.3:766
3865 " memset(&hints, 0, sizeof(struct addrinfo));\n"
3866 " hints.ai_family = AF_UNSPEC; /* Allow IPv4 or IPv6 */\n"
3867 " hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3868 " hints.ai_flags = 0;\n"
3869 " hints.ai_protocol = 0; /* Any protocol */\n"
3871 " memset(&hints, 0, sizeof(struct addrinfo));\n"
3872 " hints.ai_family = AF_UNSPEC; /* Allow IPv4 or IPv6 */\n"
3873 " hints.ai_socktype = SOCK_DGRAM; /* Datagram socket */\n"
3874 " hints.ai_flags = 0;\n"
3875 " hints.ai_protocol = 0; /* Any protocol */\n"
3878 #: build/C/man3/getaddrinfo.3:772
3881 " s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3883 " fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3884 " exit(EXIT_FAILURE);\n"
3887 " s = getaddrinfo(argv[1], argv[2], &hints, &result);\n"
3889 " fprintf(stderr, \"getaddrinfo: %s\\en\", gai_strerror(s));\n"
3890 " exit(EXIT_FAILURE);\n"
3894 #: build/C/man3/getaddrinfo.3:777
3897 " /* getaddrinfo() returns a list of address structures.\n"
3898 " Try each address until we successfully connect(2).\n"
3899 " If socket(2) (or connect(2)) fails, we (close the socket\n"
3900 " and) try the next address. */\n"
3902 " /* getaddrinfo() returns a list of address structures.\n"
3903 " Try each address until we successfully connect(2).\n"
3904 " If socket(2) (or connect(2)) fails, we (close the socket\n"
3905 " and) try the next address. */\n"
3908 #: build/C/man3/getaddrinfo.3:783
3911 " for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3912 " sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3913 " rp-E<gt>ai_protocol);\n"
3917 " for (rp = result; rp != NULL; rp = rp-E<gt>ai_next) {\n"
3918 " sfd = socket(rp-E<gt>ai_family, rp-E<gt>ai_socktype,\n"
3919 " rp-E<gt>ai_protocol);\n"
3924 #: build/C/man3/getaddrinfo.3:786
3927 " if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
3928 " break; /* Success */\n"
3930 " if (connect(sfd, rp-E<gt>ai_addr, rp-E<gt>ai_addrlen) != -1)\n"
3931 " break; /* Success */\n"
3934 #: build/C/man3/getaddrinfo.3:794
3937 " if (rp == NULL) { /* No address succeeded */\n"
3938 " fprintf(stderr, \"Could not connect\\en\");\n"
3939 " exit(EXIT_FAILURE);\n"
3942 " if (rp == NULL) { /* No address succeeded */\n"
3943 " fprintf(stderr, \"Could not connect\\en\");\n"
3944 " exit(EXIT_FAILURE);\n"
3948 #: build/C/man3/getaddrinfo.3:799
3951 " /* Send remaining command-line arguments as separate\n"
3952 " datagrams, and read responses from server */\n"
3954 " /* Send remaining command-line arguments as separate \n"
3955 " datagrams, and read responses from server */\n"
3958 #: build/C/man3/getaddrinfo.3:803
3961 " for (j = 3; j E<lt> argc; j++) {\n"
3962 " len = strlen(argv[j]) + 1;\n"
3963 " /* +1 for terminating null byte */\n"
3965 " for (j = 3; j E<lt> argc; j++) {\n"
3966 " len = strlen(argv[j]) + 1;\n"
3967 " /* +1 for terminating null byte */\n"
3970 #: build/C/man3/getaddrinfo.3:809
3973 " if (len + 1 E<gt> BUF_SIZE) {\n"
3974 " fprintf(stderr,\n"
3975 " \"Ignoring long message in argument %d\\en\", j);\n"
3979 " if (len + 1 E<gt> BUF_SIZE) {\n"
3980 " fprintf(stderr,\n"
3981 " \"Ignoring long message in argument %d\\en\", j);\n"
3986 #: build/C/man3/getaddrinfo.3:814
3989 " if (write(sfd, argv[j], len) != len) {\n"
3990 " fprintf(stderr, \"partial/failed write\\en\");\n"
3991 " exit(EXIT_FAILURE);\n"
3994 " if (write(sfd, argv[j], len) != len) {\n"
3995 " fprintf(stderr, \"partial/failed write\\en\");\n"
3996 " exit(EXIT_FAILURE);\n"
4000 #: build/C/man3/getaddrinfo.3:820
4003 " nread = read(sfd, buf, BUF_SIZE);\n"
4004 " if (nread == -1) {\n"
4005 " perror(\"read\");\n"
4006 " exit(EXIT_FAILURE);\n"
4009 " nread = read(sfd, buf, BUF_SIZE);\n"
4010 " if (nread == -1) {\n"
4011 " perror(\"read\");\n"
4012 " exit(EXIT_FAILURE);\n"
4016 #: build/C/man3/getaddrinfo.3:823
4019 " printf(\"Received %zd bytes: %s\\en\", nread, buf);\n"
4022 " printf(\"Received %zd bytes: %s\\en\", nread, buf);\n"
4025 #. .BR getipnodebyaddr (3),
4026 #. .BR getipnodebyname (3),
4028 #: build/C/man3/getaddrinfo.3:837
4030 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
4031 "B<gai.conf>(5), B<hostname>(7), B<ip>(7)"
4033 "B<getaddrinfo_a>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<inet>(3), "
4034 "B<gai.conf>(5), B<hostname>(7), B<ip>(7)"
4037 #: build/C/man3/getaddrinfo_a.3:29
4039 msgid "GETADDRINFO_A"
4040 msgstr "GETADDRINFO_A"
4043 #: build/C/man3/getaddrinfo_a.3:29
4049 #: build/C/man3/getaddrinfo_a.3:33
4051 "getaddrinfo_a, gai_suspend, gai_error, gai_cancel - asynchronous network "
4052 "address and service translation"
4056 #: build/C/man3/getaddrinfo_a.3:37
4059 "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
4060 "B<#include E<lt>netdb.hE<gt>>\n"
4062 "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */\n"
4063 "B<#include E<lt>netdb.hE<gt>>\n"
4066 #: build/C/man3/getaddrinfo_a.3:40
4069 "B<int getaddrinfo_a(int >I<mode>B<, struct gaicb *>I<list[]>B<,>\n"
4070 "B< int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
4072 "B<int getaddrinfo_a(int >I<mode>B<, struct gaicb *>I<list[]>B<,>\n"
4073 "B< int >I<nitems>B<, struct sigevent *>I<sevp>B<);>\n"
4076 #: build/C/man3/getaddrinfo_a.3:43
4079 "B<int gai_suspend(struct gaicb *>I<list[]>B<, int >I<nitems>B<,>\n"
4080 "B< struct timespec *>I<timeout>B<);>\n"
4082 "B<int gai_suspend(struct gaicb *>I<list[]>B<, int >I<nitems>B<,>\n"
4083 "B< struct timespec *>I<timeout>B<);>\n"
4086 #: build/C/man3/getaddrinfo_a.3:45
4088 msgid "B<int gai_error(struct gaicb *>I<req>B<);>\n"
4089 msgstr "B<int gai_error(struct gaicb *>I<req>B<);>\n"
4092 #: build/C/man3/getaddrinfo_a.3:47
4094 msgid "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
4095 msgstr "B<int gai_cancel(struct gaicb *>I<req>B<);>\n"
4098 #: build/C/man3/getaddrinfo_a.3:49
4100 msgid "Link with I<-lanl>.\n"
4101 msgstr "I<-lanl> でリンクする。\n"
4104 #: build/C/man3/getaddrinfo_a.3:57
4106 "The B<getaddrinfo_a>() function performs the same task as B<getaddrinfo>"
4107 "(3), but allows multiple name look-ups to be performed asynchronously, with "
4108 "optional notification on completion of look-up operations."
4112 #: build/C/man3/getaddrinfo_a.3:61
4113 msgid "The I<mode> argument has one of the following values:"
4117 #: build/C/man3/getaddrinfo_a.3:61
4120 msgstr "B<GAI_WAIT>"
4123 #: build/C/man3/getaddrinfo_a.3:65
4125 "Perform the look-ups synchronously. The call blocks until the look-ups have "
4130 #: build/C/man3/getaddrinfo_a.3:65
4132 msgid "B<GAI_NOWAIT>"
4133 msgstr "B<GAI_NOWAIT>"
4136 #: build/C/man3/getaddrinfo_a.3:73
4138 "Perform the look-ups asynchronously. The call returns immediately, and the "
4139 "requests are resolved in the background. See the discussion of the I<sevp> "
4144 #: build/C/man3/getaddrinfo_a.3:88
4146 "The array I<list> specifies the look-up requests to process. The I<nitems> "
4147 "argument specifies the number of elements in I<list>. The requested look-up "
4148 "operations are started in parallel. NULL elements in I<list> are ignored. "
4149 "Each request is described by a I<gaicb> structure, defined as follows:"
4153 #: build/C/man3/getaddrinfo_a.3:97
4157 " const char *ar_name;\n"
4158 " const char *ar_service;\n"
4159 " const struct addrinfo *ar_request;\n"
4160 " struct addrinfo *ar_result;\n"
4164 " const char *ar_name;\n"
4165 " const char *ar_service;\n"
4166 " const struct addrinfo *ar_request;\n"
4167 " struct addrinfo *ar_result;\n"
4171 #: build/C/man3/getaddrinfo_a.3:128
4173 "The elements of this structure correspond to the arguments of B<getaddrinfo>"
4174 "(3). Thus, I<ar_name> corresponds to the I<node> argument and I<ar_service> "
4175 "to the I<service> argument, identifying an Internet host and a service. The "
4176 "I<ar_request> element corresponds to the I<hints> argument, specifying the "
4177 "criteria for selecting the returned socket address structures. Finally, "
4178 "I<ar_result> corresponds to the I<res> argument; you do not need to "
4179 "initialize this element, it will be automatically set when the request is "
4180 "resolved. The I<addrinfo> structure referenced by the last two elements is "
4181 "described in B<getaddrinfo>(3)."
4185 #: build/C/man3/getaddrinfo_a.3:144
4187 "When I<mode> is specified as B<GAI_NOWAIT>, notifications about resolved "
4188 "requests can be obtained by employing the I<sigevent> structure pointed to "
4189 "by the I<sevp> argument. For the definition and general details of this "
4190 "structure, see B<sigevent>(7). The I<sevp-E<gt>sigev_notify> field can have "
4191 "the following values:"
4195 #: build/C/man3/getaddrinfo_a.3:144
4197 msgid "B<SIGEV_NONE>"
4198 msgstr "B<SIGEV_NONE>"
4201 #: build/C/man3/getaddrinfo_a.3:147
4202 msgid "Don't provide any notification."
4206 #: build/C/man3/getaddrinfo_a.3:147
4208 msgid "B<SIGEV_SIGNAL>"
4209 msgstr "B<SIGEV_SIGNAL>"
4211 #. si_pid and si_uid are also set, to the values of the calling process,
4212 #. which doesn't provide useful information, so we'll skip mentioning it.
4214 #: build/C/man3/getaddrinfo_a.3:163
4216 "When a look-up completes, generate the signal I<sigev_signo> for the "
4217 "process. See B<sigevent>(7) for general details. The I<si_code> field of "
4218 "the I<siginfo_t> structure will be set to B<SI_ASYNCNL>."
4222 #: build/C/man3/getaddrinfo_a.3:163
4224 msgid "B<SIGEV_THREAD>"
4225 msgstr "B<SIGEV_THREAD>"
4228 #: build/C/man3/getaddrinfo_a.3:171
4230 "When a look-up completes, invoke I<sigev_notify_function> as if it were the "
4231 "start function of a new thread. See B<sigevent>(7) for details."
4235 #: build/C/man3/getaddrinfo_a.3:180
4237 "For B<SIGEV_SIGNAL> and B<SIGEV_THREAD>, it may be useful to point I<sevp-"
4238 "E<gt>sigev_value.sival_ptr> to I<list>."
4242 #: build/C/man3/getaddrinfo_a.3:191
4244 "The B<gai_suspend>() function suspends execution of the calling thread, "
4245 "waiting for the completion of one or more requests in the array I<list>. "
4246 "The I<nitems> argument specifies the size of the array I<list>. The call "
4247 "blocks until one of the following occurs:"
4251 #: build/C/man3/getaddrinfo_a.3:195
4252 msgid "One or more of the operations in I<list> completes."
4256 #: build/C/man3/getaddrinfo_a.3:197
4257 msgid "The call is interrupted by a signal that is caught."
4261 #: build/C/man3/getaddrinfo_a.3:210
4263 "The time interval specified in I<timeout> elapses. This argument specifies "
4264 "a timeout in seconds plus nanoseconds (see B<nanosleep>(2) for details of "
4265 "the I<timespec> structure). If I<timeout> is NULL, then the call blocks "
4266 "indefinitely (until one of the events above occurs)."
4270 #: build/C/man3/getaddrinfo_a.3:215
4272 "No explicit indication of which request was completed is given; you must "
4273 "determine which request(s) have completed by iterating with B<gai_error>() "
4274 "over the list of requests."
4278 #: build/C/man3/getaddrinfo_a.3:225
4280 "The B<gai_error>() function returns the status of the request I<req>: "
4281 "either B<EAI_INPROGRESS> if the request was not completed yet, 0 if it was "
4282 "handled successfully, or an error code if the request could not be resolved."
4286 #: build/C/man3/getaddrinfo_a.3:242
4288 "The B<gai_cancel>() function cancels the request I<req>. If the request "
4289 "has been canceled successfully, the error status of the request will be set "
4290 "to B<EAI_CANCELLED> and normal asynchronous notification will be performed. "
4291 "The request cannot be canceled if it is currently being processed; in that "
4292 "case, it will be handled as if B<gai_cancel>() has never been called. If "
4293 "I<req> is NULL, an attempt is made to cancel all outstanding requests that "
4294 "the process has made."
4298 #: build/C/man3/getaddrinfo_a.3:247
4300 "The B<getaddrinfo_a>() function returns 0 if all of the requests have been "
4301 "enqueued successfully, or one of the following nonzero error codes:"
4305 #: build/C/man3/getaddrinfo_a.3:252
4307 "The resources necessary to enqueue the look-up requests were not available. "
4308 "The application may check the error status of each request to determine "
4309 "which ones failed."
4313 #: build/C/man3/getaddrinfo_a.3:259
4314 msgid "I<mode> is invalid."
4318 #: build/C/man3/getaddrinfo_a.3:264
4320 "The B<gai_suspend>() function returns 0 if at least one of the listed "
4321 "requests has been completed. Otherwise, it returns one of the following "
4322 "nonzero error codes:"
4326 #: build/C/man3/getaddrinfo_a.3:267
4328 "The given timeout expired before any of the requests could be completed."
4332 #: build/C/man3/getaddrinfo_a.3:267 build/C/man3/getaddrinfo_a.3:297
4334 msgid "B<EAI_ALLDONE>"
4335 msgstr "B<EAI_ALLDONE>"
4338 #: build/C/man3/getaddrinfo_a.3:270
4339 msgid "There were no actual requests given to the function."
4343 #: build/C/man3/getaddrinfo_a.3:270
4346 msgstr "B<EAI_INTR>"
4349 #: build/C/man3/getaddrinfo_a.3:275
4351 "A signal has interrupted the function. Note that this interruption might "
4352 "have been caused by signal notification of some completed look-up request."
4356 #: build/C/man3/getaddrinfo_a.3:287
4358 "The B<gai_error>() function can return B<EAI_INPROGRESS> for an unfinished "
4359 "look-up request, 0 for a successfully completed look-up (as described "
4360 "above), one of the error codes that could be returned by B<getaddrinfo>(3), "
4361 "or the error code B<EAI_CANCELLED> if the request has been canceled "
4362 "explicitly before it could be finished."
4366 #: build/C/man3/getaddrinfo_a.3:291
4367 msgid "The B<gai_cancel>() function can return one of these values:"
4371 #: build/C/man3/getaddrinfo_a.3:291
4373 msgid "B<EAI_CANCELLED>"
4374 msgstr "B<EAI_CANCELLED>"
4377 #: build/C/man3/getaddrinfo_a.3:294
4378 msgid "The request has been canceled successfully."
4382 #: build/C/man3/getaddrinfo_a.3:294
4384 msgid "B<EAI_NOTCANCELLED>"
4385 msgstr "B<EAI_NOTCANCELLED>"
4388 #: build/C/man3/getaddrinfo_a.3:297
4389 msgid "The request has not been canceled."
4393 #: build/C/man3/getaddrinfo_a.3:300
4394 msgid "The request has already completed."
4398 #: build/C/man3/getaddrinfo_a.3:305 build/C/man3/getnameinfo.3:197
4400 "The B<gai_strerror>(3) function translates these error codes to a human "
4401 "readable string, suitable for error reporting."
4403 "B<gai_strerror>(3) 関数を使うと、これらのエラー・コードを、エラー・レポートに"
4404 "適した 人間が読みやすい文字列に翻訳してくれる。"
4407 #: build/C/man3/getaddrinfo_a.3:308
4409 "These functions are GNU extensions; they first appeared in glibc in version "
4414 #: build/C/man3/getaddrinfo_a.3:314
4416 "The interface of B<getaddrinfo_a>() was modeled after the B<lio_listio>(3) "
4421 #: build/C/man3/getaddrinfo_a.3:318
4423 "Two examples are provided: a simple example that resolves several requests "
4424 "in parallel synchronously, and a complex example showing some of the "
4425 "asynchronous capabilities."
4429 #: build/C/man3/getaddrinfo_a.3:318
4431 msgid "Synchronous example"
4435 #: build/C/man3/getaddrinfo_a.3:323
4437 "The program below simply resolves several hostnames in parallel, giving a "
4438 "speed-up compared to resolving the hostnames sequentially using "
4439 "B<getaddrinfo>(3). The program might be used like this:"
4443 #: build/C/man3/getaddrinfo_a.3:330
4446 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4447 "ftp.us.kernel.org: 128.30.2.36\n"
4448 "enoent.linuxfoundation.org: Name or service not known\n"
4449 "gnu.cz: 87.236.197.13\n"
4451 "$ B<./a.out ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz>\n"
4452 "ftp.us.kernel.org: 128.30.2.36\n"
4453 "enoent.linuxfoundation.org: Name or service not known\n"
4454 "gnu.cz: 87.236.197.13\n"
4457 #: build/C/man3/getaddrinfo_a.3:334
4458 msgid "Here is the program source code"
4462 #: build/C/man3/getaddrinfo_a.3:341 build/C/man3/getaddrinfo_a.3:430
4465 "#define _GNU_SOURCE\n"
4466 "#include E<lt>netdb.hE<gt>\n"
4467 "#include E<lt>stdio.hE<gt>\n"
4468 "#include E<lt>stdlib.hE<gt>\n"
4469 "#include E<lt>string.hE<gt>\n"
4471 "#define _GNU_SOURCE\n"
4472 "#include E<lt>netdb.hE<gt>\n"
4473 "#include E<lt>stdio.hE<gt>\n"
4474 "#include E<lt>stdlib.hE<gt>\n"
4475 "#include E<lt>string.hE<gt>\n"
4478 #: build/C/man3/getaddrinfo_a.3:349
4482 "main(int argc, char *argv[])\n"
4485 " struct gaicb *reqs[argc - 1];\n"
4486 " char host[NI_MAXHOST];\n"
4487 " struct addrinfo *res;\n"
4490 "main(int argc, char *argv[])\n"
4493 " struct gaicb *reqs[argc - 1];\n"
4494 " char host[NI_MAXHOST];\n"
4495 " struct addrinfo *res;\n"
4498 #: build/C/man3/getaddrinfo_a.3:354
4501 " if (argc E<lt> 2) {\n"
4502 " fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4503 " exit(EXIT_FAILURE);\n"
4506 " if (argc E<lt> 2) {\n"
4507 " fprintf(stderr, \"Usage: %s HOST...\\en\", argv[0]);\n"
4508 " exit(EXIT_FAILURE);\n"
4512 #: build/C/man3/getaddrinfo_a.3:364
4515 " for (i = 0; i E<lt> argc - 1; i++) {\n"
4516 " reqs[i] = malloc(sizeof(*reqs[0]));\n"
4517 " if (reqs[i] == NULL) {\n"
4518 " perror(\"malloc\");\n"
4519 " exit(EXIT_FAILURE);\n"
4521 " memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4522 " reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4525 " for (i = 0; i E<lt> argc - 1; i++) {\n"
4526 " reqs[i] = malloc(sizeof(*reqs[0]));\n"
4527 " if (reqs[i] == NULL) {\n"
4528 " perror(\"malloc\");\n"
4529 " exit(EXIT_FAILURE);\n"
4531 " memset(reqs[i], 0, sizeof(*reqs[0]));\n"
4532 " reqs[i]-E<gt>ar_name = argv[i + 1];\n"
4536 #: build/C/man3/getaddrinfo_a.3:371
4539 " ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4540 " if (ret != 0) {\n"
4541 " fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4542 " gai_strerror(ret));\n"
4543 " exit(EXIT_FAILURE);\n"
4546 " ret = getaddrinfo_a(GAI_WAIT, reqs, argc - 1, NULL);\n"
4547 " if (ret != 0) {\n"
4548 " fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4549 " gai_strerror(ret));\n"
4550 " exit(EXIT_FAILURE);\n"
4554 #: build/C/man3/getaddrinfo_a.3:377
4557 " for (i = 0; i E<lt> argc - 1; i++) {\n"
4558 " printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4559 " ret = gai_error(reqs[i]);\n"
4560 " if (ret == 0) {\n"
4561 " res = reqs[i]-E<gt>ar_result;\n"
4563 " for (i = 0; i E<lt> argc - 1; i++) {\n"
4564 " printf(\"%s: \", reqs[i]-E<gt>ar_name);\n"
4565 " ret = gai_error(reqs[i]);\n"
4566 " if (ret == 0) {\n"
4567 " res = reqs[i]-E<gt>ar_result;\n"
4570 #: build/C/man3/getaddrinfo_a.3:387
4573 " ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4574 " host, sizeof(host),\n"
4575 " NULL, 0, NI_NUMERICHOST);\n"
4576 " if (ret != 0) {\n"
4577 " fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4578 " gai_strerror(ret));\n"
4579 " exit(EXIT_FAILURE);\n"
4583 " ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4584 " host, sizeof(host),\n"
4585 " NULL, 0, NI_NUMERICHOST);\n"
4586 " if (ret != 0) {\n"
4587 " fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4588 " gai_strerror(ret));\n"
4589 " exit(EXIT_FAILURE);\n"
4594 #: build/C/man3/getaddrinfo_a.3:394
4598 " puts(gai_strerror(ret));\n"
4601 " exit(EXIT_SUCCESS);\n"
4605 " puts(gai_strerror(ret));\n"
4608 " exit(EXIT_SUCCESS);\n"
4612 #: build/C/man3/getaddrinfo_a.3:395
4614 msgid "Asynchronous example"
4618 #: build/C/man3/getaddrinfo_a.3:400
4620 "This example shows a simple interactive B<getaddrinfo_a>() front-end. The "
4621 "notification facility is not demonstrated."
4625 #: build/C/man3/getaddrinfo_a.3:402
4626 msgid "An example session might look like this:"
4630 #: build/C/man3/getaddrinfo_a.3:419
4634 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4636 "[2] gnu.cz: Request not canceled\n"
4638 "[00] ftp.us.kernel.org: Finished\n"
4640 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4641 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4642 "[02] gnu.cz: 87.236.197.13\n"
4644 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4645 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4646 "[02] gnu.cz: 87.236.197.13\n"
4649 "E<gt> a ftp.us.kernel.org enoent.linuxfoundation.org gnu.cz\n"
4651 "[2] gnu.cz: Request not canceled\n"
4653 "[00] ftp.us.kernel.org: Finished\n"
4655 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4656 "[01] enoent.linuxfoundation.org: Processing request in progress\n"
4657 "[02] gnu.cz: 87.236.197.13\n"
4659 "[00] ftp.us.kernel.org: 216.165.129.139\n"
4660 "[01] enoent.linuxfoundation.org: Name or service not known\n"
4661 "[02] gnu.cz: 87.236.197.13\n"
4664 #: build/C/man3/getaddrinfo_a.3:423
4665 msgid "The program source is as follows:"
4669 #: build/C/man3/getaddrinfo_a.3:433
4672 "static struct gaicb **reqs = NULL;\n"
4673 "static int nreqs = 0;\n"
4675 "static struct gaicb **reqs = NULL;\n"
4676 "static int nreqs = 0;\n"
4679 #: build/C/man3/getaddrinfo_a.3:438
4685 " static char buf[256];\n"
4690 " static char buf[256];\n"
4693 #: build/C/man3/getaddrinfo_a.3:442
4696 " fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4697 " if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4700 " fputs(\"E<gt> \", stdout); fflush(stdout);\n"
4701 " if (fgets(buf, sizeof(buf), stdin) == NULL)\n"
4705 #: build/C/man3/getaddrinfo_a.3:445
4708 " if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4709 " buf[strlen(buf) - 1] = 0;\n"
4711 " if (buf[strlen(buf) - 1] == \\(aq\\en\\(aq)\n"
4712 " buf[strlen(buf) - 1] = 0;\n"
4715 #: build/C/man3/getaddrinfo_a.3:448
4725 #: build/C/man3/getaddrinfo_a.3:456
4728 "/* Add requests for specified hostnames */\n"
4730 "add_requests(void)\n"
4732 " int nreqs_base = nreqs;\n"
4736 "/* Add requests for specified hostnames */\n"
4738 "add_requests(void)\n"
4740 " int nreqs_base = nreqs;\n"
4745 #: build/C/man3/getaddrinfo_a.3:460
4748 " while ((host = strtok(NULL, \" \"))) {\n"
4750 " reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4752 " while ((host = strtok(NULL, \" \"))) {\n"
4754 " reqs = realloc(reqs, nreqs * sizeof(reqs[0]));\n"
4757 #: build/C/man3/getaddrinfo_a.3:464
4760 " reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4761 " reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4764 " reqs[nreqs - 1] = calloc(1, sizeof(*reqs[0]));\n"
4765 " reqs[nreqs - 1]-E<gt>ar_name = strdup(host);\n"
4769 #: build/C/man3/getaddrinfo_a.3:466
4771 msgid " /* Queue nreqs_base..nreqs requests. */\n"
4772 msgstr " /* Queue nreqs_base..nreqs requests. */\n"
4775 #: build/C/man3/getaddrinfo_a.3:475
4778 " ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4779 " nreqs - nreqs_base, NULL);\n"
4781 " fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4782 " gai_strerror(ret));\n"
4783 " exit(EXIT_FAILURE);\n"
4787 " ret = getaddrinfo_a(GAI_NOWAIT, &reqs[nreqs_base],\n"
4788 " nreqs - nreqs_base, NULL);\n"
4790 " fprintf(stderr, \"getaddrinfo_a() failed: %s\\en\",\n"
4791 " gai_strerror(ret));\n"
4792 " exit(EXIT_FAILURE);\n"
4797 #: build/C/man3/getaddrinfo_a.3:484
4800 "/* Wait until at least one of specified requests completes */\n"
4802 "wait_requests(void)\n"
4806 " struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4807 " /* NULL elements are ignored by gai_suspend(). */\n"
4809 "/* Wait until at least one of specified requests completes */\n"
4811 "wait_requests(void)\n"
4815 " struct gaicb const **wait_reqs = calloc(nreqs, sizeof(*wait_reqs));\n"
4816 " /* NULL elements are ignored by gai_suspend(). */\n"
4819 #: build/C/man3/getaddrinfo_a.3:487 build/C/man3/getaddrinfo_a.3:524
4822 " while ((id = strtok(NULL, \" \")) != NULL) {\n"
4825 " while ((id = strtok(NULL, \" \")) != NULL) {\n"
4829 #: build/C/man3/getaddrinfo_a.3:492 build/C/man3/getaddrinfo_a.3:529
4832 " if (n E<gt>= nreqs) {\n"
4833 " printf(\"Bad request number: %s\\en\", id);\n"
4837 " if (n E<gt>= nreqs) {\n"
4838 " printf(\"Bad request number: %s\\en\", id);\n"
4843 #: build/C/man3/getaddrinfo_a.3:495
4846 " wait_reqs[n] = reqs[n];\n"
4849 " wait_reqs[n] = reqs[n];\n"
4853 #: build/C/man3/getaddrinfo_a.3:501
4856 " ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
4858 " printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
4862 " ret = gai_suspend(wait_reqs, nreqs, NULL);\n"
4864 " printf(\"gai_suspend(): %s\\en\", gai_strerror(ret));\n"
4869 #: build/C/man3/getaddrinfo_a.3:505
4872 " for (i = 0; i E<lt> nreqs; i++) {\n"
4873 " if (wait_reqs[i] == NULL)\n"
4876 " for (i = 0; i E<lt> nreqs; i++) {\n"
4877 " if (wait_reqs[i] == NULL)\n"
4881 #: build/C/man3/getaddrinfo_a.3:509
4884 " ret = gai_error(reqs[i]);\n"
4885 " if (ret == EAI_INPROGRESS)\n"
4888 " ret = gai_error(reqs[i]);\n"
4889 " if (ret == EAI_INPROGRESS)\n"
4893 #: build/C/man3/getaddrinfo_a.3:514
4896 " printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
4897 " ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
4901 " printf(\"[%02d] %s: %s\\en\", i, reqs[i]-E<gt>ar_name,\n"
4902 " ret == 0 ? \"Finished\" : gai_strerror(ret));\n"
4907 #: build/C/man3/getaddrinfo_a.3:521
4910 "/* Cancel specified requests */\n"
4912 "cancel_requests(void)\n"
4917 "/* Cancel specified requests */\n"
4919 "cancel_requests(void)\n"
4925 #: build/C/man3/getaddrinfo_a.3:535
4928 " ret = gai_cancel(reqs[n]);\n"
4929 " printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
4930 " gai_strerror(ret));\n"
4934 " ret = gai_cancel(reqs[n]);\n"
4935 " printf(\"[%s] %s: %s\\en\", id, reqs[atoi(id)]-E<gt>ar_name,\n"
4936 " gai_strerror(ret));\n"
4941 #: build/C/man3/getaddrinfo_a.3:543
4944 "/* List all requests */\n"
4946 "list_requests(void)\n"
4949 " char host[NI_MAXHOST];\n"
4950 " struct addrinfo *res;\n"
4952 "/* List all requests */\n"
4954 "list_requests(void)\n"
4957 " char host[NI_MAXHOST];\n"
4958 " struct addrinfo *res;\n"
4961 #: build/C/man3/getaddrinfo_a.3:547
4964 " for (i = 0; i E<lt> nreqs; i++) {\n"
4965 " printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
4966 " ret = gai_error(reqs[i]);\n"
4968 " for (i = 0; i E<lt> nreqs; i++) {\n"
4969 " printf(\"[%02d] %s: \", i, reqs[i]-E<gt>ar_name);\n"
4970 " ret = gai_error(reqs[i]);\n"
4973 #: build/C/man3/getaddrinfo_a.3:550
4977 " res = reqs[i]-E<gt>ar_result;\n"
4980 " res = reqs[i]-E<gt>ar_result;\n"
4983 #: build/C/man3/getaddrinfo_a.3:565
4986 " ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
4987 " host, sizeof(host),\n"
4988 " NULL, 0, NI_NUMERICHOST);\n"
4990 " fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
4991 " gai_strerror(ret));\n"
4992 " exit(EXIT_FAILURE);\n"
4996 " puts(gai_strerror(ret));\n"
5001 " ret = getnameinfo(res-E<gt>ai_addr, res-E<gt>ai_addrlen,\n"
5002 " host, sizeof(host),\n"
5003 " NULL, 0, NI_NUMERICHOST);\n"
5005 " fprintf(stderr, \"getnameinfo() failed: %s\\en\",\n"
5006 " gai_strerror(ret));\n"
5007 " exit(EXIT_FAILURE);\n"
5011 " puts(gai_strerror(ret));\n"
5017 #: build/C/man3/getaddrinfo_a.3:571
5021 "main(int argc, char *argv[])\n"
5027 "main(int argc, char *argv[])\n"
5033 #: build/C/man3/getaddrinfo_a.3:574
5036 " while ((cmdline = getcmd()) != NULL) {\n"
5037 " cmd = strtok(cmdline, \" \");\n"
5039 " while ((cmdline = getcmd()) != NULL) {\n"
5040 " cmd = strtok(cmdline, \" \");\n"
5043 #: build/C/man3/getaddrinfo_a.3:599
5046 " if (cmd == NULL) {\n"
5047 " list_requests();\n"
5049 " switch (cmd[0]) {\n"
5050 " case \\(aqa\\(aq:\n"
5051 " add_requests();\n"
5053 " case \\(aqw\\(aq:\n"
5054 " wait_requests();\n"
5056 " case \\(aqc\\(aq:\n"
5057 " cancel_requests();\n"
5059 " case \\(aql\\(aq:\n"
5060 " list_requests();\n"
5063 " fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
5068 " exit(EXIT_SUCCESS);\n"
5071 " if (cmd == NULL) {\n"
5072 " list_requests();\n"
5074 " switch (cmd[0]) {\n"
5075 " case \\(aqa\\(aq:\n"
5076 " add_requests();\n"
5078 " case \\(aqw\\(aq:\n"
5079 " wait_requests();\n"
5081 " case \\(aqc\\(aq:\n"
5082 " cancel_requests();\n"
5084 " case \\(aql\\(aq:\n"
5085 " list_requests();\n"
5088 " fprintf(stderr, \"Bad command: %c\\en\", cmd[0]);\n"
5093 " exit(EXIT_SUCCESS);\n"
5097 #: build/C/man3/getaddrinfo_a.3:607
5099 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
5102 "B<getaddrinfo>(3), B<inet>(3), B<lio_listio>(3), B<hostname>(7), B<ip>(7), "
5106 #: build/C/man1/getent.1:24
5112 #: build/C/man1/getent.1:24
5118 #: build/C/man1/getent.1:24
5120 msgid "User Commands"
5121 msgstr "User Commands"
5124 #: build/C/man1/getent.1:27
5125 msgid "getent - get entries from Name Service Switch libraries"
5126 msgstr "getent - 名前サービス切り替えライブラリからエントリーを取得する"
5129 #: build/C/man1/getent.1:30
5130 msgid "B<getent> I<database> [I<key> ...]"
5131 msgstr "B<getent> I<database> [I<key> ...]"
5134 #: build/C/man1/getent.1:45
5136 "The B<getent> command displays entries from databases supported by the Name "
5137 "Service Switch libraries, which are configured in I</etc/nsswitch.conf>. If "
5138 "one or more I<key> arguments are provided, then only the entries that match "
5139 "the supplied keys will be displayed. Otherwise, if no I<key> is provided, "
5140 "all entries will be displayed (unless the database does not support "
5143 "B<getent> コマンドは、 名前サービス切り替えライブラリでサポートされているデー"
5144 "タベースのエントリーを表示する。 名前サービス切り替えライブラリの設定は I</"
5145 "etc/nsswitch.conf> で行う。 一つ以上の I<key> 引き数が指定されると、 指定され"
5146 "たキーにマッチするエントリーだけが表示される。 I<key> が指定されなかった場"
5147 "合、 すべてのエントリーが表示される (データベースで列挙 (enumeration) がサ"
5151 #: build/C/man1/getent.1:49
5153 "The I<database> may be any of those supported by the GNU C Library, listed "
5156 "I<database> には GNU C ライブラリでサポートされているデータベースのいずれかを"
5157 "指定できる。 以下にそのリストを示す。"
5160 #: build/C/man1/getent.1:50
5166 #: build/C/man1/getent.1:71
5168 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5169 "B<endhostent>(3) to enumerate the hosts database. This is identical to "
5170 "using B<hosts>. When one or more I<key> arguments are provided, pass each "
5171 "I<key> in succession to B<getaddrinfo>(3) with the address family "
5172 "B<AF_UNSPEC>, enumerating each socket address structure returned."
5174 "I<key> が指定されなかった場合、 B<sethostent>(3), B<gethostent>(3), "
5175 "B<endhostent>(3) を使用して hosts データベースを列挙する。 これは B<hosts> を"
5176 "使うのと全く同じである。 I<key> 引き数が一つ以上指定された場合は、 それぞれ"
5177 "の I<key> についてアドレスファミリー B<AF_UNSPEC> で B<getaddrinfo>(3) を呼び"
5178 "出し、 返された各々のソケットアドレス構造体を列挙する。"
5181 #: build/C/man1/getent.1:71
5184 msgstr "B<ahostsv4>"
5187 #: build/C/man1/getent.1:77
5188 msgid "Same as B<ahosts>, but use the address family B<AF_INET>."
5190 "B<ahosts> を同じだが、 アドレスファミリーとして B<AF_INET> を使用する。"
5193 #: build/C/man1/getent.1:77
5196 msgstr "B<ahostsv6>"
5199 #: build/C/man1/getent.1:88
5201 "Same as B<ahosts>, but use the address family B<AF_INET6>. The call to "
5202 "B<getaddrinfo>(3) in this case includes the B<AI_V4MAPPED> flag."
5204 "B<ahosts> を同じだが、 アドレスファミリーとして B<AF_INET6> を使用する。 この"
5205 "場合の B<getaddrinfo>(3) の呼び出しでは B<AI_V4MAPPED> も指定される。"
5208 #: build/C/man1/getent.1:88 build/C/man5/nsswitch.conf.5:44
5214 #: build/C/man1/getent.1:105
5216 "When no I<key> is provided, use B<setaliasent>(3), B<getaliasent>(3), and "
5217 "B<endaliasent>(3) to enumerate the aliases database. When one or more "
5218 "I<key> arguments are provided, pass each I<key> in succession to "
5219 "B<getaliasbyname>(3) and display the result."
5221 "I<key> が指定されなかった場合、 B<setaliasent>(3), B<getaliasent>(3), "
5222 "B<endaliasent>(3) を使用して aliases データベースを列挙する。 I<key> 引き数が"
5223 "一つ以上指定された場合は、 それぞれの I<key> についてB<getaliasbyname>(3) を"
5227 #: build/C/man1/getent.1:105 build/C/man5/nsswitch.conf.5:49
5233 #: build/C/man1/getent.1:121
5235 "When one or more I<key> arguments are provided, pass each I<key> in "
5236 "succession to B<ether_aton>(3) and B<ether_hostton>(3) until a result is "
5237 "obtained, and display the result. Enumeration is not supported on "
5238 "B<ethers>, so a I<key> must be provided."
5240 "I<key> 引き数が一つ以上指定された場合、 結果が得られるまで、 それぞれの "
5241 "I<key> について B<ether_aton>(3) と B<ether_hostton>(3) を順に呼び出し、 結果"
5242 "を表示する。 B<ethers> では列挙はサポートされていない。 したがって、 I<key> "
5246 #: build/C/man1/getent.1:121 build/C/man5/nsswitch.conf.5:52
5252 #: build/C/man1/getent.1:142
5254 "When no I<key> is provided, use B<setgrent>(3), B<getgrent>(3), and "
5255 "B<endgrent>(3) to enumerate the group database. When one or more I<key> "
5256 "arguments are provided, pass each numeric I<key> to B<getgrgid>(3) and each "
5257 "nonnumeric I<key> to B<getgrnam>(3) and display the result."
5259 "I<key> が指定されなかった場合、 B<setgrent>(3), B<getgrent>(3), B<endgrent>"
5260 "(3) を使用して group データベースを列挙する。 I<key> 引き数が一つ以上指定され"
5261 "た場合は、 それぞれの I<key> について、 数値であれば B<getgrgid>(3) を、 数値"
5262 "以外であれば B<getgrnam>(3) を呼び出し、 結果を表示する。"
5265 #: build/C/man1/getent.1:142
5271 #: build/C/man1/getent.1:159
5273 "When no I<key> is provided, use B<setsgent>(3), B<getsgent>(3), and "
5274 "B<endsgent>(3) to enumerate the gshadow database. When one or more I<key> "
5275 "arguments are provided, pass each I<key> in succession to B<getsgnam>(3) "
5276 "and display the result."
5278 "I<key> が指定されなかった場合、 B<setsgent>(3), B<getsgent>(3), B<endsgent>"
5279 "(3) を使用して gshadow データベースを列挙する。 I<key> 引き数が一つ以上指定さ"
5280 "れた場合は、 それぞれの I<key> について B<getsgnam>(3) を呼び出し、 結果を表"
5284 #: build/C/man1/getent.1:159 build/C/man5/nsswitch.conf.5:57
5290 #: build/C/man1/getent.1:182
5292 "When no I<key> is provided, use B<sethostent>(3), B<gethostent>(3), and "
5293 "B<endhostent>(3) to enumerate the hosts database. When one or more I<key> "
5294 "arguments are provided, pass each I<key> to B<gethostbyaddr>(3) or "
5295 "B<gethostbyname2>(3), depending on whether a call to B<inet_pton>(3) "
5296 "indicates that the I<key> is an IPv6 or IPv4 address or not, and display the "
5299 "I<key> が指定されなかった場合、 B<sethostent>(3), B<gethostent>(3), "
5300 "B<endhostent>(3) を使用して hosts データベースを列挙する。 I<key> 引き数が一"
5301 "つ以上指定された場合は、 それぞれの I<key> について B<gethostbyaddr>(3) か "
5302 "B<gethostbyname2>(3) を呼び出し、 結果を表示する。 B<gethostbyaddr>(3) か "
5303 "B<gethostbyname2>(3) のどちらを呼び出すかは、B<inet_pton>(3) の呼び出しで、 "
5304 "I<key> が IPv6 や IPv4 アドレスか、 そうでないか、 判定され、その結果によって"
5308 #: build/C/man1/getent.1:182 build/C/man5/nsswitch.conf.5:62
5310 msgid "B<initgroups>"
5311 msgstr "B<initgroups>"
5314 #: build/C/man1/getent.1:196
5316 "When one or more I<key> arguments are provided, pass each I<key> in "
5317 "succession to B<getgrouplist>(3) and display the result. Enumeration is "
5318 "not supported on B<initgroups>, so a I<key> must be provided."
5320 "I<key> 引き数が一つ以上指定された場合、 結果が得られるまで、 それぞれの "
5321 "I<key> について B<getgrouplist>(3) を呼び出し、 結果を表示する。 "
5322 "B<initgroups> では列挙はサポートされていない。 したがって、 I<key> は指定しな"
5326 #: build/C/man1/getent.1:196 build/C/man5/nsswitch.conf.5:67
5329 msgstr "B<netgroup>"
5332 #: build/C/man1/getent.1:222
5334 "When one I<key> is provided, pass the I<key> to B<setnetgrent>(3) and, "
5335 "using B<getnetgrent>(3) display the resulting string triple (I<hostname>, "
5336 "I<username>, I<domainname>). Alternatively, three I<keys> may be provided, "
5337 "which are interpreted as the I<hostname>, I<username> and I<domainname> to "
5338 "match to a netgroup name via B<innetgr>(3). Enumeration is not supported on "
5339 "B<netgroup>, so either one or three I<keys> must be provided."
5341 "1 個の I<key> を指定すると、 その I<key> を B<setnetgrent>(3) に渡し、 "
5342 "B<getnetgrent>(3) を使って結果の 3 つ組の文字列 (I<hostname>, I<username>, "
5343 "I<domainname>) を表示する。 代わりに、 3 個の I<key> を指定することもでき"
5344 "る。 3 個の I<key> は I<hostname>, I<username>, I<domainname> と解釈され、 "
5345 "B<innetgr>(3) を使って対応する netgroup があるか照合される。 B<netgroup> では"
5346 "列挙はサポートされていない。 したがって、 1 個か 3 個のいずれかの I<key> を指"
5350 #: build/C/man1/getent.1:222 build/C/man5/nsswitch.conf.5:71
5353 msgstr "B<networks>"
5356 #: build/C/man1/getent.1:243
5358 "When no I<key> is provided, use B<setnetent>(3), B<getnetent>(3), and "
5359 "B<endnetent>(3) to enumerate the networks database. When one or more "
5360 "I<key> arguments are provided, pass each numeric I<key> to B<getnetbyaddr>"
5361 "(3) and each nonnumeric I<key> to B<getnetbyname>(3) and display the "
5364 "I<key> が指定されなかった場合、 B<setnetent>(3), B<getnetent>(3), "
5365 "B<endnetent>(3) を使用して networks データベースを列挙する。 I<key> 引き数が"
5366 "一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5367 "B<getnetbyaddr>(3) を、 数値以外であれば B<getnetbyname>(3) を呼び出し、 結果"
5371 #: build/C/man1/getent.1:243 build/C/man5/nsswitch.conf.5:76
5377 #: build/C/man1/getent.1:264
5379 "When no I<key> is provided, use B<setpwent>(3), B<getpwent>(3), and "
5380 "B<endpwent>(3) to enumerate the passwd database. When one or more I<key> "
5381 "arguments are provided, pass each numeric I<key> to B<getpwuid>(3) and each "
5382 "nonnumeric I<key> to B<getpwnam>(3) and display the result."
5384 "I<key> が指定されなかった場合、 B<setpwent>(3), B<getpwent>(3), B<endpwent>"
5385 "(3) を使用して passwd データベースを列挙する。 I<key> 引き数が一つ以上指定さ"
5386 "れた場合は、 それぞれの I<key> について、 数値であれば B<getpwgid>(3) を、 数"
5387 "値以外であれば B<getpwnam>(3) を呼び出し、 結果を表示する。"
5390 #: build/C/man1/getent.1:264 build/C/man5/nsswitch.conf.5:81
5392 msgid "B<protocols>"
5393 msgstr "B<protocols>"
5396 #: build/C/man1/getent.1:285
5398 "When no I<key> is provided, use B<setprotoent>(3), B<getprotoent>(3), and "
5399 "B<endprotoent>(3) to enumerate the protocols database. When one or more "
5400 "I<key> arguments are provided, pass each numeric I<key> to "
5401 "B<getprotobynumber>(3) and each nonnumeric I<key> to B<getprotobyname>(3) "
5402 "and display the result."
5404 "I<key> が指定されなかった場合、 B<setprotoent>(3), B<getprotoent>(3), "
5405 "B<endprotoent>(3) を使用して protocols データベースを列挙する。 I<key> 引き数"
5406 "が一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5407 "B<getprotobynumber>(3) を、 数値以外であれば B<getprotobyname>(3) を呼び出"
5411 #: build/C/man1/getent.1:285 build/C/man5/nsswitch.conf.5:89
5417 #: build/C/man1/getent.1:306
5419 "When no I<key> is provided, use B<setrpcent>(3), B<getrpcent>(3), and "
5420 "B<endrpcent>(3) to enumerate the rpc database. When one or more I<key> "
5421 "arguments are provided, pass each numeric I<key> to B<getrpcbynumber>(3) "
5422 "and each nonnumeric I<key> to B<getrpcbyname>(3) and display the result."
5424 "I<key> が指定されなかった場合、 B<setrpcent>(3), B<getrpcent>(3), "
5425 "B<endrpcent>(3) を使用して rpc データベースを列挙する。 I<key> 引き数が一つ以"
5426 "上指定された場合は、 それぞれの I<key> について、 数値であれば "
5427 "B<getrpcbynumber>(3) を、 数値以外であれば B<getrpcbyname>(3) を呼び出し、 結"
5431 #: build/C/man1/getent.1:306 build/C/man5/nsswitch.conf.5:94
5434 msgstr "B<services>"
5437 #: build/C/man1/getent.1:327
5439 "When no I<key> is provided, use B<setservent>(3), B<getservent>(3), and "
5440 "B<endservent>(3) to enumerate the services database. When one or more "
5441 "I<key> arguments are provided, pass each numeric I<key> to B<getservbynumber>"
5442 "(3) and each nonnumeric I<key> to B<getservbyname>(3) and display the "
5445 "I<key> が指定されなかった場合、 B<setservent>(3), B<getservent>(3), "
5446 "B<endservent>(3) を使用して services データベースを列挙する。 I<key> 引き数が"
5447 "一つ以上指定された場合は、 それぞれの I<key> について、 数値であれば "
5448 "B<getservbynumber>(3) を、 数値以外であれば B<getservbyname>(3) を呼び出し、 "
5452 #: build/C/man1/getent.1:327 build/C/man5/nsswitch.conf.5:99
5458 #: build/C/man1/getent.1:344
5460 "When no I<key> is provided, use B<setspent>(3), B<getspent>(3), and "
5461 "B<endspent>(3) to enumerate the shadow database. When one or more I<key> "
5462 "arguments are provided, pass each I<key> in succession to B<getspnam>(3) "
5463 "and display the result."
5465 "I<key> が指定されなかった場合、 B<setspent>(3), B<getspent>(3), B<endspent>"
5466 "(3) を使用して shadow データベースを列挙する。 I<key> 引き数が一つ以上指定さ"
5467 "れた場合は、 それぞれの I<key> について B<getspnam>(3) を呼び出し、 結果を表"
5471 #: build/C/man1/getent.1:345
5477 #: build/C/man1/getent.1:348
5478 msgid "One of the following exit values can be returned by B<getent>:"
5479 msgstr "B<getent> は以下のいずれかの終了ステータスを返す。"
5482 #: build/C/man1/getent.1:349
5488 #: build/C/man1/getent.1:352
5489 msgid "Command completed successfully."
5490 msgstr "コマンドが正常に完了した。"
5493 #: build/C/man1/getent.1:352
5499 #: build/C/man1/getent.1:357
5500 msgid "Missing arguments, or I<database> unknown."
5501 msgstr "引き数が不足しているか、 知らない I<database> が指定された。"
5504 #: build/C/man1/getent.1:357
5510 #: build/C/man1/getent.1:363
5511 msgid "One or more supplied I<key> could not be found in the I<database>."
5512 msgstr "指定された I<key> が I<database> で見つからなかった。"
5515 #: build/C/man1/getent.1:363
5521 #: build/C/man1/getent.1:367
5522 msgid "Enumeration not supported on this I<database>."
5523 msgstr "この I<database> では列挙はサポートされていない。"
5526 #: build/C/man1/getent.1:370
5527 msgid "B<nsswitch.conf>(5)"
5528 msgstr "B<nsswitch.conf>(5)"
5531 #: build/C/man3/gethostbyname.3:38
5533 msgid "GETHOSTBYNAME"
5534 msgstr "GETHOSTBYNAME"
5537 #: build/C/man3/gethostbyname.3:38
5543 #: build/C/man3/gethostbyname.3:46
5545 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5546 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5547 "gethostbyname_r, gethostent_r - get network host entry"
5549 "gethostbyname, gethostbyaddr, sethostent, gethostent, endhostent, h_errno, "
5550 "herror, hstrerror, gethostbyaddr_r, gethostbyname2, gethostbyname2_r, "
5551 "gethostbyname_r, gethostent_r - ネットワーク上のホストのエントリを取得する"
5554 #: build/C/man3/gethostbyname.3:50
5557 "B<#include E<lt>netdb.hE<gt>>\n"
5558 "B<extern int h_errno;>\n"
5560 "B<#include E<lt>netdb.hE<gt>>\n"
5561 "B<extern int h_errno;>\n"
5564 #: build/C/man3/gethostbyname.3:52
5566 msgid "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5567 msgstr "B<struct hostent *gethostbyname(const char *>I<name>B<);>\n"
5570 #: build/C/man3/gethostbyname.3:56
5573 "B<#include E<lt>sys/socket.hE<gt>> /* for AF_INET */\n"
5574 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5575 "B< socklen_t >I<len>B<, int >I<type>B<);>\n"
5577 "B<#include E<lt>sys/socket.hE<gt>> /* AF_INET を使う場合 */\n"
5578 "B<struct hostent *gethostbyaddr(const void *>I<addr>B<,>\n"
5579 "B< socklen_t >I<len>B<, int >I<type>B<);>\n"
5582 #: build/C/man3/gethostbyname.3:58
5584 msgid "B<void sethostent(int >I<stayopen>B<);>\n"
5585 msgstr "B<void sethostent(int >I<stayopen>B<);>\n"
5588 #: build/C/man3/gethostbyname.3:60
5590 msgid "B<void endhostent(void);>\n"
5591 msgstr "B<void endhostent(void);>\n"
5594 #: build/C/man3/gethostbyname.3:62
5596 msgid "B<void herror(const char *>I<s>B<);>\n"
5597 msgstr "B<void herror(const char *>I<s>B<);>\n"
5600 #: build/C/man3/gethostbyname.3:64
5602 msgid "B<const char *hstrerror(int >I<err>B<);>\n"
5603 msgstr "B<const char *hstrerror(int >I<err>B<);>\n"
5606 #: build/C/man3/gethostbyname.3:66
5608 msgid "/* System V/POSIX extension */\n"
5609 msgstr "/* System V/POSIX 拡張 */\n"
5612 #: build/C/man3/gethostbyname.3:68
5614 msgid "B<struct hostent *gethostent(void);>\n"
5615 msgstr "B<struct hostent *gethostent(void);>\n"
5618 #: build/C/man3/gethostbyname.3:72
5620 msgid "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5621 msgstr "B<struct hostent *gethostbyname2(const char *>I<name>B<, int >I<af>B<);>\n"
5624 #: build/C/man3/gethostbyname.3:76
5627 "B<int gethostent_r(>\n"
5628 "B< struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5629 "B< struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5631 "B<int gethostent_r(>\n"
5632 "B< struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5633 "B< struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5636 #: build/C/man3/gethostbyname.3:80
5639 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5640 "B< struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5641 "B< struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5643 "B<int gethostbyaddr_r(const void *>I<addr>B<, socklen_t >I<len>B<, int >I<type>B<,>\n"
5644 "B< struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5645 "B< struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5648 #: build/C/man3/gethostbyname.3:84
5651 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5652 "B< struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5653 "B< struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5655 "B<int gethostbyname_r(const char *>I<name>B<,>\n"
5656 "B< struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5657 "B< struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5660 #: build/C/man3/gethostbyname.3:88
5663 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5664 "B< struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5665 "B< struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5667 "B<int gethostbyname2_r(const char *>I<name>B<, int >I<af,>\n"
5668 "B< struct hostent *>I<ret>B<, char *>I<buf>B<, size_t >I<buflen>B<,>\n"
5669 "B< struct hostent **>I<result>B<, int *>I<h_errnop>B<);>\n"
5672 #: build/C/man3/gethostbyname.3:102
5674 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5675 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5677 "B<gethostbyname2>(), B<gethostent_r>(), B<gethostbyaddr_r>(), "
5678 "B<gethostbyname_r>(), B<gethostbyname2_r>():"
5681 #: build/C/man3/gethostbyname.3:104 build/C/man3/gethostbyname.3:112
5682 #: build/C/man3/getnetent_r.3:60 build/C/man3/getprotoent_r.3:57
5683 #: build/C/man3/getservent_r.3:57 build/C/man3/inet_net_pton.3:59
5684 msgid "_BSD_SOURCE || _SVID_SOURCE"
5685 msgstr "_BSD_SOURCE || _SVID_SOURCE"
5688 #: build/C/man3/gethostbyname.3:108
5689 msgid "B<herror>(), B<hstrerror>():"
5690 msgstr "B<herror>(), B<hstrerror>():"
5693 #: build/C/man3/gethostbyname.3:109
5695 msgid "Since glibc 2.8:"
5696 msgstr "glibc 2.8 以降:"
5699 #: build/C/man3/gethostbyname.3:112
5701 msgid "Before glibc 2.8:"
5702 msgstr "glibc 2.8 より前:"
5705 #: build/C/man3/gethostbyname.3:115 build/C/man3/gethostbyname.3:126
5710 #: build/C/man3/gethostbyname.3:118
5712 msgstr "B<h_errno>:"
5715 #: build/C/man3/gethostbyname.3:119
5717 msgid "Since glibc 2.12:"
5718 msgstr "glibc 2.12 以降:"
5721 #: build/C/man3/gethostbyname.3:123
5724 "_BSD_SOURCE || _SVID_SOURCE ||\n"
5725 " (_POSIX_C_SOURCE E<lt> 200809L && _XOPEN_SOURCE E<lt> 700)\n"
5727 "_BSD_SOURCE || _SVID_SOURCE ||\n"
5728 " (_POSIX_C_SOURCE E<lt> 200809L && _XOPEN_SOURCE E<lt> 700)\n"
5731 #: build/C/man3/gethostbyname.3:123
5733 msgid "Before glibc 2.12:"
5734 msgstr "glibc 2.12 より前:"
5737 #: build/C/man3/gethostbyname.3:143
5739 "The B<gethostbyname*>(), B<gethostbyaddr*>(), B<herror>(), and B<hstrerror>"
5740 "() functions are obsolete. Applications should use B<getaddrinfo>(3), "
5741 "B<getnameinfo>(3), and B<gai_strerror>(3) instead."
5743 "関数 B<gethostbyname*>(), B<gethostbyaddr*>(), B<herror>(), B<hstrerror> は過"
5744 "去のものである。 アプリケーションは、代わりに B<getaddrinfo>(3), "
5745 "B<getnameinfo>(3), B<gai_strerror>(3) を使用すること。"
5748 #: build/C/man3/gethostbyname.3:184
5750 "The B<gethostbyname>() function returns a structure of type I<hostent> for "
5751 "the given host I<name>. Here I<name> is either a hostname, or an IPv4 "
5752 "address in standard dot notation (as for B<inet_addr>(3)), or an IPv6 "
5753 "address in colon (and possibly dot) notation. (See RFC\\ 1884 for the "
5754 "description of IPv6 addresses.) If I<name> is an IPv4 or IPv6 address, no "
5755 "lookup is performed and B<gethostbyname>() simply copies I<name> into the "
5756 "I<h_name> field and its I<struct in_addr> equivalent into the I<h_addr_list"
5757 "[0]> field of the returned I<hostent> structure. If I<name> doesn't end in "
5758 "a dot and the environment variable B<HOSTALIASES> is set, the alias file "
5759 "pointed to by B<HOSTALIASES> will first be searched for I<name> (see "
5760 "B<hostname>(7) for the file format). The current domain and its parents "
5761 "are searched unless I<name> ends in a dot."
5763 "B<gethostbyname>() 関数は与えられたホスト名 I<name> に対応する構造体 "
5764 "I<hostent> を返す。 I<name> にはホスト名、ドット区切りの IPv4 アドレス "
5765 "(B<inet_addr>(3) 参照)、コロン区切りの IPv6 アドレス (おそらくドット区切りで"
5766 "も大丈夫) のいずれかを指定する (IPv6 アドレスの記述方法については RFC\\ "
5767 "1884 を参考にしてほしい)。 I<name> が IPv4 か IPv6 のアドレスだった場合、 名"
5768 "前解決 (lookup) は行われない。その場合には、 B<gethostbyname>() は I<name> "
5769 "をそのまま I<hostent> 構造体の I<h_name> フィールドにコピーし、 さらに "
5770 "I<name> を I<struct in_addr> 形式で表したデータを I<hostent> 構造体の "
5771 "I<h_addr_list[0]> フィールドに入れて、その I<hostent> 構造体を返す。 I<name> "
5772 "がドットで終了していて、かつ環境変数 B<HOSTALIASES> が設定されている場合、ま"
5773 "ず B<HOSTALIASES> で指定されているエイリアスファイルから I<name> のエントリが"
5774 "検索される (ファイルのフォーマットについては B<hostname>(7) を参照のこと)。 "
5775 "I<name> がドットで終了していなければ、現在のドメインとその親ドメインが検索さ"
5779 #: build/C/man3/gethostbyname.3:200
5781 "The B<gethostbyaddr>() function returns a structure of type I<hostent> for "
5782 "the given host address I<addr> of length I<len> and address type I<type>. "
5783 "Valid address types are B<AF_INET> and B<AF_INET6>. The host address "
5784 "argument is a pointer to a struct of a type depending on the address type, "
5785 "for example a I<struct in_addr *> (probably obtained via a call to "
5786 "B<inet_addr>(3)) for address type B<AF_INET>."
5788 "B<gethostbyaddr>() 関数は与えられたホストアドレス I<addr> (長さ I<len>、 タ"
5789 "イプ I<type>) に対応する構造体 I<hostent> を返す。 用いることのできるタイプ"
5790 "は B<AF_INET> と B<AF_INET6> である。 ホストアドレス引き数はアドレスタイプに"
5791 "依存した 構造体へのポインタである。 例えば、アドレスタイプ B<AF_INET> に対し"
5792 "ては (B<inet_addr>(3) の呼び出しで得られる) I<struct in_addr *> である。"
5795 #: build/C/man3/gethostbyname.3:207
5797 "The B<sethostent>() function specifies, if I<stayopen> is true (1), that a "
5798 "connected TCP socket should be used for the name server queries and that the "
5799 "connection should remain open during successive queries. Otherwise, name "
5800 "server queries will use UDP datagrams."
5802 "B<sethostent>() 関数は、ネームサーバへの接続形態を指定する。 I<stayopen> が"
5803 "真 (1) ならば、ネームサーバへの問い合わせには、 接続された TCP ソケットを用"
5804 "い、連続した問い合わせの間に接続を維持する。 偽ならばネームサーバへの問い合わ"
5805 "せに UDP データグラムを用いる。"
5808 #: build/C/man3/gethostbyname.3:212
5810 "The B<endhostent>() function ends the use of a TCP connection for name "
5813 "B<endhostent>() 関数はネームサーバへの問い合わせに用いた TCP 接続の利用を終"
5817 #: build/C/man3/gethostbyname.3:217
5819 "The (obsolete) B<herror>() function prints the error message associated "
5820 "with the current value of I<h_errno> on I<stderr>."
5822 "(廃止予定の) B<herror>() 関数は現在の I<h_errno> に対応するエラーメッセージ"
5823 "を標準エラー I<stderr> に出力する。"
5826 #: build/C/man3/gethostbyname.3:222
5828 "The (obsolete) B<hstrerror>() function takes an error number (typically "
5829 "I<h_errno>) and returns the corresponding message string."
5831 "(廃止予定の) B<hstrerror>() 関数はエラー番号 (通常は I<h_errno>) を引き数に"
5832 "取り、 対応するエラーメッセージ文字列を返す。"
5835 #. .BR resolv+ (8)).
5837 #: build/C/man3/gethostbyname.3:239
5839 "The domain name queries carried out by B<gethostbyname>() and "
5840 "B<gethostbyaddr>() use a combination of any or all of the name server "
5841 "B<named>(8), a broken out line from I</etc/hosts>, and the Network "
5842 "Information Service (NIS or YP), depending upon the contents of the I<order> "
5843 "line in I</etc/host.conf>. The default action is to query B<named>(8), "
5844 "followed by I</etc/hosts>."
5846 "B<gethostbyname>() と B<gethostbyaddr>() によって実行されるドメイン名の問い"
5847 "合わせでは、ネームサーバ B<named>(8)、 I</etc/hosts> のデータ行、および "
5848 "Network Information Service (NIS または YP) が組み合わせて使用される。何が使"
5849 "用されるかは、 I</etc/host.conf> の I<order> 行の内容により決まる。 デフォル"
5850 "トでは、まず B<named>(8) に問い合わせを行い、次いで I</etc/hosts> を参照す"
5854 #: build/C/man3/gethostbyname.3:241
5855 msgid "The I<hostent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
5856 msgstr "I<hostent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている:"
5859 #: build/C/man3/gethostbyname.3:253
5862 "struct hostent {\n"
5863 " char *h_name; /* official name of host */\n"
5864 " char **h_aliases; /* alias list */\n"
5865 " int h_addrtype; /* host address type */\n"
5866 " int h_length; /* length of address */\n"
5867 " char **h_addr_list; /* list of addresses */\n"
5869 "#define h_addr h_addr_list[0] /* for backward compatibility */\n"
5871 "struct hostent {\n"
5872 " char *h_name; /* official name of host */\n"
5873 " char **h_aliases; /* alias list */\n"
5874 " int h_addrtype; /* host address type */\n"
5875 " int h_length; /* length of address */\n"
5876 " char **h_addr_list; /* list of addresses */\n"
5878 "#define h_addr h_addr_list[0] /* 過去との互換性のため */\n"
5881 #: build/C/man3/gethostbyname.3:257
5882 msgid "The members of the I<hostent> structure are:"
5883 msgstr "I<hostent> 構造体のメンバは以下の通り。"
5886 #: build/C/man3/gethostbyname.3:257 build/C/man3/getipnodebyname.3:210
5892 #: build/C/man3/gethostbyname.3:260
5893 msgid "The official name of the host."
5894 msgstr "ホストの正式名 (official name)。"
5897 #: build/C/man3/gethostbyname.3:260 build/C/man3/getipnodebyname.3:213
5899 msgid "I<h_aliases>"
5900 msgstr "I<h_aliases>"
5903 #: build/C/man3/gethostbyname.3:263
5905 "An array of alternative names for the host, terminated by a null pointer."
5906 msgstr "ホストの別名の配列。配列は NULL ポインタで終端される。"
5909 #: build/C/man3/gethostbyname.3:263 build/C/man3/getipnodebyname.3:217
5911 msgid "I<h_addrtype>"
5912 msgstr "I<h_addrtype>"
5915 #: build/C/man3/gethostbyname.3:270
5916 msgid "The type of address; always B<AF_INET> or B<AF_INET6> at present."
5917 msgstr "アドレスのタイプ。現在はすべて B<AF_INET> または B<AF_INET6> である。"
5920 #: build/C/man3/gethostbyname.3:270 build/C/man3/getipnodebyname.3:239
5923 msgstr "I<h_length>"
5926 #: build/C/man3/gethostbyname.3:273
5927 msgid "The length of the address in bytes."
5928 msgstr "バイト単位で表したアドレスの長さ。"
5931 #: build/C/man3/gethostbyname.3:273 build/C/man3/getipnodebyname.3:253
5933 msgid "I<h_addr_list>"
5934 msgstr "I<h_addr_list>"
5937 #: build/C/man3/gethostbyname.3:277
5939 "An array of pointers to network addresses for the host (in network byte "
5940 "order), terminated by a null pointer."
5942 "ホストのネットワークアドレスへのポインタの配列。 配列は NULL ポインタで終端さ"
5943 "れる。 ネットワークアドレスはネットワークバイトオーダ形式である。"
5946 #: build/C/man3/gethostbyname.3:277
5952 #: build/C/man3/gethostbyname.3:280
5953 msgid "The first address in I<h_addr_list> for backward compatibility."
5955 "I<h_addr_list> の最初のアドレス。過去との互換性を保つためのものである。"
5958 #: build/C/man3/gethostbyname.3:292
5960 "The B<gethostbyname>() and B<gethostbyaddr>() functions return the "
5961 "I<hostent> structure or a null pointer if an error occurs. On error, the "
5962 "I<h_errno> variable holds an error number. When non-NULL, the return value "
5963 "may point at static data, see the notes below."
5965 "B<gethostbyname>() および B<gethostbyaddr>() 関数は I<hostent> 構造体を返"
5966 "す。エラーが起こったら NULL ポインタを返す。エラーの際には I<h_errno> 変数が"
5967 "エラーの番号を保持する。 返り値が NULL でない場合、静的データをポインタで指し"
5968 "ていることもある。 以下の「注意」を参照すること。"
5971 #: build/C/man3/gethostbyname.3:294
5972 msgid "The variable I<h_errno> can have the following values:"
5973 msgstr "I<h_errno> 変数は以下の値を取りうる。"
5976 #: build/C/man3/gethostbyname.3:294 build/C/man3/getipnodebyname.3:190
5978 msgid "B<HOST_NOT_FOUND>"
5979 msgstr "B<HOST_NOT_FOUND>"
5982 #: build/C/man3/gethostbyname.3:297
5983 msgid "The specified host is unknown."
5984 msgstr "指定したホストが見つからない。"
5987 #: build/C/man3/gethostbyname.3:297
5989 msgid "B<NO_ADDRESS> or B<NO_DATA>"
5990 msgstr "B<NO_ADDRESS または NO_DATA>"
5993 #: build/C/man3/gethostbyname.3:300
5994 msgid "The requested name is valid but does not have an IP address."
5995 msgstr "指定した名前は有効だが IP アドレスを持っていない。"
5998 #: build/C/man3/gethostbyname.3:300 build/C/man3/getipnodebyname.3:199
6000 msgid "B<NO_RECOVERY>"
6001 msgstr "B<NO_RECOVERY>"
6004 #: build/C/man3/gethostbyname.3:303
6005 msgid "A nonrecoverable name server error occurred."
6006 msgstr "ネームサーバの復旧不能なエラーが起こった。"
6009 #: build/C/man3/gethostbyname.3:303 build/C/man3/getipnodebyname.3:202
6011 msgid "B<TRY_AGAIN>"
6012 msgstr "B<TRY_AGAIN>"
6015 #: build/C/man3/gethostbyname.3:307
6017 "A temporary error occurred on an authoritative name server. Try again later."
6019 "authoritative なネームサーバで一時的なエラーが起こった。 時間をおいてもう一度"
6023 #: build/C/man3/gethostbyname.3:308 build/C/man5/host.conf.5:181
6025 msgid "I</etc/host.conf>"
6026 msgstr "I</etc/host.conf>"
6029 #: build/C/man3/gethostbyname.3:311
6030 msgid "resolver configuration file"
6031 msgstr "名前解決の設定ファイル"
6034 #: build/C/man3/gethostbyname.3:311 build/C/man5/host.conf.5:187
6035 #: build/C/man5/hosts.5:88
6037 msgid "I</etc/hosts>"
6038 msgstr "I</etc/hosts>"
6041 #: build/C/man3/gethostbyname.3:314
6042 msgid "host database file"
6043 msgstr "ホストのデータベースファイル"
6046 #: build/C/man3/gethostbyname.3:314 build/C/man5/nsswitch.conf.5:306
6047 #: build/C/man3/setnetgrent.3:92
6049 msgid "I</etc/nsswitch.conf>"
6050 msgstr "I</etc/nsswitch.conf>"
6053 #: build/C/man3/gethostbyname.3:317
6054 msgid "name service switch configuration"
6055 msgstr "ネームサービス切替設定"
6058 #: build/C/man3/gethostbyname.3:341
6060 "POSIX.1-2001 specifies B<gethostbyname>(), B<gethostbyaddr>(), B<sethostent>"
6061 "(), B<endhostent>(), B<gethostent>(), and I<h_errno>; B<gethostbyname>(), "
6062 "B<gethostbyaddr>(), and I<h_errno> are marked obsolescent in that standard. "
6063 "POSIX.1-2008 removes the specifications of B<gethostbyname>(), "
6064 "B<gethostbyaddr>(), and I<h_errno>, recommending the use of B<getaddrinfo>"
6065 "(3) and B<getnameinfo>(3) instead."
6067 "POSIX.1-2001 では、 B<gethostbyname>(), B<gethostbyaddr>(), B<sethostent>(), "
6068 "B<endhostent>(), B<gethostent>(), I<h_errno> が規定されており、 "
6069 "B<gethostbyaddr>() と B<gethostbyname>() は廃止予定であるとされている。 "
6070 "POSIX.1-2008 では B<gethostbyname>(), B<gethostbyaddr>(), I<h_errno> の仕様が"
6071 "削除されている。 代わりに、 B<getaddrinfo>(3) と B<getnameinfo>(3) の使用が"
6075 #: build/C/man3/gethostbyname.3:351
6077 "The functions B<gethostbyname>() and B<gethostbyaddr>() may return "
6078 "pointers to static data, which may be overwritten by later calls. Copying "
6079 "the I<struct hostent> does not suffice, since it contains pointers; a deep "
6082 "B<gethostbyname>() および B<gethostbyaddr>() 関数は静的データへのポインタを"
6083 "返す。 このポインタは、その後の呼び出しで上書きされるかもしれない。 "
6084 "I<hostent> 構造体はポインタを含んでいるので、構造体のコピーだけでは不十分であ"
6088 #: build/C/man3/gethostbyname.3:375
6090 "In the original BSD implementation the I<len> argument of B<gethostbyname>"
6091 "() was an I<int>. The SUSv2 standard is buggy and declares the I<len> "
6092 "argument of B<gethostbyaddr>() to be of type I<size_t>. (That is wrong, "
6093 "because it has to be I<int>, and I<size_t> is not. POSIX.1-2001 makes it "
6094 "I<socklen_t>, which is OK.) See also B<accept>(2)."
6096 "オリジナルの BSD の実装では、 B<gethostbyname>() の I<len> 引き数は I<int> "
6097 "であった。 SUSv2 標準はバグが多く、 B<gethostbyaddr>() の I<len> パラメータ"
6098 "を I<size_t> 型として宣言している。 (これは誤りで、 I<size_t> 型ではなく "
6099 "I<int> 型でなければならない。 POSIX.1-2001 ではこれを I<socklen_t> としている"
6100 "が、これは OK。) B<accept>(2) も参照。"
6103 #: build/C/man3/gethostbyname.3:381
6105 "The BSD prototype for B<gethostbyaddr>() uses I<const char\\ *> for the "
6108 "B<gethostbyaddr>() の BSD のプロトタイプは、最初の引き数として I<const char"
6112 #: build/C/man3/gethostbyname.3:381
6114 msgid "System V/POSIX extension"
6115 msgstr "System V/POSIX 拡張"
6117 #. e.g., Linux, FreeBSD, UnixWare, HP-UX
6118 #. e.g., FreeBSD, AIX
6120 #: build/C/man3/gethostbyname.3:398
6122 "POSIX requires the B<gethostent>() call, that should return the next entry "
6123 "in the host data base. When using DNS/BIND this does not make much sense, "
6124 "but it may be reasonable if the host data base is a file that can be read "
6125 "line by line. On many systems a routine of this name reads from the file I</"
6126 "etc/hosts>. It may be available only when the library was built without DNS "
6127 "support. The glibc version will ignore ipv6 entries. This function is not "
6128 "reentrant, and glibc adds a reentrant version B<gethostent_r>()."
6130 "POSIX では、 B<gethostent>() が必須とされている。 この関数はホストデータベー"
6131 "スの次のエントリを返す。 DNS/BIND を使う場合はあまり意味を持たないが、 ホスト"
6132 "データベースが 1 行ずつ読み込まれるファイルである場合は意味がある。 多くのシ"
6133 "ステムでは、この名前のルーチンはファイル I</etc/hosts> を読み込む。 DNS サ"
6134 "ポートなしでライブラリがビルドされた場合にのみ利用可能である。 glibc 版は "
6135 "ipv6 エントリを無視する。 この関数はリエントラント (reentrant) ではなく、 "
6136 "glibc にはリエントラント版の B<gethostent_r>() が追加された。"
6139 #: build/C/man3/gethostbyname.3:398
6141 msgid "GNU extensions"
6145 #: build/C/man3/gethostbyname.3:404
6147 "Glibc2 also has a B<gethostbyname2>() that works like B<gethostbyname>(), "
6148 "but permits to specify the address family to which the address must belong."
6150 "glibc2 には B<gethostbyname2>() もあり、 B<gethostbyname>() と同じように動"
6151 "作するが、 こちらはアドレスが属するアドレスファミリーを指定することができる。"
6154 #: build/C/man3/gethostbyname.3:438
6156 "Glibc2 also has reentrant versions B<gethostent_r>(), B<gethostbyaddr_r>(), "
6157 "B<gethostbyname_r>() and B<gethostbyname2_r>(). The caller supplies a "
6158 "I<hostent> structure I<ret> which will be filled in on success, and a "
6159 "temporary work buffer I<buf> of size I<buflen>. After the call, I<result> "
6160 "will point to the result on success. In case of an error or if no entry is "
6161 "found I<result> will be NULL. The functions return 0 on success and a "
6162 "nonzero error number on failure. In addition to the errors returned by the "
6163 "nonreentrant versions of these functions, if I<buf> is too small, the "
6164 "functions will return B<ERANGE>, and the call should be retried with a "
6165 "larger buffer. The global variable I<h_errno> is not modified, but the "
6166 "address of a variable in which to store error numbers is passed in "
6169 "glibc2 にはリエントラントな B<gethostent_r>(), B<gethostbyaddr_r>(), "
6170 "B<gethostbyname_r>() と B<gethostbyname2_r>() もある。 呼び出し側は、成功時"
6171 "に結果が格納される I<hostent> 構造体 I<ret> と、大きさ I<buflen> の一時的な作"
6172 "業バッファ I<buf> を提供する。 コール終了後、成功した場合 I<result> は結果を"
6173 "指している。 エラーの場合、またはエントリが見つからなかった場合、 I<result> "
6174 "は NULL になる。 これらの関数は、成功した場合 0 を返し、失敗の場合は 0 以外の"
6175 "エラー番号を返す。 これらの関数のリエントラントでないバージョンが返すエラーに"
6176 "加えて、 これらの関数は、 I<buf> が小さすぎた場合に B<ERANGE> を返す。この場"
6177 "合はもっと大きなバッファを用意して 関数呼び出しを再度行うべきである。 大域変"
6178 "数 I<h_errno> は変更されないが、エラー番号を格納する変数のアドレスが "
6179 "I<h_errnop> に渡される。"
6181 #. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=482973
6183 #: build/C/man3/gethostbyname.3:443
6185 "B<gethostbyname>() does not recognize components of a dotted IPv4 address "
6186 "string that are expressed in hexadecimal."
6188 "B<gethostbyname>() は、16進数表現のドット区切りの IPv4 アドレス文字列の要素"
6191 #. .BR getipnodebyaddr (3),
6192 #. .BR getipnodebyname (3),
6195 #: build/C/man3/gethostbyname.3:457
6197 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
6198 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
6199 "B<hostname>(7), B<named>(8)"
6201 "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet>(3), B<inet_ntop>(3), "
6202 "B<inet_pton>(3), B<resolver>(3), B<hosts>(5), B<nsswitch.conf>(5), "
6203 "B<hostname>(7), B<named>(8)"
6206 #: build/C/man3/getipnodebyname.3:26
6208 msgid "GETIPNODEBYNAME"
6209 msgstr "GETIPNODEBYNAME"
6212 #: build/C/man3/getipnodebyname.3:26
6218 #: build/C/man3/getipnodebyname.3:30
6220 "getipnodebyname, getipnodebyaddr, freehostent - get network hostnames and "
6223 "getipnodebyname, getipnodebyaddr, freehostent - ネットワークホストの名前とア"
6227 #: build/C/man3/getipnodebyname.3:38
6230 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
6231 "B< int >I<flags>B<, int *>I<error_num>B<);>\n"
6233 "B<struct hostent *getipnodebyname(const char *>I<name>B<, int >I<af>B<,>\n"
6234 "B< int >I<flags>B<, int *>I<error_num>B<);>\n"
6237 #: build/C/man3/getipnodebyname.3:41
6240 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
6241 "B< int >I<af>B<, int *>I<error_num>B<);>\n"
6243 "B<struct hostent *getipnodebyaddr(const void *>I<addr>B<, size_t >I<len>B<,>\n"
6244 "B< int >I<af>B<, int *>I<error_num>B<);>\n"
6247 #: build/C/man3/getipnodebyname.3:43
6249 msgid "B<void freehostent(struct hostent *>I<ip>B<);>\n"
6250 msgstr "B<void freehostent(struct hostent *>I<ip>B<);>\n"
6253 #: build/C/man3/getipnodebyname.3:51
6255 "These functions are deprecated (and unavailable in glibc). Use "
6256 "B<getaddrinfo>(3) and B<getnameinfo>(3) instead."
6258 "これらの関数は非推奨である (glibc では利用できない)。 代わりに B<getaddrinfo>"
6259 "(3) と B<getnameinfo>(3) を使うこと。"
6262 #: build/C/man3/getipnodebyname.3:59
6264 "The B<getipnodebyname>() and B<getipnodebyaddr>() functions return the "
6265 "names and addresses of a network host. These functions return a pointer to "
6266 "the following structure:"
6268 "B<getipnodebyname>() と B<getipnodebyaddr>() は、ネットワークホストの名前と"
6269 "アドレスを返す。 これらの関数は、以下の構造体へのポインタを返す。"
6272 #: build/C/man3/getipnodebyname.3:69
6275 "struct hostent {\n"
6277 " char **h_aliases;\n"
6278 " int h_addrtype;\n"
6280 " char **h_addr_list;\n"
6283 "struct hostent {\n"
6285 " char **h_aliases;\n"
6286 " int h_addrtype;\n"
6288 " char **h_addr_list;\n"
6292 #: build/C/man3/getipnodebyname.3:82
6294 "These functions replace the B<gethostbyname>(3) and B<gethostbyaddr>(3) "
6295 "functions, which could access only the IPv4 network address family. The "
6296 "B<getipnodebyname>() and B<getipnodebyaddr>() functions can access "
6297 "multiple network address families."
6299 "これらの関数は、 IPv4 ネットワークアドレスファミリにしかアクセスできない "
6300 "B<gethostbyname>(3) や B<gethostbyaddr>(3) を置き換えるものである。 "
6301 "B<getipnodebyname>() 関数と B<getipnodebyaddr>() 関数は複数のネットワークア"
6302 "ドレスファミリーにアクセス可能になっている。"
6305 #: build/C/man3/getipnodebyname.3:93
6307 "Unlike the B<gethostby> functions, these functions return pointers to "
6308 "dynamically allocated memory. The B<freehostent>() function is used to "
6309 "release the dynamically allocated memory after the caller no longer needs "
6310 "the I<hostent> structure."
6312 "これらの関数は、 B<gethostby> の関数群と異なり、動的に割り当てられたメモリへ"
6313 "のポインタを返す。 呼び出し元がこれらの I<hostent> 構造体を必要としなくなった"
6314 "後は、 B<freehostent>() 関数を用いれば動的な割り当てメモリを解放できる。"
6317 #: build/C/man3/getipnodebyname.3:93
6319 msgid "getipnodebyname() arguments"
6320 msgstr "getipnodebyname() の引き数"
6323 #: build/C/man3/getipnodebyname.3:104
6325 "The B<getipnodebyname>() function looks up network addresses for the host "
6326 "specified by the I<name> argument. The I<af> argument specifies one of the "
6329 "B<getipnodebyname>() 関数は I<name> 引き数で指定されたホストのネットワークア"
6330 "ドレスを引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6333 #: build/C/man3/getipnodebyname.3:104 build/C/man3/getipnodebyname.3:166
6334 #: build/C/man3/inet_ntop.3:57 build/C/man3/inet_pton.3:53
6340 #: build/C/man3/getipnodebyname.3:110
6342 "The I<name> argument points to a dotted-quad IPv4 address or a name of an "
6343 "IPv4 network host."
6345 "I<name> 引き数は、ドットで 4 つに区切られた IPv4 アドレスか、 IPv4 ネットワー"
6349 #: build/C/man3/getipnodebyname.3:110 build/C/man3/getipnodebyname.3:176
6350 #: build/C/man3/inet_ntop.3:70 build/C/man3/inet_pton.3:67
6353 msgstr "B<AF_INET6>"
6356 #: build/C/man3/getipnodebyname.3:116
6358 "The I<name> argument points to a hexadecimal IPv6 address or a name of an "
6359 "IPv6 network host."
6361 "I<name> 引き数は、16 進の IPv6 アドレスか、 IPv6 ネットワークホストの名前への"
6365 #: build/C/man3/getipnodebyname.3:125
6367 "The I<flags> argument specifies additional options. More than one option "
6368 "can be specified by bitwise OR-ing them together. I<flags> should be set to "
6369 "0 if no options are desired."
6371 "I<flags> パラメータには追加のオプションを指定する。 複数のフラグを指定するに"
6372 "は、それらのビット単位の OR をとって指定すればよい。 オプションをひとつも指定"
6373 "したくないときには、 I<flags> に 0 を設定する必要がある。"
6376 #: build/C/man3/getipnodebyname.3:125
6378 msgid "B<AI_V4MAPPED>"
6379 msgstr "B<AI_V4MAPPED>"
6382 #: build/C/man3/getipnodebyname.3:132
6384 "This flag is used with B<AF_INET6> to request a query for IPv4 addresses "
6385 "instead of IPv6 addresses; the IPv4 addresses will be mapped to IPv6 "
6388 "このフラグは B<AF_INET6> と共に用いられ、IPv6 アドレスの代わりに IPv4 アドレ"
6389 "スを問い合わせる。 問い合わせる IPv4 アドレスは IPv6 アドレスにマップされる。"
6392 #: build/C/man3/getipnodebyname.3:132
6398 #: build/C/man3/getipnodebyname.3:138
6400 "This flag is used with B<AI_V4MAPPED> to request a query for both IPv4 and "
6401 "IPv6 addresses. Any IPv4 address found will be mapped to an IPv6 address."
6403 "このフラグは B<AI_V4MAPPED> と共に用いられ、IPv4 アドレスと IPv6 アドレスの両"
6404 "方を問い合わせる。 見つかった IPv4 アドレスは、すべて IPv6 アドレスにマップさ"
6408 #: build/C/man3/getipnodebyname.3:138
6410 msgid "B<AI_ADDRCONFIG>"
6411 msgstr "B<AI_ADDRCONFIG>"
6414 #: build/C/man3/getipnodebyname.3:150
6416 "This flag is used with B<AF_INET6> to further request that queries for IPv6 "
6417 "addresses should not be made unless the system has at least one IPv6 address "
6418 "assigned to a network interface, and that queries for IPv4 addresses should "
6419 "not be made unless the system has at least one IPv4 address assigned to a "
6420 "network interface. This flag may be used by itself or with the "
6421 "B<AI_V4MAPPED> flag."
6423 "このフラグは B<AF_INET6> と共に用いられ、 IPv6 が割り当てられたネットワークイ"
6424 "ンターフェースが システムにひとつもなければ IPv6 アドレスの問い合わせを行わ"
6425 "ず、 IPv4 が割り当てられたネットワークインターフェースが システムにひとつもな"
6426 "ければ IPv4 アドレスの問い合わせを行わないように要求する。 このフラグは単独で"
6427 "も、あるいは B<AI_V4MAPPED> フラグと共にでも用いることができる。"
6430 #: build/C/man3/getipnodebyname.3:150
6432 msgid "B<AI_DEFAULT>"
6433 msgstr "B<AI_DEFAULT>"
6436 #: build/C/man3/getipnodebyname.3:154
6437 msgid "This flag is equivalent to B<(AI_ADDRCONFIG | AI_V4MAPPED)>."
6438 msgstr "このフラグは B<(AI_ADDRCONFIG>|B<AI_V4MAPPED)> と等価である。"
6441 #: build/C/man3/getipnodebyname.3:154
6443 msgid "getipnodebyaddr() arguments"
6444 msgstr "getipnodebyaddr() の引き数"
6447 #: build/C/man3/getipnodebyname.3:166
6449 "The B<getipnodebyaddr>() function looks up the name of the host whose "
6450 "network address is specified by the I<addr> argument. The I<af> argument "
6451 "specifies one of the following values:"
6453 "B<getipnodebyaddr>() 関数は、ネットワークアドレスが I<addr> 引き数で指定され"
6454 "たホストの名前を引く。 I<af> 引き数には以下の値のいずれかを指定する。"
6457 #: build/C/man3/getipnodebyname.3:176
6459 "The I<addr> argument points to a I<struct in_addr> and I<len> must be set to "
6460 "I<sizeof(struct in_addr)>."
6462 "I<addr> 引き数は I<struct in_addr> へのポインターであり、 I<len> 引き数は "
6463 "I<sizeof(struct in_addr)> に設定しなければならない。"
6466 #: build/C/man3/getipnodebyname.3:186
6468 "The I<addr> argument points to a I<struct in6_addr> and I<len> must be set "
6469 "to I<sizeof(struct in6_addr)>."
6471 "I<addr> 引き数は I<struct in6_addr> へのポインターであり、 I<len> 引き数は "
6472 "I<sizeof(struct in6_addr)> に設定しなければならない。"
6475 #: build/C/man3/getipnodebyname.3:190
6477 "NULL is returned if an error occurred, and I<error_num> will contain an "
6478 "error code from the following list:"
6480 "エラーが起こると NULL が返され、 I<error_num> に以下にリストされたエラーコー"
6484 #: build/C/man3/getipnodebyname.3:193
6485 msgid "The hostname or network address was not found."
6486 msgstr "ホスト名またはネットワークアドレスが見つからなかった。"
6489 #: build/C/man3/getipnodebyname.3:193
6491 msgid "B<NO_ADDRESS>"
6492 msgstr "B<NO_ADDRESS>"
6495 #: build/C/man3/getipnodebyname.3:199
6497 "The domain name server recognized the network address or name, but no answer "
6498 "was returned. This can happen if the network host has only IPv4 addresses "
6499 "and a request has been made for IPv6 information only, or vice versa."
6501 "ドメインネームサーバーは そのネットワークアドレスまたはネットワーク名を認識し"
6502 "たが、 返事が返ってこなかった。原因としては、 例えば IPv4 アドレスしか持たな"
6503 "いネットワークホストに対して IPv6 の情報の問い合わせが行われた (およびその"
6507 #: build/C/man3/getipnodebyname.3:202
6508 msgid "The domain name server returned a permanent failure response."
6510 "ドメインネームサーバーから恒久的な失敗 (permanent failure) を意味する返事が"
6514 #: build/C/man3/getipnodebyname.3:206
6516 "The domain name server returned a temporary failure response. You might "
6517 "have better luck next time."
6519 "ネームサーバーから一時的な失敗 (temporary failure) を意味する返事が返され"
6520 "た。次にはもうちょっと運が必要かも。"
6523 #: build/C/man3/getipnodebyname.3:210
6525 "A successful query returns a pointer to a I<hostent> structure that contains "
6526 "the following fields:"
6528 "問い合わせに成功すると、 I<hostent> 構造体へのポインタが返される。 この構造体"
6532 #: build/C/man3/getipnodebyname.3:213
6533 msgid "This is the official name of this network host."
6534 msgstr "これはこのネットワークホストのオフィシャルな名前である。"
6537 #: build/C/man3/getipnodebyname.3:217
6539 "This is an array of pointers to unofficial aliases for the same host. The "
6540 "array is terminated by a null pointer."
6542 "これは、そのホストのオフィシャルでない別名へのポインターの配列である。 配列"
6543 "は NULL ポインターで終端する。"
6546 #: build/C/man3/getipnodebyname.3:239
6548 "This is a copy of the I<af> argument to B<getipnodebyname>() or "
6549 "B<getipnodebyaddr>(). I<h_addrtype> will always be B<AF_INET> if the I<af> "
6550 "argument was B<AF_INET>. I<h_addrtype> will always be B<AF_INET6> if the "
6551 "I<af> argument was B<AF_INET6>."
6553 "これは B<getipnodebyname>() または B<getipnodebyaddr>() に与えられた I<af> "
6554 "引き数のコピーである。 I<af> 引き数が B<AF_INET> なら I<h_addrtype> は常に "
6555 "B<AF_INET> になり、 I<af> 引き数が B<AF_INET6> なら I<h_addrtype> も常に "
6559 #: build/C/man3/getipnodebyname.3:253
6561 "This field will be set to I<sizeof(struct in_addr)> if I<h_addrtype> is "
6562 "B<AF_INET>, and to I<sizeof(struct in6_addr)> if I<h_addrtype> is "
6565 "このフィールドは、 I<h_addrtype> が B<AF_INET> なら I<sizeof(struct in_addr)"
6566 "> に、 I<h_addrtype> が B<AF_INET6> なら I<sizeof(struct in6_addr)> に設定さ"
6570 #: build/C/man3/getipnodebyname.3:258
6572 "This is an array of one or more pointers to network address structures for "
6573 "the network host. The array is terminated by a null pointer."
6575 "これはひとつ以上のポインターの配列で、 それぞれのポインターは、 そのネット"
6576 "ワークホストに対応するネットワークアドレス構造体を指す。 この配列は NULL ポイ"
6579 #. Not in POSIX.1-2001.
6581 #: build/C/man3/getipnodebyname.3:261
6583 msgstr "RFC\\ 2553."
6586 #: build/C/man3/getipnodebyname.3:266
6588 "These functions were present in glibc 2.1.91-95, but were removed again. "
6589 "Several UNIX-like systems support them, but all call them deprecated."
6591 "これらの関数は glibc 2.1.91-95 に存在したが、再び削除された。 いくつかの "
6592 "UNIX 風システムはこれらの関数に対応しているが、 これらの関数は全て推奨されな"
6596 #: build/C/man3/getipnodebyname.3:271
6597 msgid "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6598 msgstr "B<getaddrinfo>(3), B<getnameinfo>(3), B<inet_ntop>(3), B<inet_pton>(3)"
6601 #: build/C/man3/getnameinfo.3:10
6604 msgstr "GETNAMEINFO"
6607 #: build/C/man3/getnameinfo.3:10
6613 #: build/C/man3/getnameinfo.3:13
6615 "getnameinfo - address-to-name translation in protocol-independent manner"
6617 "getnameinfo - アドレスから名前への変換をプロトコルに依存しないかたちで行う"
6620 #: build/C/man3/getnameinfo.3:17
6623 "B<#include E<lt>sys/socket.hE<gt>>\n"
6624 "B<#include E<lt>netdb.hE<gt>>\n"
6626 "B<#include E<lt>sys/socket.hE<gt>>\n"
6627 "B<#include E<lt>netdb.hE<gt>>\n"
6630 #: build/C/man3/getnameinfo.3:21
6633 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6634 "B< char *>I<host>B<, size_t >I<hostlen>B<,>\n"
6635 "B< char *>I<serv>B<, size_t >I<servlen>B<, int >I<flags>B<);>\n"
6637 "B<int getnameinfo(const struct sockaddr *>I<sa>B<, socklen_t >I<salen>B<,>\n"
6638 "B< char *>I<host>B<, size_t >I<hostlen>B<,>\n"
6639 "B< char *>I<serv>B<, size_t >I<servlen>B<, int >I<flags>B<);>\n"
6642 #: build/C/man3/getnameinfo.3:31
6644 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6647 "B<getnameinfo>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
6651 #: build/C/man3/getnameinfo.3:47
6653 "The B<getnameinfo>() function is the inverse of B<getaddrinfo>(3): it "
6654 "converts a socket address to a corresponding host and service, in a protocol-"
6655 "independent manner. It combines the functionality of B<gethostbyaddr>(3) "
6656 "and B<getservbyport>(3), but unlike those functions, B<getnameinfo>() is "
6657 "reentrant and allows programs to eliminate IPv4-versus-IPv6 dependencies."
6659 "B<getnameinfo>() 関数は、 B<getaddrinfo>(3) の逆の動作を行う。つまり、プロ"
6660 "トコルに依存しないかたちで ソケットアドレスから対応するホスト名とサービスへの"
6661 "変換を行う。 この関数は B<gethostbyaddr>(3) と B<getservbyport>(3) の機能を"
6662 "一つにしたものだが、 これらの関数と違い、 B<getnameinfo>(3) はリエントラント"
6663 "であり、IPv4 と IPv6 の差分に依存しないかたちで プログラムを書くことができ"
6667 #: build/C/man3/getnameinfo.3:70
6669 "The I<sa> argument is a pointer to a generic socket address structure (of "
6670 "type I<sockaddr_in> or I<sockaddr_in6>) of size I<salen> that holds the "
6671 "input IP address and port number. The arguments I<host> and I<serv> are "
6672 "pointers to caller-allocated buffers (of size I<hostlen> and I<servlen> "
6673 "respectively) into which B<getnameinfo>() places null-terminated strings "
6674 "containing the host and service names respectively."
6676 "I<sa> 引き数は、 IP アドレスとポート番号の情報を保持している 汎用的なソケット"
6677 "アドレス構造体 (I<sockaddr_in> 型または I<sockaddr_in6> 型) へのポインタであ"
6678 "る。 I<salen> は I<sa> のサイズである。 I<host> と I<serv> 引き数は、(それぞ"
6679 "れサイズが I<hostlen> と I<servlen> の) 呼び出し側で確保されたバッファへのポ"
6680 "インタであり、 ホスト名とサービス名を含む NULL 終端された文字列が それぞれの"
6684 #: build/C/man3/getnameinfo.3:83
6686 "The caller can specify that no hostname (or no service name) is required by "
6687 "providing a NULL I<host> (or I<serv>) argument or a zero I<hostlen> (or "
6688 "I<servlen>) argument. However, at least one of hostname or service name "
6689 "must be requested."
6691 "ホスト名が不要であることをこの関数に伝えるには、 I<host> に NULL を指定する"
6692 "か、 I<hostlen> に 0 を指定する。同様に、サービス名が不要な場合は、 I<serv> "
6693 "に NULL を指定するか、 I<servlen> に 0 を指定する。 しかし、ホスト名とサービ"
6694 "ス名の両方を不要だと指定することはできない (いずれか一方は要求すること)。"
6697 #: build/C/man3/getnameinfo.3:89
6699 "The I<flags> argument modifies the behavior of B<getnameinfo>() as follows:"
6701 "I<flags> 引き数で B<getnameinfo>() の動作を変えることができる。指定できる値"
6705 #: build/C/man3/getnameinfo.3:89
6707 msgid "B<NI_NAMEREQD>"
6708 msgstr "B<NI_NAMEREQD>"
6711 #: build/C/man3/getnameinfo.3:92
6712 msgid "If set, then an error is returned if the hostname cannot be determined."
6713 msgstr "指定すると、ホスト名が決定できなかった場合にエラーを返す。"
6716 #: build/C/man3/getnameinfo.3:92
6719 msgstr "B<NI_DGRAM>"
6722 #: build/C/man3/getnameinfo.3:98
6724 "If set, then the service is datagram (UDP) based rather than stream (TCP) "
6725 "based. This is required for the few ports (512-514) that have different "
6726 "services for UDP and TCP."
6728 "指定すると、ストリームベース (TCP) でなくデータグラムベース (UDP) のサービス"
6729 "を対象にする。数は少ないが、 UDP と TCP で違うサービスを提供しているポート "
6730 "(512-514) に対して必要となる。"
6733 #: build/C/man3/getnameinfo.3:98
6735 msgid "B<NI_NOFQDN>"
6736 msgstr "B<NI_NOFQDN>"
6739 #: build/C/man3/getnameinfo.3:102
6741 "If set, return only the hostname part of the fully qualified domain name for "
6744 "指定すると、ローカルなホストには fully qualified domain name (FQDN) の ホスト"
6748 #: build/C/man3/getnameinfo.3:102
6750 msgid "B<NI_NUMERICHOST>"
6751 msgstr "B<NI_NUMERICHOST>"
6753 #. For example, by calling
6756 #. .BR gethostbyaddr ().
6757 #. POSIX.1-2003 has NI_NUMERICSCOPE, but glibc doesn't have it.
6759 #: build/C/man3/getnameinfo.3:112
6761 "If set, then the numeric form of the hostname is returned. (When not set, "
6762 "this will still happen in case the node's name cannot be determined.)"
6764 "指定すると、数値形式のホスト名が返される。 (指定しなくても、ノードの名前が決"
6765 "定できない場合は数値形式が返ることがある)。"
6768 #: build/C/man3/getnameinfo.3:112
6770 msgid "B<NI_NUMERICSERV>"
6771 msgstr "B<NI_NUMERICSERV>"
6774 #: build/C/man3/getnameinfo.3:117
6776 "If set, then the numeric form of the service address is returned. (When not "
6777 "set, this will still happen in case the service's name cannot be determined.)"
6779 "指定すると、数値形式のサービス名 (例えばポート番号) が返される (指定しなくて"
6780 "も、サービス名が決定できない場合は数値形式が返ることがある)。"
6783 #: build/C/man3/getnameinfo.3:117
6785 msgid "Extensions to getnameinfo() for Internationalized Domain Names"
6786 msgstr "国際化ドメイン名のための getnameinfo() の拡張"
6789 #: build/C/man3/getnameinfo.3:126
6791 "Starting with glibc 2.3.4, B<getnameinfo>() has been extended to "
6792 "selectively allow hostnames to be transparently converted to and from the "
6793 "Internationalized Domain Name (IDN) format (see RFC 3490, "
6794 "I<Internationalizing Domain Names in Applications (IDNA)>). Three new flags "
6797 "glibc 2.3.4 から、 B<getnameinfo>() に拡張が行われ、ホスト名と 国際化ドメイ"
6798 "ン名 (Internationalized Domain Name; IDN) 形式との間で 透過的な変換ができるよ"
6799 "うになっている (IDN 形式については RFC 3490 の I<Internationalizing Domain "
6800 "Names in Applications (IDNA)> を参照)。3つのフラグが新たに定義されている:"
6803 #: build/C/man3/getnameinfo.3:126
6809 #: build/C/man3/getnameinfo.3:132
6811 "If this flag is used, then the name found in the lookup process is converted "
6812 "from IDN format to the locale's encoding if necessary. ASCII-only names are "
6813 "not affected by the conversion, which makes this flag usable in existing "
6814 "programs and environments."
6816 "このフラグを指定すると、必要であれば、検索処理で見つかった名前は IDN 形式から"
6817 "ロケールに応じた符号化形式に変換される。 ASCII 文字だけの名前はこの変換では影"
6818 "響を受けない。このため、 既存のプログラムや環境でこのフラグを使うことができ"
6822 #: build/C/man3/getnameinfo.3:132
6824 msgid "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6825 msgstr "B<NI_IDN_ALLOW_UNASSIGNED>, B<NI_IDN_USE_STD3_ASCII_RULES>"
6827 #. FIXME glibc defines the following additional errors, some which
6828 #. can probably be returned by getnameinfo(); they need to
6831 #. #define EAI_INPROGRESS -100 /* Processing request in progress. */
6832 #. #define EAI_CANCELED -101 /* Request canceled. */
6833 #. #define EAI_NOTCANCELED -102 /* Request not canceled. */
6834 #. #define EAI_ALLDONE -103 /* All requests done. */
6835 #. #define EAI_INTR -104 /* Interrupted by a signal. */
6836 #. #define EAI_IDN_ENCODE -105 /* IDN encoding failed. */
6839 #: build/C/man3/getnameinfo.3:155
6841 "On success 0 is returned, and node and service names, if requested, are "
6842 "filled with null-terminated strings, possibly truncated to fit the specified "
6843 "buffer lengths. On error, one of the following nonzero error codes is "
6846 "成功すると 0 が返り、(要求されていれば) ノードとサービスの名前が NULL 終端さ"
6847 "れた文字列の形式でそれぞれの指定バッファに返される (バッファの長さにあうよう"
6848 "に縮められるかもしれない)。 エラーの場合は、以下の 0 以外のエラー・コードが返"
6852 #: build/C/man3/getnameinfo.3:159
6853 msgid "The name could not be resolved at this time. Try again later."
6854 msgstr "指定された名前が現時点では解決できなかった。 後で再試行してみること。"
6857 #: build/C/man3/getnameinfo.3:164
6858 msgid "The I<flags> argument has an invalid value."
6859 msgstr "I<flags> 引き数に不正な値が与えられた。"
6862 #: build/C/man3/getnameinfo.3:167
6863 msgid "A nonrecoverable error occurred."
6864 msgstr "回復できないエラーが発生した。"
6867 #: build/C/man3/getnameinfo.3:171
6869 "The address family was not recognized, or the address length was invalid for "
6870 "the specified family."
6872 "指定したアドレスファミリーが認識できなかった。 あるいはアドレスの長さが指定さ"
6873 "れたファミリーに合うものでなかった。"
6876 #: build/C/man3/getnameinfo.3:180
6878 "The name does not resolve for the supplied arguments. B<NI_NAMEREQD> is set "
6879 "and the host's name cannot be located, or neither hostname nor service name "
6882 "与えられたパラメータでは名前が解決できない。 B<NI_NAMEREQD> が設定されていた"
6883 "がホスト名が決定できなかったか、 ホスト名もサービス名も要求されなかった。"
6886 #: build/C/man3/getnameinfo.3:180
6888 msgid "B<EAI_OVERFLOW>"
6889 msgstr "B<EAI_OVERFLOW>"
6892 #: build/C/man3/getnameinfo.3:187
6893 msgid "The buffer pointed to by I<host> or I<serv> was too small."
6894 msgstr "I<host> または I<serv> が指しているバッファが小さすぎた。"
6897 #: build/C/man3/getnameinfo.3:192
6898 msgid "A system error occurred. The error code can be found in I<errno>."
6899 msgstr "システムエラーが起った。 エラーコードは I<errno> に設定される。"
6902 #: build/C/man3/getnameinfo.3:199
6907 #: build/C/man3/getnameinfo.3:201
6908 msgid "/etc/nsswitch.conf"
6909 msgstr "/etc/nsswitch.conf"
6912 #: build/C/man3/getnameinfo.3:203
6913 msgid "/etc/resolv.conf"
6914 msgstr "/etc/resolv.conf"
6917 #: build/C/man3/getnameinfo.3:206
6918 msgid "B<getnameinfo>() is provided in glibc since version 2.1."
6919 msgstr "B<getnameinfo>() は、glibc バージョン 2.1 以降で提供されている。"
6922 #: build/C/man3/getnameinfo.3:208
6923 msgid "RFC\\ 2553, POSIX.1-2001."
6924 msgstr "RFC\\ 2553, POSIX.1-2001."
6927 #: build/C/man3/getnameinfo.3:213
6929 "In order to assist the programmer in choosing reasonable sizes for the "
6930 "supplied buffers, I<E<lt>netdb.hE<gt>> defines the constants"
6932 "適切なバッファサイズを選択できるように、 I<E<lt>netdb.hE<gt>> に以下の定数が"
6936 #: build/C/man3/getnameinfo.3:218
6939 "#define NI_MAXHOST 1025\n"
6940 "#define NI_MAXSERV 32\n"
6942 "#define NI_MAXHOST 1025\n"
6943 "#define NI_MAXSERV 32\n"
6946 #: build/C/man3/getnameinfo.3:228
6948 "Since glibc 2.8, these definitions are exposed only if one of the feature "
6949 "test macros B<_BSD_SOURCE>, B<_SVID_SOURCE>, or B<_GNU_SOURCE> is defined."
6951 "glibc 2.8 以降では、機能検査マクロ B<_BSD_SOURCE>, B<_SVID_SOURCE>, "
6952 "B<_GNU_SOURCE> のいずれかが定義された場合にのみ、これらの定義が公開される。"
6955 #: build/C/man3/getnameinfo.3:236
6957 "The former is the constant B<MAXDNAME> in recent versions of BIND's "
6958 "I<E<lt>arpa/nameser.hE<gt>> header file. The latter is a guess based on the "
6959 "services listed in the current Assigned Numbers RFC."
6961 "前者は、最近のバージョンの BIND のヘッダファイル I<E<lt>arpa/nameser.hE<gt>> "
6962 "中の定数 B<MAXDNAME> と同じ値である。 後者は、割り当て済の数値について記した"
6963 "現在の RFC に 列挙されてサービスから推量した値である。"
6966 #: build/C/man3/getnameinfo.3:241
6968 "The following code tries to get the numeric hostname and service name, for a "
6969 "given socket address. Note that there is no hardcoded reference to a "
6970 "particular address family."
6972 "以下のコードは、指定されたソケットアドレスに対する ホストとサービスの数値表式"
6973 "を取得しようと試みる。 特定のアドレスファミリーに対する参照情報は 一切ハード"
6974 "コードされていないことに着目してほしい。"
6977 #: build/C/man3/getnameinfo.3:247
6980 "struct sockaddr *sa; /* input */\n"
6981 "socklen_t len; /* input */\n"
6982 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
6984 "struct sockaddr *sa; /* input */\n"
6985 "socklen_t len; /* input */\n"
6986 "char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];\n"
6989 #: build/C/man3/getnameinfo.3:251
6992 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
6993 " sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
6994 " printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
6996 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf), sbuf,\n"
6997 " sizeof(sbuf), NI_NUMERICHOST | NI_NUMERICSERV) == 0)\n"
6998 " printf(\"host=%s, serv=%s\\en\", hbuf, sbuf);\n"
7001 #: build/C/man3/getnameinfo.3:256
7003 "The following version checks if the socket address has a reverse address "
7006 "以下ではソケットアドレスに 逆向きのアドレスマッピングが存在するかをチェックし"
7010 #: build/C/man3/getnameinfo.3:262
7013 "struct sockaddr *sa; /* input */\n"
7014 "socklen_t len; /* input */\n"
7015 "char hbuf[NI_MAXHOST];\n"
7017 "struct sockaddr *sa; /* input */\n"
7018 "socklen_t len; /* input */\n"
7019 "char hbuf[NI_MAXHOST];\n"
7022 #: build/C/man3/getnameinfo.3:268
7025 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
7026 " NULL, 0, NI_NAMEREQD))\n"
7027 " printf(\"could not resolve hostname\");\n"
7029 " printf(\"host=%s\\en\", hbuf);\n"
7031 "if (getnameinfo(sa, len, hbuf, sizeof(hbuf),\n"
7032 " NULL, 0, NI_NAMEREQD))\n"
7033 " printf(\"could not resolve hostname\");\n"
7035 " printf(\"host=%s\\en\", hbuf);\n"
7038 #: build/C/man3/getnameinfo.3:275
7040 "An example program using B<getnameinfo>() can be found in B<getaddrinfo>(3)."
7042 "B<getnameinfo>() を使ったプログラム例が B<getaddrinfo>(3) に記載されてい"
7046 #: build/C/man3/getnameinfo.3:290
7048 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), B<socket>"
7049 "(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
7050 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
7051 "B<hostname>(7), B<named>(8)"
7053 "B<accept>(2), B<getpeername>(2), B<getsockname>(2), B<recvfrom>(2), B<socket>"
7054 "(2), B<getaddrinfo>(3), B<gethostbyaddr>(3), B<getservbyname>(3), "
7055 "B<getservbyport>(3), B<inet_ntop>(3), B<hosts>(5), B<services>(5), "
7056 "B<hostname>(7), B<named>(8)"
7059 #: build/C/man3/getnameinfo.3:294
7061 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
7062 "Extensions for IPv6>, RFC\\ 2553, March 1999."
7064 "R. Gilligan, S. Thomson, J. Bound and W. Stevens, I<Basic Socket Interface "
7065 "Extensions for IPv6>, RFC\\ 2553, March 1999."
7068 #: build/C/man3/getnameinfo.3:300
7070 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
7071 "Addresses>, internet draft, work in progress E<.UR ftp://ftp.ietf.org\\:/"
7072 "internet-drafts\\:/draft-ietf-ipngwg-scopedaddr-format-02.txt> E<.UE .>"
7074 "Tatsuya Jinmei and Atsushi Onoe, I<An Extension of Format for IPv6 Scoped "
7075 "Addresses>, internet draft, work in progress E<.UR ftp://ftp.ietf.org\\:/"
7076 "internet-drafts\\:/draft-ietf-ipngwg-scopedaddr-format-02.txt> E<.UE .>"
7079 #: build/C/man3/getnameinfo.3:305
7081 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
7082 "the freenix track: 2000 USENIX annual technical conference, June 2000"
7084 "Craig Metz, I<Protocol Independence Using the Sockets API>, Proceedings of "
7085 "the freenix track: 2000 USENIX annual technical conference, June 2000"
7088 #: build/C/man3/getnameinfo.3:308
7090 "E<.UR http://www.usenix.org\\:/publications\\:/library\\:/proceedings\\:/"
7091 "usenix2000\\:/freenix\\:/metzprotocol.html> E<.UE .>"
7093 "E<.UR http://www.usenix.org\\:/publications\\:/library\\:/proceedings\\:/"
7094 "usenix2000\\:/freenix\\:/metzprotocol.html> E<.UE .>"
7097 #: build/C/man3/getnetent.3:30
7103 #: build/C/man3/getnetent.3:30 build/C/man3/getprotoent.3:30
7104 #: build/C/man3/getservent.3:34
7110 #: build/C/man3/getnetent.3:34
7112 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - get network "
7115 "getnetent, getnetbyname, getnetbyaddr, setnetent, endnetent - ネットワークエ"
7119 #: build/C/man3/getnetent.3:37 build/C/man3/getnetent_r.3:33
7120 #: build/C/man3/getprotoent.3:37 build/C/man3/getprotoent_r.3:33
7121 #: build/C/man3/getservent.3:41 build/C/man3/getservent_r.3:33
7122 #: build/C/man3/setnetgrent.3:17
7124 msgid "B<#include E<lt>netdb.hE<gt>>\n"
7125 msgstr "B<#include E<lt>netdb.hE<gt>>\n"
7128 #: build/C/man3/getnetent.3:39
7130 msgid "B<struct netent *getnetent(void);>\n"
7131 msgstr "B<struct netent *getnetent(void);>\n"
7134 #: build/C/man3/getnetent.3:41
7136 msgid "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
7137 msgstr "B<struct netent *getnetbyname(const char *>I<name>B<);>\n"
7140 #: build/C/man3/getnetent.3:43
7142 msgid "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
7143 msgstr "B<struct netent *getnetbyaddr(uint32_t >I<net>B<, int >I<type>B<);>\n"
7146 #: build/C/man3/getnetent.3:45
7148 msgid "B<void setnetent(int >I<stayopen>B<);>\n"
7149 msgstr "B<void setnetent(int >I<stayopen>B<);>\n"
7152 #: build/C/man3/getnetent.3:47
7154 msgid "B<void endnetent(void);>\n"
7155 msgstr "B<void endnetent(void);>\n"
7158 #: build/C/man3/getnetent.3:57
7160 "The B<getnetent>() function reads the next entry from the networks database "
7161 "and returns a I<netent> structure containing the broken-out fields from the "
7162 "entry. A connection is opened to the database if necessary."
7164 "B<getnetent>() 関数はネットワークデータベースから次のエントリを読み込み、 そ"
7165 "のエントリを I<netent> 構造体の要素別のフィールドに格納し、 その構造体を返"
7166 "す。 必要であれば、データベースへの接続がオープンされる。"
7169 #: build/C/man3/getnetent.3:66
7171 "The B<getnetbyname>() function returns a I<netent> structure for the entry "
7172 "from the database that matches the network I<name>."
7174 "B<getnetbyname>() 関数は、ネットワーク名 I<name> にマッチするエントリを デー"
7175 "タベースから探し、そのエントリを収めた I<netent> 構造体を返す。"
7178 #: build/C/man3/getnetent.3:80
7180 "The B<getnetbyaddr>() function returns a I<netent> structure for the entry "
7181 "from the database that matches the network number I<net> of type I<type>. "
7182 "The I<net> argument must be in host byte order."
7184 "B<getnetbyaddr>() 関数は、I<type> 型のネットワーク番号 I<net> にマッチするエ"
7185 "ントリを データベースから探し、そのエントリを収めた I<netent> 構造体を返す。 "
7186 "I<net> 引き数はホスト・バイトオーダでなければならない。"
7189 #: build/C/man3/getnetent.3:92
7191 "The B<setnetent>() function opens a connection to the database, and sets "
7192 "the next entry to the first entry. If I<stayopen> is nonzero, then the "
7193 "connection to the database will not be closed between calls to one of the "
7194 "B<getnet*>() functions."
7196 "B<setnetent>() 関数はデータベースへの接続をオープンし、 次の読み込みエントリ"
7197 "を先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
7198 "B<getnet*>() 関数の呼び出し間でデータベースへの接続をクローズしない。"
7201 #: build/C/man3/getnetent.3:96
7202 msgid "The B<endnetent>() function closes the connection to the database."
7203 msgstr "B<endnetent>() 関数はデータベースへの接続をクローズする。"
7206 #: build/C/man3/getnetent.3:102
7207 msgid "The I<netent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
7208 msgstr "I<netent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
7211 #: build/C/man3/getnetent.3:111
7215 " char *n_name; /* official network name */\n"
7216 " char **n_aliases; /* alias list */\n"
7217 " int n_addrtype; /* net address type */\n"
7218 " uint32_t n_net; /* network number */\n"
7222 " char *n_name; /* official network name */\n"
7223 " char **n_aliases; /* alias list */\n"
7224 " int n_addrtype; /* net address type */\n"
7225 " uint32_t n_net; /* network number */\n"
7229 #: build/C/man3/getnetent.3:117
7230 msgid "The members of the I<netent> structure are:"
7231 msgstr "I<netent> 構造体のメンバは以下の通り。"
7234 #: build/C/man3/getnetent.3:117
7240 #: build/C/man3/getnetent.3:120
7241 msgid "The official name of the network."
7242 msgstr "ネットワークの正式名 (official name)。"
7245 #: build/C/man3/getnetent.3:120
7247 msgid "I<n_aliases>"
7248 msgstr "I<n_aliases>"
7251 #: build/C/man3/getnetent.3:123
7252 msgid "A NULL-terminated list of alternative names for the network."
7253 msgstr "ネットワークの別名からなるリスト。 リストは NULL で終端される。"
7256 #: build/C/man3/getnetent.3:123
7258 msgid "I<n_addrtype>"
7259 msgstr "I<n_addrtype>"
7262 #: build/C/man3/getnetent.3:127
7263 msgid "The type of the network number; always B<AF_INET>."
7264 msgstr "ネットワーク番号の形式。現在は B<AF_INET> のみ。"
7267 #: build/C/man3/getnetent.3:127
7273 #: build/C/man3/getnetent.3:130
7274 msgid "The network number in host byte order."
7275 msgstr "ホスト・バイトオーダ形式のネットワーク番号。"
7278 #: build/C/man3/getnetent.3:141
7280 "The B<getnetent>(), B<getnetbyname>() and B<getnetbyaddr>() functions "
7281 "return a pointer to a statically allocated I<netent> structure, or a null "
7282 "pointer if an error occurs or the end of the file is reached."
7284 "B<getnetent>(), B<getnetbyname>(), B<getnetbyaddr>() 関数は、静的に割り当て"
7285 "られた I<netent> 構造体へのポインタを返す。 エラーが起こったり、ファイルの末"
7286 "尾に達した場合は NULL ポインタを返す。"
7289 #: build/C/man3/getnetent.3:142 build/C/man5/networks.5:71
7291 msgid "I</etc/networks>"
7292 msgstr "I</etc/networks>"
7295 #: build/C/man3/getnetent.3:145
7296 msgid "networks database file"
7297 msgstr "ネットワークデータベースファイル"
7300 #: build/C/man3/getnetent.3:147 build/C/man3/getprotoent.3:142
7301 #: build/C/man3/getservent.3:159
7302 msgid "4.3BSD, POSIX.1-2001."
7303 msgstr "4.3BSD, POSIX.1-2001."
7306 #: build/C/man3/getnetent.3:154
7308 "In glibc versions before 2.2, the I<net> argument of B<getnetbyaddr>() was "
7311 "バージョン 2.2 より前の glibc では、 B<getnetbyaddr>() の引き数 I<net> は "
7316 #: build/C/man3/getnetent.3:159
7317 msgid "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7318 msgstr "B<getnetent_r>(3), B<getprotoent>(3), B<getservent>(3)"
7321 #: build/C/man3/getnetent.3:161
7326 #: build/C/man3/getnetent_r.3:26
7329 msgstr "GETNETENT_R"
7332 #: build/C/man3/getnetent_r.3:30
7334 "getnetent_r, getnetbyname_r, getnetbyaddr_r - get network entry (reentrant)"
7336 "getnetent_r, getnetbyname_r, getnetbyaddr_r - ネットワークエントリを\n"
7340 #: build/C/man3/getnetent_r.3:37
7343 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7344 "B< size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7345 "B< int *>I<h_errnop>B<);>\n"
7347 "B<int getnetent_r(struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7348 "B< size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7349 "B< int *>I<h_errnop>B<);>\n"
7352 #: build/C/man3/getnetent_r.3:42
7355 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7356 "B< struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7357 "B< size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7358 "B< int *>I<h_errnop>B<);>\n"
7360 "B<int getnetbyname_r(const char *>I<name>B<,>\n"
7361 "B< struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7362 "B< size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7363 "B< int *>I<h_errnop>B<);>\n"
7366 #: build/C/man3/getnetent_r.3:47
7369 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7370 "B< struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7371 "B< size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7372 "B< int *>I<h_errnop>B<);>\n"
7374 "B<int getnetbyaddr_r(uint32_t >I<net>B<, int >I<type>B<,>\n"
7375 "B< struct netent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7376 "B< size_t >I<buflen>B<, struct netent **>I<result>B<,>\n"
7377 "B< int *>I<h_errnop>B<);>\n"
7380 #: build/C/man3/getnetent_r.3:58
7381 msgid "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7382 msgstr "B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>():"
7385 #: build/C/man3/getnetent_r.3:79
7387 "The B<getnetent_r>(), B<getnetbyname_r>(), and B<getnetbyaddr_r>() "
7388 "functions are the reentrant equivalents of, respectively, B<getnetent>(3), "
7389 "B<getnetbyname>(3), and B<getnetbynumber>(3). They differ in the way that "
7390 "the I<netent> structure is returned, and in the function calling signature "
7391 "and return value. This manual page describes just the differences from the "
7392 "nonreentrant functions."
7394 "関数 B<getnetent_r>(), B<getnetbyname_r>(), B<getnetbyaddr_r>() は、\n"
7395 "それぞれ B<getnetent>(3), B<getnetbyname>(3), B<getnetbynumber>(3) の\n"
7397 "I<netent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
7398 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
7402 #: build/C/man3/getnetent_r.3:85
7404 "Instead of returning a pointer to a statically allocated I<netent> structure "
7405 "as the function result, these functions copy the structure into the location "
7406 "pointed to by I<result_buf>."
7408 "これらの関数は、関数の結果として静的に割り当てられた I<netent> 構造体\n"
7409 "へのポインタを返すのではなく、 I<netent> 構造体を I<result_buf> が\n"
7412 #. I can find no information on the required/recommended buffer size;
7413 #. the nonreentrant functions use a 1024 byte buffer -- mtk.
7415 #: build/C/man3/getnetent_r.3:102
7417 "The I<buf> array is used to store the string fields pointed to by the "
7418 "returned I<netent> structure. (The nonreentrant functions allocate these "
7419 "strings in static storage.) The size of this array is specified in "
7420 "I<buflen>. If I<buf> is too small, the call fails with the error B<ERANGE>, "
7421 "and the caller must try again with a larger buffer. (A buffer of length "
7422 "1024 bytes should be sufficient for most applications.)"
7424 "配列 I<buf> は、返される I<netent> 構造体が指す文字列フィールドを格納\n"
7425 "するのに使用される (リエントラントでない関数の場合は、\n"
7426 "これらの文字列は静的な領域に格納される)。\n"
7427 "この配列の大きさは I<buflen> で指定される。\n"
7428 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
7429 "呼び出し側ではもっと大きなバッファで再度呼び出す必要がある (ほとんどの\n"
7430 "アプリケーションでは、長さ 1024 バイトのバッファで十分なはずである)。"
7433 #: build/C/man3/getnetent_r.3:110
7435 "If the function call successfully obtains a network record, then I<*result> "
7436 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7438 "関数呼び出しでネットワークレコードの取得に成功すると、\n"
7439 "I<*result> は I<result_buf> を指すように設定される。\n"
7440 "それ以外の場合は I<*result> に NULL が設定される。"
7442 #. getnetent.3 doesn't document any use of h_errno, but nevertheless
7443 #. the nonreentrant functions no seem to set h_errno.
7445 #: build/C/man3/getnetent_r.3:118
7447 "The buffer pointed to by I<h_errnop> is used to return the value that would "
7448 "be stored in the global variable I<h_errno> by the nonreentrant versions of "
7451 "I<h_errnop> が指すバッファは、リエントラントでない関数では\n"
7452 "グローバル変数 I<h_errno> に格納されていた値を返すのに使用される。"
7455 #: build/C/man3/getnetent_r.3:121 build/C/man3/getprotoent_r.3:111
7457 "On success, these functions return 0. On error, they return one of the "
7458 "positive error numbers listed in ERRORS."
7460 "成功すると、これらの関数は 0 を返す。エラーの場合、「エラー」の節の\n"
7461 "リストにある正のエラー番号のいずれかを返す。"
7464 #: build/C/man3/getnetent_r.3:129
7466 "On error, record not found (B<getnetbyname_r>(), B<getnetbyaddr_r>()), or "
7467 "end of input (B<getnetent_r>()) I<result> is set to NULL."
7469 "エラーの場合、レコードが見つからなかった場合 (B<getnetbyname_r>(),\n"
7470 "B<getnetbyaddr_r>()) やこれ以上レコードがない場合 (B<getnetent_r>())、\n"
7471 "I<result> には NULL が設定される。"
7474 #: build/C/man3/getnetent_r.3:134
7475 msgid "(B<getnetent_r>()) No more records in database."
7476 msgstr "(B<getnetent_r>()) データベースにこれ以上レコードがない。"
7479 #: build/C/man3/getnetent_r.3:134 build/C/man3/getprotoent_r.3:124
7480 #: build/C/man3/getservent_r.3:123
7486 #: build/C/man3/getnetent_r.3:141 build/C/man3/getprotoent_r.3:131
7487 #: build/C/man3/getservent_r.3:130
7489 "I<buf> is too small. Try again with a larger buffer (and increased "
7492 "I<buf> が小さすぎる。もっと大きなバッファにして \n"
7493 "(または I<buflen> を増やして) 再度呼び出すこと。"
7496 #: build/C/man3/getnetent_r.3:145 build/C/man3/getprotoent_r.3:135
7497 #: build/C/man3/getservent_r.3:134
7499 "These functions are GNU extensions. Functions with similar names exist on "
7500 "some other systems, though typically with different calling signatures."
7502 "これらの関数は GNU による拡張である。\n"
7503 "他のシステムにも同様の名前の関数が存在する場合があるが、\n"
7507 #: build/C/man3/getnetent_r.3:148
7508 msgid "B<getnetent>(3), B<networks>(5)"
7509 msgstr "B<getnetent>(3), B<networks>(5)"
7512 #: build/C/man2/getpeername.2:42
7515 msgstr "GETPEERNAME"
7518 #: build/C/man2/getpeername.2:42 build/C/man5/nsswitch.conf.5:25
7524 #: build/C/man2/getpeername.2:45
7525 msgid "getpeername - get name of connected peer socket"
7526 msgstr "getpeername - 接続している相手ソケットの名前を取得する"
7529 #: build/C/man2/getpeername.2:50
7531 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7534 "B<int getpeername(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t "
7538 #: build/C/man2/getpeername.2:63
7540 "B<getpeername>() returns the address of the peer connected to the socket "
7541 "I<sockfd>, in the buffer pointed to by I<addr>. The I<addrlen> argument "
7542 "should be initialized to indicate the amount of space pointed to by "
7543 "I<addr>. On return it contains the actual size of the name returned (in "
7544 "bytes). The name is truncated if the buffer provided is too small."
7546 "B<getpeername>() は、ソケット(socket) I<sockfd> に接続している相手のアドレ"
7547 "スを、 I<addr> が指すバッファに格納して返す。 I<addrlen> 引き数は、 I<addr> "
7548 "が指している領域のサイズに初期化しておかなければならない。 関数が返る時に"
7549 "は、 I<addrlen> には実際に返された名前のサイズが (バイト単位で) 格納される。 "
7550 "提供されたバッファが小さすぎた場合には、名前は切り詰められる。"
7553 #: build/C/man2/getpeername.2:68
7555 "The returned address is truncated if the buffer provided is too small; in "
7556 "this case, I<addrlen> will return a value greater than was supplied to the "
7559 "渡されたバッファが小さ過ぎた場合は、返されるアドレスの末尾が切り詰められる。 "
7560 "この場合には、 I<addrlen> には、呼び出し時に指定された値よりも大きな値が格納"
7564 #: build/C/man2/getpeername.2:73 build/C/man2/shutdown.2:74
7566 "On success, zero is returned. On error, -1 is returned, and I<errno> is set "
7569 "成功した場合は 0 が返される。エラーの場合は -1 が返され、 I<errno> が適切に設"
7573 #: build/C/man2/getpeername.2:74 build/C/man2/shutdown.2:75
7579 #: build/C/man2/getpeername.2:79
7580 msgid "The argument I<sockfd> is not a valid descriptor."
7581 msgstr "引き数 I<sockfd> が有効なディスクリプタでない。"
7584 #: build/C/man2/getpeername.2:79 build/C/man7/packet.7:470
7585 #: build/C/man7/raw.7:149 build/C/man7/unix.7:336
7591 #: build/C/man2/getpeername.2:85
7593 "The I<addr> argument points to memory not in a valid part of the process "
7596 "I<addr> 引き数の指しているメモリが有効なプロセスのアドレス空間の 一部でない。"
7599 #: build/C/man2/getpeername.2:89
7600 msgid "I<addrlen> is invalid (e.g., is negative)."
7601 msgstr "I<addrlen> が不正である (例えば、負で場合など)。"
7604 #: build/C/man2/getpeername.2:89 build/C/man7/packet.7:482
7610 #: build/C/man2/getpeername.2:93
7612 "Insufficient resources were available in the system to perform the operation."
7613 msgstr "この操作を行なうのに十分な資源がシステムに存在しない。"
7616 #: build/C/man2/getpeername.2:96
7617 msgid "The socket is not connected."
7618 msgstr "ソケットが接続していない。"
7621 #: build/C/man2/getpeername.2:96 build/C/man2/shutdown.2:87
7624 msgstr "B<ENOTSOCK>"
7627 #: build/C/man2/getpeername.2:101
7628 msgid "The argument I<sockfd> is a file, not a socket."
7629 msgstr "引き数 I<sockfd> がソケットでなくてファイルである。"
7632 #: build/C/man2/getpeername.2:105
7634 "SVr4, 4.4BSD (the B<getpeername>() function call first appeared in 4.2BSD), "
7637 "SVr4, 4.4BSD (B<getpeername>() 関数は 4.2BSD で登場した), POSIX.1-2001."
7640 #: build/C/man2/getpeername.2:116
7642 "The third argument of B<getpeername>() is in reality an I<int\\ *> (and "
7643 "this is what 4.x BSD and libc4 and libc5 have). Some POSIX confusion "
7644 "resulted in the present I<socklen_t>, also used by glibc. See also B<accept>"
7647 "B<getpeername>() の三番目の引き数は実際には I<`int\\ *'> である (4.x BSD, "
7648 "libc4, libc5 では このようになっている)。 POSIX では紆余曲折を経て現在の "
7649 "I<socklen_t> になっており、 glibc でも I<socklen_t> を使っている。 B<accept>"
7653 #: build/C/man2/getpeername.2:143
7655 "For stream sockets, once a B<connect>(2) has been performed, either socket "
7656 "can call B<getpeername>() to obtain the address of the peer socket. On the "
7657 "other hand, datagram sockets are connectionless. Calling B<connect>(2) on "
7658 "a datagram socket merely sets the peer address for outgoing datagrams sent "
7659 "with B<write>(2) or B<recv>(2). The caller of B<connect>(2) can use "
7660 "B<getpeername>() to obtain the peer address that it earlier set for the "
7661 "socket. However, the peer socket is unaware of this information, and "
7662 "calling B<getpeername>() on the peer socket will return no useful "
7663 "information (unless a B<connect>(2) call was also executed on the peer). "
7664 "Note also that the receiver of a datagram can obtain the address of the "
7665 "sender when using B<recvfrom>(2)."
7667 "ストリームソケットでは、 いったん B<connect>(2) が実行されると、 どのソケット"
7668 "も B<getpeername>() を使って相手ソケットのアドレスを取得できる。 一方、データ"
7669 "グラムソケットはコネクションレスである (接続がない)。 データグラムソケットに"
7670 "対する B<connect>(2) の呼び出しは、 B<write>(2) や B<recv>(2) で送信される出"
7671 "力データグラムの相手アドレスを設定するだけである。\n"
7672 "B<connect>(2) の呼び出し元は、 B<getpeername>() を使って、それ以前にそのソ"
7673 "ケットに設定された相手アドレスを取得することができる。 しかし、相手ソケットは"
7674 "この情報を知らないので、 相手ソケットで B<getpeername>() を呼び出しても、 役"
7675 "に立つ情報は得られない (相手側でも B<connect>(2) が呼び出されている場合を除"
7676 "く)。 なお、データグラムの受信側では B<recvfrom>(2) を使って送信元アドレスを "
7677 "取得できることも覚えておいてほしい。"
7680 #: build/C/man2/getpeername.2:150
7682 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), B<unix>"
7685 "B<accept>(2), B<bind>(2), B<getsockname>(2), B<ip>(7), B<socket>(7), B<unix>"
7689 #: build/C/man3/getprotoent.3:30
7692 msgstr "GETPROTOENT"
7695 #: build/C/man3/getprotoent.3:34
7697 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - "
7698 "get protocol entry"
7700 "getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - プ"
7704 #: build/C/man3/getprotoent.3:39
7706 msgid "B<struct protoent *getprotoent(void);>\n"
7707 msgstr "B<struct protoent *getprotoent(void);>\n"
7710 #: build/C/man3/getprotoent.3:41
7712 msgid "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7713 msgstr "B<struct protoent *getprotobyname(const char *>I<name>B<);>\n"
7716 #: build/C/man3/getprotoent.3:43
7718 msgid "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7719 msgstr "B<struct protoent *getprotobynumber(int >I<proto>B<);>\n"
7722 #: build/C/man3/getprotoent.3:45
7724 msgid "B<void setprotoent(int >I<stayopen>B<);>\n"
7725 msgstr "B<void setprotoent(int >I<stayopen>B<);>\n"
7728 #: build/C/man3/getprotoent.3:47
7730 msgid "B<void endprotoent(void);>\n"
7731 msgstr "B<void endprotoent(void);>\n"
7734 #: build/C/man3/getprotoent.3:58
7736 "The B<getprotoent>() function reads the next entry from the protocols "
7737 "database (see B<protocols>(5)) and returns a I<protoent> structure "
7738 "containing the broken-out fields from the entry. A connection is opened to "
7739 "the database if necessary."
7741 "B<getprotoent>() 関数は、プロトコルのデータベース (B<protocols>(5) 参照) か"
7742 "ら次のエントリを読み込み、 そのエントリを I<protoent> 構造体の要素別のフィー"
7743 "ルドに格納し、 その構造体を返す。 必要であれば、データベースへの接続がオープ"
7747 #: build/C/man3/getprotoent.3:68
7749 "The B<getprotobyname>() function returns a I<protoent> structure for the "
7750 "entry from the database that matches the protocol name I<name>. A "
7751 "connection is opened to the database if necessary."
7753 "B<getprotobyname>() 関数は、プロトコル名 I<name> にマッチするエントリを デー"
7754 "タベースから探し、そのエントリを収めた I<protoent> 構造体を返す。 必要であれ"
7755 "ば、データベースへの接続がオープンされる。"
7758 #: build/C/man3/getprotoent.3:78
7760 "The B<getprotobynumber>() function returns a I<protoent> structure for the "
7761 "entry from the database that matches the protocol number I<number>. A "
7762 "connection is opened to the database if necessary."
7764 "B<getprotobynumber>() 関数は、プロトコル番号 I<number> にマッチするエントリ"
7765 "を データベースから探し、そのエントリを収めた I<protoent> 構造体を返す。 必要"
7766 "であれば、データベースへの接続がオープンされる。"
7769 #: build/C/man3/getprotoent.3:90
7771 "The B<setprotoent>() function opens a connection to the database, and sets "
7772 "the next entry to the first entry. If I<stayopen> is nonzero, then the "
7773 "connection to the database will not be closed between calls to one of the "
7774 "B<getproto*>() functions."
7776 "B<setprotoent>() 関数はデータベースへの接続をオープンし、 次の読み込みエント"
7777 "リを先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
7778 "B<getproto*>() 関数の呼び出し間でデータベースへの接続をクローズしない。"
7781 #: build/C/man3/getprotoent.3:94
7782 msgid "The B<endprotoent>() function closes the connection to the database."
7783 msgstr "B<endprotoent>() 関数はデータベースへの接続をクローズする。"
7786 #: build/C/man3/getprotoent.3:100
7788 "The I<protoent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
7790 "I<protoent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
7793 #: build/C/man3/getprotoent.3:108
7796 "struct protoent {\n"
7797 " char *p_name; /* official protocol name */\n"
7798 " char **p_aliases; /* alias list */\n"
7799 " int p_proto; /* protocol number */\n"
7802 "struct protoent {\n"
7803 " char *p_name; /* official protocol name */\n"
7804 " char **p_aliases; /* alias list */\n"
7805 " int p_proto; /* protocol number */\n"
7809 #: build/C/man3/getprotoent.3:114
7810 msgid "The members of the I<protoent> structure are:"
7811 msgstr "I<protoent> 構造体のメンバーは以下の通り。"
7814 #: build/C/man3/getprotoent.3:114
7820 #: build/C/man3/getprotoent.3:117
7821 msgid "The official name of the protocol."
7822 msgstr "プロトコルの正式名 (official name)。"
7825 #: build/C/man3/getprotoent.3:117
7827 msgid "I<p_aliases>"
7828 msgstr "I<p_aliases>"
7831 #: build/C/man3/getprotoent.3:120
7832 msgid "A NULL-terminated list of alternative names for the protocol."
7833 msgstr "プロトコルの別名のリスト。 リストは NULL で終端される。"
7836 #: build/C/man3/getprotoent.3:120
7842 #: build/C/man3/getprotoent.3:123
7843 msgid "The protocol number."
7847 #: build/C/man3/getprotoent.3:134
7849 "The B<getprotoent>(), B<getprotobyname>() and B<getprotobynumber>() "
7850 "functions return a pointer to a statically allocated I<protoent> structure, "
7851 "or a null pointer if an error occurs or the end of the file is reached."
7853 "B<getprotoent>(), B<getprotobyname>(), B<getprotobynumber>() 関数は、静的に"
7854 "割り当てられた I<protoent> 構造体へのポインタを返す。 エラーが起こったり、"
7855 "ファイルの最後に達した場合は NULL を返す。"
7858 #: build/C/man3/getprotoent.3:136 build/C/man5/protocols.5:78
7860 msgid "I</etc/protocols>"
7861 msgstr "I</etc/protocols>"
7864 #: build/C/man3/getprotoent.3:139
7865 msgid "protocol database file"
7866 msgstr "プロトコルのデータベースファイル"
7869 #: build/C/man3/getprotoent.3:147
7870 msgid "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
7872 "B<getnetent>(3), B<getprotoent_r>(3), B<getservent>(3), B<protocols>(5)"
7875 #: build/C/man3/getprotoent_r.3:26
7877 msgid "GETPROTOENT_R"
7878 msgstr "GETPROTOENT_R"
7881 #: build/C/man3/getprotoent_r.3:30
7883 "getprotoent_r, getprotobyname_r, getprotobynumber_r - get protocol entry "
7886 "getprotoent_r, getprotobyname_r, getprotobynumber_r - プロトコル\n"
7887 "エントリを取得する (リエントラント版)"
7890 #: build/C/man3/getprotoent_r.3:36
7893 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7894 "B< size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7896 "B<int getprotoent_r(struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7897 "B< size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7900 #: build/C/man3/getprotoent_r.3:40
7903 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
7904 "B< struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7905 "B< size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7907 "B<int getprotobyname_r(const char *>I<name>B<,>\n"
7908 "B< struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7909 "B< size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7912 #: build/C/man3/getprotoent_r.3:44
7915 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
7916 "B< struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7917 "B< size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7919 "B<int getprotobynumber_r(int >I<proto>B<,>\n"
7920 "B< struct protoent *>I<result_buf>B<, char *>I<buf>B<,>\n"
7921 "B< size_t >I<buflen>B<, struct protoent **>I<result>B<);>\n"
7924 #: build/C/man3/getprotoent_r.3:55
7925 msgid "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
7926 msgstr "B<getprotoent_r>(), B<getprotobyname_r>(), B<getprotobynumber_r>():"
7929 #: build/C/man3/getprotoent_r.3:76
7931 "The B<getprotoent_r>(), B<getprotobyname_r>(), and B<getprotobynumber_r>() "
7932 "functions are the reentrant equivalents of, respectively, B<getprotoent>(3), "
7933 "B<getprotobyname>(3), and B<getprotobynumber>(3). They differ in the way "
7934 "that the I<protoent> structure is returned, and in the function calling "
7935 "signature and return value. This manual page describes just the differences "
7936 "from the nonreentrant functions."
7938 "関数 B<getprotoent_r>(), B<getprotobyname_r>(),\n"
7939 "B<getprotobynumber_r>() は、それぞれ B<getprotoent>(3),\n"
7940 "B<getprotobyname>(3), B<getprotobynumber>(3) のリエントラント版である。\n"
7941 "I<protoent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
7942 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
7946 #: build/C/man3/getprotoent_r.3:82
7948 "Instead of returning a pointer to a statically allocated I<protoent> "
7949 "structure as the function result, these functions copy the structure into "
7950 "the location pointed to by I<result_buf>."
7952 "これらの関数は、関数の結果として静的に割り当てられた I<protoent> 構造体\n"
7953 "へのポインタを返すのではなく、 I<protoent> 構造体を I<result_buf> が\n"
7956 #. I can find no information on the required/recommended buffer size;
7957 #. the nonreentrant functions use a 1024 byte buffer.
7958 #. The 1024 byte value is also what the Solaris man page suggests. -- mtk
7960 #: build/C/man3/getprotoent_r.3:100
7962 "The I<buf> array is used to store the string fields pointed to by the "
7963 "returned I<protoent> structure. (The nonreentrant functions allocate these "
7964 "strings in static storage.) The size of this array is specified in "
7965 "I<buflen>. If I<buf> is too small, the call fails with the error B<ERANGE>, "
7966 "and the caller must try again with a larger buffer. (A buffer of length "
7967 "1024 bytes should be sufficient for most applications.)"
7969 "配列 I<buf> は、返される I<protoent> 構造体が指す文字列フィールドを\n"
7970 "格納するのに使用される (リエントラントでない関数の場合は、\n"
7971 "これらの文字列は静的な領域に格納される)。\n"
7972 "この配列の大きさは I<buflen> で指定される。\n"
7973 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
7974 "呼び出し側ではもっと大きなバッファで再度呼び出す必要がある (ほとんどの\n"
7975 "アプリケーションでは、長さ 1024 バイトのバッファで十分なはずである)。"
7978 #: build/C/man3/getprotoent_r.3:108
7980 "If the function call successfully obtains a protocol record, then I<*result> "
7981 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
7983 "関数呼び出しでプロトコルレコードの取得に成功すると、\n"
7984 "I<*result> は I<result_buf> を指すように設定される。\n"
7985 "それ以外の場合は I<*result> に NULL が設定される。"
7988 #: build/C/man3/getprotoent_r.3:119
7990 "On error, record not found (B<getprotobyname_r>(), B<getprotobynumber_r>()), "
7991 "or end of input (B<getprotoent_r>()) I<result> is set to NULL."
7993 "エラーの場合、レコードが見つからなかった場合 (B<getprotobyname_r>(),\n"
7994 "B<getprotobyaddr_r>()) やこれ以上レコードがない場合\n"
7995 "(B<getprotoent_r>())、I<result> には NULL が設定される。"
7998 #: build/C/man3/getprotoent_r.3:124
7999 msgid "(B<getprotoent_r>()) No more records in database."
8000 msgstr "(B<getprotoent_r>()) データベースにこれ以上レコードがない。"
8003 #: build/C/man3/getprotoent_r.3:149
8005 "The program below uses B<getprotobyname_r>() to retrieve the protocol "
8006 "record for the protocol named in its first command-line argument. If a "
8007 "second (integer) command-line argument is supplied, it is used as the "
8008 "initial value for I<buflen>; if B<getprotobyname_r>() fails with the error "
8009 "B<ERANGE>, the program retries with larger buffer sizes. The following "
8010 "shell session shows a couple of sample runs:"
8012 "以下のプログラムは、 B<getprotobyname_r>() を使って、最初のコマンド\n"
8013 "ライン引き数で指定された名前のプロトコルのレコードを取得する。\n"
8014 "二番目のコマンドライン引き数 (整数値) が指定された場合は、\n"
8015 "その値が I<buflen> の初期値として使用される。\n"
8016 "B<getprotobyname_r>() がエラー B<ERANGE> で失敗すると、プログラムは\n"
8017 "より大きなバッファサイズで再度 B<getprotobyname_r> を呼び出す。\n"
8018 "下記のシェルのセッションは、実行例を示している。"
8021 #: build/C/man3/getprotoent_r.3:160
8024 "$B< ./a.out tcp 1>\n"
8025 "ERANGE! Retrying with larger buffer\n"
8026 "getprotobyname_r() returned: 0 (success) (buflen=78)\n"
8027 "p_name=tcp; p_proto=6; aliases=TCP\n"
8028 "$B< ./a.out xxx 1>\n"
8029 "ERANGE! Retrying with larger buffer\n"
8030 "getprotobyname_r() returned: 0 (success) (buflen=100)\n"
8031 "Call failed/record not found\n"
8033 "$B< ./a.out tcp 1>\n"
8034 "ERANGE! Retrying with larger buffer\n"
8035 "getprotobyname_r() returned: 0 (success) (buflen=78)\n"
8036 "p_name=tcp; p_proto=6; aliases=TCP\n"
8037 "$B< ./a.out xxx 1>\n"
8038 "ERANGE! Retrying with larger buffer\n"
8039 "getprotobyname_r() returned: 0 (success) (buflen=100)\n"
8040 "Call failed/record not found\n"
8043 #: build/C/man3/getprotoent_r.3:172 build/C/man3/getservent_r.3:170
8046 "#define _GNU_SOURCE\n"
8047 "#include E<lt>ctype.hE<gt>\n"
8048 "#include E<lt>netdb.hE<gt>\n"
8049 "#include E<lt>stdlib.hE<gt>\n"
8050 "#include E<lt>stdio.hE<gt>\n"
8051 "#include E<lt>errno.hE<gt>\n"
8052 "#include E<lt>string.hE<gt>\n"
8054 "#define _GNU_SOURCE\n"
8055 "#include E<lt>ctype.hE<gt>\n"
8056 "#include E<lt>netdb.hE<gt>\n"
8057 "#include E<lt>stdlib.hE<gt>\n"
8058 "#include E<lt>stdio.hE<gt>\n"
8059 "#include E<lt>errno.hE<gt>\n"
8060 "#include E<lt>string.hE<gt>\n"
8063 #: build/C/man3/getprotoent_r.3:174 build/C/man3/getservent_r.3:172
8065 msgid "#define MAX_BUF 10000\n"
8066 msgstr "#define MAX_BUF 10000\n"
8069 #: build/C/man3/getprotoent_r.3:183
8073 "main(int argc, char *argv[])\n"
8075 " int buflen, erange_cnt, s;\n"
8076 " struct protoent result_buf;\n"
8077 " struct protoent *result;\n"
8078 " char buf[MAX_BUF];\n"
8082 "main(int argc, char *argv[])\n"
8084 " int buflen, erange_cnt, s;\n"
8085 " struct protoent result_buf;\n"
8086 " struct protoent *result;\n"
8087 " char buf[MAX_BUF];\n"
8091 #: build/C/man3/getprotoent_r.3:188
8094 " if (argc E<lt> 2) {\n"
8095 " printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
8096 " exit(EXIT_FAILURE);\n"
8099 " if (argc E<lt> 2) {\n"
8100 " printf(\"Usage: %s proto-name [buflen]\\en\", argv[0]);\n"
8101 " exit(EXIT_FAILURE);\n"
8105 #: build/C/man3/getprotoent_r.3:192
8109 " if (argc E<gt> 2)\n"
8110 " buflen = atoi(argv[2]);\n"
8113 " if (argc E<gt> 2)\n"
8114 " buflen = atoi(argv[2]);\n"
8117 #: build/C/man3/getprotoent_r.3:197 build/C/man3/getservent_r.3:200
8120 " if (buflen E<gt> MAX_BUF) {\n"
8121 " printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8122 " exit(EXIT_FAILURE);\n"
8125 " if (buflen E<gt> MAX_BUF) {\n"
8126 " printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8127 " exit(EXIT_FAILURE);\n"
8131 #: build/C/man3/getprotoent_r.3:206
8134 " erange_cnt = 0;\n"
8136 " s = getprotobyname_r(argv[1], &result_buf,\n"
8137 " buf, buflen, &result);\n"
8138 " if (s == ERANGE) {\n"
8139 " if (erange_cnt == 0)\n"
8140 " printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8143 " erange_cnt = 0;\n"
8145 " s = getprotobyname_r(argv[1], &result_buf,\n"
8146 " buf, buflen, &result);\n"
8147 " if (s == ERANGE) {\n"
8148 " if (erange_cnt == 0)\n"
8149 " printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8153 #: build/C/man3/getprotoent_r.3:209 build/C/man3/getservent_r.3:212
8156 " /* Increment a byte at a time so we can see exactly\n"
8157 " what size buffer was required */\n"
8159 " /* Increment a byte at a time so we can see exactly\n"
8160 " what size buffer was required */\n"
8163 #: build/C/man3/getprotoent_r.3:211 build/C/man3/getservent_r.3:214
8165 msgid " buflen++;\n"
8166 msgstr " buflen++;\n"
8169 #: build/C/man3/getprotoent_r.3:218 build/C/man3/getservent_r.3:221
8172 " if (buflen E<gt> MAX_BUF) {\n"
8173 " printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8174 " exit(EXIT_FAILURE);\n"
8177 " } while (s == ERANGE);\n"
8179 " if (buflen E<gt> MAX_BUF) {\n"
8180 " printf(\"Exceeded buffer limit (%d)\\en\", MAX_BUF);\n"
8181 " exit(EXIT_FAILURE);\n"
8184 " } while (s == ERANGE);\n"
8187 #: build/C/man3/getprotoent_r.3:222
8190 " printf(\"getprotobyname_r() returned: %s (buflen=%d)\\en\",\n"
8191 " (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8192 " strerror(s), buflen);\n"
8194 " printf(\"getprotobyname_r() returned: %s (buflen=%d)\\en\",\n"
8195 " (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8196 " strerror(s), buflen);\n"
8199 #: build/C/man3/getprotoent_r.3:227 build/C/man3/getservent_r.3:230
8202 " if (s != 0 || result == NULL) {\n"
8203 " printf(\"Call failed/record not found\\en\");\n"
8204 " exit(EXIT_FAILURE);\n"
8207 " if (s != 0 || result == NULL) {\n"
8208 " printf(\"Call failed/record not found\\en\");\n"
8209 " exit(EXIT_FAILURE);\n"
8213 #: build/C/man3/getprotoent_r.3:233
8216 " printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
8217 " result_buf.p_name, result_buf.p_proto);\n"
8218 " for (p = result_buf.p_aliases; *p != NULL; p++)\n"
8219 " printf(\"%s \", *p);\n"
8220 " printf(\"\\en\");\n"
8222 " printf(\"p_name=%s; p_proto=%d; aliases=\",\n"
8223 " result_buf.p_name, result_buf.p_proto);\n"
8224 " for (p = result_buf.p_aliases; *p != NULL; p++)\n"
8225 " printf(\"%s \", *p);\n"
8226 " printf(\"\\en\");\n"
8229 #: build/C/man3/getprotoent_r.3:240
8230 msgid "B<getprotoent>(3), B<protocols>(5)"
8231 msgstr "B<getprotoent>(3), B<protocols>(5)"
8234 #: build/C/man3/getservent.3:34
8240 #: build/C/man3/getservent.3:38
8242 "getservent, getservbyname, getservbyport, setservent, endservent - get "
8245 "getservent, getservbyname, getservbyport, setservent, endservent - サービスの"
8249 #: build/C/man3/getservent.3:43
8251 msgid "B<struct servent *getservent(void);>\n"
8252 msgstr "B<struct servent *getservent(void);>\n"
8255 #: build/C/man3/getservent.3:45
8257 msgid "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
8258 msgstr "B<struct servent *getservbyname(const char *>I<name>B<, const char *>I<proto>B<);>\n"
8261 #: build/C/man3/getservent.3:47
8263 msgid "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
8264 msgstr "B<struct servent *getservbyport(int >I<port>B<, const char *>I<proto>B<);>\n"
8267 #: build/C/man3/getservent.3:49
8269 msgid "B<void setservent(int >I<stayopen>B<);>\n"
8270 msgstr "B<void setservent(int >I<stayopen>B<);>\n"
8273 #: build/C/man3/getservent.3:51
8275 msgid "B<void endservent(void);>\n"
8276 msgstr "B<void endservent(void);>\n"
8279 #: build/C/man3/getservent.3:62
8281 "The B<getservent>() function reads the next entry from the services "
8282 "database (see B<services>(5)) and returns a I<servent> structure containing "
8283 "the broken-out fields from the entry. A connection is opened to the "
8284 "database if necessary."
8286 "B<getservent>() 関数はサービスのデータベース (B<services>(5) 参照) から次の"
8287 "エントリを読み込み、 そのエントリを I<servent> 構造体の要素別のフィールドに格"
8288 "納し、 その構造体を返す。 必要であれば、データベースへの接続がオープンされ"
8292 #: build/C/man3/getservent.3:77
8294 "The B<getservbyname>() function returns a I<servent> structure for the "
8295 "entry from the database that matches the service I<name> using protocol "
8296 "I<proto>. If I<proto> is NULL, any protocol will be matched. A connection "
8297 "is opened to the database if necessary."
8299 "B<getservbyname>() 関数は、 プロトコル I<proto> を用いるサービスの名前 "
8300 "I<name> にマッチするエントリをデータベースから探し、 そのエントリを収めた "
8301 "I<servent> 構造体を返す。 I<proto> が NULL の場合は、任意のプロトコルにマッチ"
8302 "する。 必要であれば、データベースへの接続がオープンされる。"
8305 #: build/C/man3/getservent.3:93
8307 "The B<getservbyport>() function returns a I<servent> structure for the "
8308 "entry from the database that matches the port I<port> (given in network byte "
8309 "order) using protocol I<proto>. If I<proto> is NULL, any protocol will be "
8310 "matched. A connection is opened to the database if necessary."
8312 "B<getservbyport>() 関数は、 プロトコル I<proto> を用いるサービスのポート番"
8313 "号 I<port> にマッチするエントリをデータベースから探し、 そのエントリの内容を"
8314 "収めた I<servent> 構造体を返す (ポート番号 I<port> はネットワーク・バイトオー"
8315 "ダで指定する)。 I<proto> が NULL の場合は任意のプロトコルにマッチする。 必要"
8316 "であれば、データベースへの接続がオープンされる。"
8319 #: build/C/man3/getservent.3:105
8321 "The B<setservent>() function opens a connection to the database, and sets "
8322 "the next entry to the first entry. If I<stayopen> is nonzero, then the "
8323 "connection to the database will not be closed between calls to one of the "
8324 "B<getserv*>() functions."
8326 "B<setservent>() 関数はデータベースへの接続をオープンし、 次の読み込みエント"
8327 "リを先頭のエントリに設定する。 I<stayopen> が 0 でない場合、 一つ一つの "
8328 "B<getserv*>() 関数の呼び出し間でデータベースへの接続をクローズしない。"
8331 #: build/C/man3/getservent.3:109
8332 msgid "The B<endservent>() function closes the connection to the database."
8333 msgstr "B<endservent>() 関数はデータベースへの接続をクローズする。"
8336 #: build/C/man3/getservent.3:115
8337 msgid "The I<servent> structure is defined in I<E<lt>netdb.hE<gt>> as follows:"
8339 "I<servent> 構造体は I<E<lt>netdb.hE<gt>> で以下のように定義されている。"
8342 #: build/C/man3/getservent.3:124
8345 "struct servent {\n"
8346 " char *s_name; /* official service name */\n"
8347 " char **s_aliases; /* alias list */\n"
8348 " int s_port; /* port number */\n"
8349 " char *s_proto; /* protocol to use */\n"
8352 "struct servent {\n"
8353 " char *s_name; /* official service name */\n"
8354 " char **s_aliases; /* alias list */\n"
8355 " int s_port; /* port number */\n"
8356 " char *s_proto; /* protocol to use */\n"
8360 #: build/C/man3/getservent.3:130
8361 msgid "The members of the I<servent> structure are:"
8362 msgstr "I<servent> 構造体のメンバーは以下の通り。"
8365 #: build/C/man3/getservent.3:130
8371 #: build/C/man3/getservent.3:133
8372 msgid "The official name of the service."
8373 msgstr "サービスの正式名 (official name)。"
8376 #: build/C/man3/getservent.3:133
8378 msgid "I<s_aliases>"
8379 msgstr "I<s_aliases>"
8382 #: build/C/man3/getservent.3:136
8383 msgid "A NULL-terminated list of alternative names for the service."
8384 msgstr "サービスの別名のリスト。 リストは NULL で終端される。"
8387 #: build/C/man3/getservent.3:136
8393 #: build/C/man3/getservent.3:139
8394 msgid "The port number for the service given in network byte order."
8395 msgstr "サービスのポート番号。ネットワークバイトオーダで指定される。"
8398 #: build/C/man3/getservent.3:139
8404 #: build/C/man3/getservent.3:142
8405 msgid "The name of the protocol to use with this service."
8406 msgstr "このサービスと共に用いるプロトコルの名前。"
8409 #: build/C/man3/getservent.3:153
8411 "The B<getservent>(), B<getservbyname>() and B<getservbyport>() functions "
8412 "return a pointer to a statically allocated I<servent> structure, or NULL if "
8413 "an error occurs or the end of the file is reached."
8415 "B<getservent>(), B<getservbyname>(), B<getservbyport>() 関数は、 静的に割り"
8416 "当てられた I<servent> 構造体へのポインタを返す。 エラーが起こったり、ファイル"
8417 "の末尾に達した場合は NULL を返す。"
8420 #: build/C/man3/getservent.3:154 build/C/man5/services.5:186
8422 msgid "I</etc/services>"
8423 msgstr "I</etc/services>"
8426 #: build/C/man3/getservent.3:157
8427 msgid "services database file"
8428 msgstr "サービスのデータベースファイル"
8431 #: build/C/man3/getservent.3:164
8432 msgid "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8433 msgstr "B<getnetent>(3), B<getprotoent>(3), B<getservent_r>(3), B<services>(5)"
8436 #: build/C/man3/getservent_r.3:26
8438 msgid "GETSERVENT_R"
8439 msgstr "GETSERVENT_R"
8442 #: build/C/man3/getservent_r.3:30
8444 "getservent_r, getservbyname_r, getservbyport_r - get service entry "
8447 "getservent_r, getservbyname_r, getservbyport_r - サービスエントリを\n"
8451 #: build/C/man3/getservent_r.3:36
8454 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8455 "B< size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8457 "B<int getservent_r(struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8458 "B< size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8461 #: build/C/man3/getservent_r.3:40
8464 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8465 "B< struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8466 "B< size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8468 "B<int getservbyname_r(const char *>I<name>B<, const char *>I<proto>B<,>\n"
8469 "B< struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8470 "B< size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8473 #: build/C/man3/getservent_r.3:44
8476 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8477 "B< struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8478 "B< size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8480 "B<int getservbyport_r(int >I<port>B<, const char *>I<proto>B<,>\n"
8481 "B< struct servent *>I<result_buf>B<, char *>I<buf>B<,>\n"
8482 "B< size_t >I<buflen>B<, struct servent **>I<result>B<);>\n"
8485 #: build/C/man3/getservent_r.3:55
8486 msgid "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8487 msgstr "B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>():"
8490 #: build/C/man3/getservent_r.3:76
8492 "The B<getservent_r>(), B<getservbyname_r>(), and B<getservbyport_r>() "
8493 "functions are the reentrant equivalents of, respectively, B<getservent>(3), "
8494 "B<getservbyname>(3), and B<getservbyport>(3). They differ in the way that "
8495 "the I<servent> structure is returned, and in the function calling signature "
8496 "and return value. This manual page describes just the differences from the "
8497 "nonreentrant functions."
8499 "関数 B<getservent_r>(), B<getservbyname_r>(), B<getservbyport_r>() は、\n"
8500 "それぞれ B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3) の\n"
8502 "I<servent> 構造体の返し方と、関数呼び出し時の引き数と返り値が異なる。\n"
8503 "このマニュアルページでは、リエントラントでない関数との違いだけを\n"
8507 #: build/C/man3/getservent_r.3:82
8509 "Instead of returning a pointer to a statically allocated I<servent> "
8510 "structure as the function result, these functions copy the structure into "
8511 "the location pointed to by I<result_buf>."
8513 "これらの関数は、関数の結果として静的に割り当てられた I<servent> 構造体\n"
8514 "へのポインタを返すのではなく、 I<servent> 構造体を I<result_buf> が\n"
8517 #. I can find no information on the required/recommended buffer size;
8518 #. the nonreentrant functions use a 1024 byte buffer -- mtk.
8520 #: build/C/man3/getservent_r.3:99
8522 "The I<buf> array is used to store the string fields pointed to by the "
8523 "returned I<servent> structure. (The nonreentrant functions allocate these "
8524 "strings in static storage.) The size of this array is specified in "
8525 "I<buflen>. If I<buf> is too small, the call fails with the error B<ERANGE>, "
8526 "and the caller must try again with a larger buffer. (A buffer of length "
8527 "1024 bytes should be sufficient for most applications.)"
8529 "配列 I<buf> は、返される I<servent> 構造体が指す文字列フィールドを\n"
8530 "格納するのに使用される (リエントラントでない関数の場合は、\n"
8531 "これらの文字列は静的な領域に格納される)。\n"
8532 "この配列の大きさは I<buflen> で指定される。\n"
8533 "I<buf> が小さすぎる場合、関数呼び出しはエラー B<ERANGE> で失敗し、\n"
8534 "呼び出し側ではもっと大きなバッファで再度呼び出す必要がある (ほとんどの\n"
8535 "アプリケーションでは、長さ 1024 バイトのバッファで十分なはずである)。"
8538 #: build/C/man3/getservent_r.3:107
8540 "If the function call successfully obtains a service record, then I<*result> "
8541 "is set pointing to I<result_buf>; otherwise, I<*result> is set to NULL."
8543 "関数呼び出しでサービスレコードの取得に成功すると、\n"
8544 "I<*result> は I<result_buf> を指すように設定される。\n"
8545 "それ以外の場合は I<*result> に NULL が設定される。"
8548 #: build/C/man3/getservent_r.3:110
8550 "On success, these functions return 0. On error, they return one of the "
8551 "positive error numbers listed in errors."
8553 "成功すると、これらの関数は 0 を返す。エラーの場合、「エラー」の節の\n"
8554 "リストにある正のエラー番号のいずれかを返す。"
8557 #: build/C/man3/getservent_r.3:118
8559 "On error, record not found (B<getservbyname_r>(), B<getservbyport_r>()), or "
8560 "end of input (B<getservent_r>()) I<result> is set to NULL."
8562 "エラーの場合、レコードが見つからなかった場合 (B<getservbyname_r>(),\n"
8563 "B<getservbyaddr_r>()) やこれ以上レコードがない場合 (B<getservent_r>())、\n"
8564 "I<result> には NULL が設定される。"
8567 #: build/C/man3/getservent_r.3:123
8568 msgid "(B<getservent_r>()) No more records in database."
8569 msgstr "(B<getservent_r>()) データベースにこれ以上レコードがない。"
8572 #: build/C/man3/getservent_r.3:148
8574 "The program below uses B<getservbyport_r>() to retrieve the service record "
8575 "for the port and protocol named in its first command-line argument. If a "
8576 "third (integer) command-line argument is supplied, it is used as the initial "
8577 "value for I<buflen>; if B<getservbyport_r>() fails with the error "
8578 "B<ERANGE>, the program retries with larger buffer sizes. The following "
8579 "shell session shows a couple of sample runs:"
8581 "以下のプログラムは、 B<getservbyport_r>() を使って、コマンド\n"
8582 "ライン引き数で指定されたポート番号とプロトコル名を持つ\n"
8584 "三番目のコマンドライン引き数 (整数値) が指定された場合は、\n"
8585 "その値が I<buflen> の初期値として使用される。\n"
8586 "B<getservbyport_r>() がエラー B<ERANGE> で失敗すると、プログラムは\n"
8587 "より大きなバッファサイズで再度 B<getservbyport_r> を呼び出す。\n"
8588 "下記のシェルのセッションは実行例を示している。"
8591 #: build/C/man3/getservent_r.3:158
8594 "$B< ./a.out 7 tcp 1>\n"
8595 "ERANGE! Retrying with larger buffer\n"
8596 "getservbyport_r() returned: 0 (success) (buflen=87)\n"
8597 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8598 "$B< ./a.out 77777 tcp>\n"
8599 "getservbyport_r() returned: 0 (success) (buflen=1024)\n"
8600 "Call failed/record not found\n"
8602 "$B< ./a.out 7 tcp 1>\n"
8603 "ERANGE! Retrying with larger buffer\n"
8604 "getservbyport_r() returned: 0 (success) (buflen=87)\n"
8605 "s_name=echo; s_proto=tcp; s_port=7; aliases=\n"
8606 "$B< ./a.out 77777 tcp>\n"
8607 "getservbyport_r() returned: 0 (success) (buflen=1024)\n"
8608 "Call failed/record not found\n"
8611 #: build/C/man3/getservent_r.3:182
8615 "main(int argc, char *argv[])\n"
8617 " int buflen, erange_cnt, port, s;\n"
8618 " struct servent result_buf;\n"
8619 " struct servent *result;\n"
8620 " char buf[MAX_BUF];\n"
8625 "main(int argc, char *argv[])\n"
8627 " int buflen, erange_cnt, port, s;\n"
8628 " struct servent result_buf;\n"
8629 " struct servent *result;\n"
8630 " char buf[MAX_BUF];\n"
8635 #: build/C/man3/getservent_r.3:187
8638 " if (argc E<lt> 3) {\n"
8639 " printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8640 " exit(EXIT_FAILURE);\n"
8643 " if (argc E<lt> 3) {\n"
8644 " printf(\"Usage: %s port-num proto-name [buflen]\\en\", argv[0]);\n"
8645 " exit(EXIT_FAILURE);\n"
8649 #: build/C/man3/getservent_r.3:191
8652 " port = htons(atoi(argv[1]));\n"
8653 " protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8654 " strcmp(argv[2], \"NULL\") == 0) ? NULL : argv[2];\n"
8656 " port = htons(atoi(argv[1]));\n"
8657 " protop = (strcmp(argv[2], \"null\") == 0 ||\n"
8658 " strcmp(argv[2], \"NULL\") == 0) ? NULL : argv[2];\n"
8661 #: build/C/man3/getservent_r.3:195
8665 " if (argc E<gt> 3)\n"
8666 " buflen = atoi(argv[3]);\n"
8669 " if (argc E<gt> 3)\n"
8670 " buflen = atoi(argv[3]);\n"
8673 #: build/C/man3/getservent_r.3:209
8676 " erange_cnt = 0;\n"
8678 " s = getservbyport_r(port, protop, &result_buf,\n"
8679 " buf, buflen, &result);\n"
8680 " if (s == ERANGE) {\n"
8681 " if (erange_cnt == 0)\n"
8682 " printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8685 " erange_cnt = 0;\n"
8687 " s = getservbyport_r(port, protop, &result_buf,\n"
8688 " buf, buflen, &result);\n"
8689 " if (s == ERANGE) {\n"
8690 " if (erange_cnt == 0)\n"
8691 " printf(\"ERANGE! Retrying with larger buffer\\en\");\n"
8695 #: build/C/man3/getservent_r.3:225
8698 " printf(\"getservbyport_r() returned: %s (buflen=%d)\\en\",\n"
8699 " (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8700 " strerror(s), buflen);\n"
8702 " printf(\"getservbyport_r() returned: %s (buflen=%d)\\en\",\n"
8703 " (s == 0) ? \"0 (success)\" : (s == ENOENT) ? \"ENOENT\" :\n"
8704 " strerror(s), buflen);\n"
8707 #: build/C/man3/getservent_r.3:237
8710 " printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8711 " result_buf.s_name, result_buf.s_proto,\n"
8712 " ntohs(result_buf.s_port));\n"
8713 " for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8714 " printf(\"%s \", *p);\n"
8715 " printf(\"\\en\");\n"
8717 " printf(\"s_name=%s; s_proto=%s; s_port=%d; aliases=\",\n"
8718 " result_buf.s_name, result_buf.s_proto,\n"
8719 " ntohs(result_buf.s_port));\n"
8720 " for (p = result_buf.s_aliases; *p != NULL; p++)\n"
8721 " printf(\"%s \", *p);\n"
8722 " printf(\"\\en\");\n"
8725 #: build/C/man3/getservent_r.3:244
8726 msgid "B<getservent>(3), B<services>(5)"
8727 msgstr "B<getservent>(3), B<services>(5)"
8730 #: build/C/man5/host.conf.5:26
8736 #: build/C/man5/host.conf.5:26
8742 #: build/C/man5/host.conf.5:26 build/C/man5/networks.5:26
8744 msgid "Linux System Administration"
8745 msgstr "Linux System Administration"
8748 #: build/C/man5/host.conf.5:29
8749 msgid "host.conf - resolver configuration file"
8750 msgstr "host.conf - レゾルバ設定ファイル"
8753 #: build/C/man5/host.conf.5:38
8755 "The file I</etc/host.conf> contains configuration information specific to "
8756 "the resolver library. It should contain one configuration keyword per line, "
8757 "followed by appropriate configuration information. The keywords recognized "
8758 "are I<order>, I<trim>, I<multi>, I<nospoof>, I<spoof>, and I<reorder>. "
8759 "These keywords are described below."
8761 "ファイル I</etc/host.conf> には、レゾルバライブラリの詳細な設定情報が含まれて"
8762 "いる。 このファイルには、1 行毎に 1 つの設定キーワードと それに続く適切な設定"
8763 "情報がなければならない。 認識されるキーワードは I<order>, I<trim>, I<multi>, "
8764 "I<nospoof>, I<spoof>, I<reorder> である。 各キーワードを、以下で説明する。"
8767 #: build/C/man5/host.conf.5:38
8773 #: build/C/man5/host.conf.5:44
8775 "This keyword specifies how host lookups are to be performed. It should be "
8776 "followed by one or more lookup methods, separated by commas. Valid methods "
8777 "are I<bind>, I<hosts>, and I<nis>."
8779 "このキーワードは、ホストのルックアップ方式を指定する。 このキーワードの後に"
8780 "は、コンマで分けた 1 つ以上のルックアップ方式が続かなくてはならない。 使用可"
8781 "能な方式は I<bind>, I<hosts>, I<nis> である。"
8784 #: build/C/man5/host.conf.5:44
8790 #: build/C/man5/host.conf.5:61
8792 "This keyword may be listed more than once. Each time it should be followed "
8793 "by a list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
8794 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot. When set, the resolv+ "
8795 "library will automatically trim the given domain name from the end of any "
8796 "hostname resolved via DNS. This is intended for use with local hosts and "
8797 "domains. (Related note: trim will not affect hostnames gathered via NIS or "
8798 "the hosts file. Care should be taken to ensure that the first hostname for "
8799 "each entry in the hosts file is fully qualified or unqualified, as "
8800 "appropriate for the local installation.)"
8802 "このキーワードは、2 回以上リストすることができる。 毎回、このキーワードの後に"
8803 "は、 ドットではじまる 1 つ以上のドメイン名のリストを続けなければならない。 ド"
8804 "メイン名はコロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,"
8805 "\\(aq) で区切る。 このキーワードが設定されると、resolv+ ライブラリは DNS で"
8806 "レゾルブされた すべてのホスト名の後ろから与えられたドメイン名を自動的に取り去"
8807 "る。 このキーワードはローカルなホストとドメインで使用することを意図してい"
8808 "る。 (関連した注意 : NIS または hosts ファイルで集められたホスト名に trim は"
8809 "影響しない。 hosts ファイルの各エントリの最初のホスト名を、 完全なドメイン名"
8810 "付きのものにするかしないかは、 ホストごとのインストールポリシーにあわせて 適"
8811 "切に選択する必要がある。注意すること。)"
8814 #: build/C/man5/host.conf.5:61
8820 #: build/C/man5/host.conf.5:76
8822 "Valid values are I<on> and I<off>. If set to I<on>, the resolv+ library "
8823 "will return all valid addresses for a host that appears in the I</etc/hosts> "
8824 "file, instead of only the first. This is I<off> by default, as it may cause "
8825 "a substantial performance loss at sites with large hosts files."
8827 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、最初のエントリの"
8828 "みを例外として、 resolv+ ライブラリは I</etc/hosts> ファイルに現れるホストに"
8829 "対して全ての有効なアドレスを返そうとする。 大きな hosts ファイルを持つサイト"
8830 "では、 この設定は非常な性能の低下を招くので、 デフォルトでは I<off> である。"
8833 #: build/C/man5/host.conf.5:76
8839 #: build/C/man5/host.conf.5:91
8841 "Valid values are I<on> and I<off>. If set to I<on>, the resolv+ library "
8842 "will attempt to prevent hostname spoofing to enhance the security of "
8843 "B<rlogin> and B<rsh>. It works as follows: after performing a host address "
8844 "lookup, resolv+ will perform a hostname lookup for that address. If the two "
8845 "hostnames do not match, the query will fail. The default value is I<off>."
8847 "有効な値は I<on> と I<off> である。 I<on> に設定された場合、resolv+ ライブラ"
8848 "リは B<rlogin> と B<rsh> のセキュリティを向上させるためホスト名の偽装を防止し"
8849 "ようとする。 これは、「ホストアドレスのルックアップを行った後、 resolv+ はそ"
8850 "のアドレスに対してホスト名のルックアップを行い、 もし 2 つのホスト名が一致し"
8851 "なかった場合は、クエリーは失敗する。」 というように動作する。 デフォルトの値"
8855 #: build/C/man5/host.conf.5:91
8857 msgid "I<spoofalert>"
8858 msgstr "I<spoofalert>"
8861 #: build/C/man5/host.conf.5:103
8863 "Valid values are I<on> and I<off>. If this option is set to I<on> and the "
8864 "I<nospoof> option is also set, resolv+ will log a warning of the error via "
8865 "the syslog facility. The default value is I<off>."
8867 "有効な値は I<on> と I<off> である。 このオプションが I<on> に設定されてい"
8868 "て、 I<nospoof> オプションも (on に) 設定されている場合、 resolv+ は syslog "
8869 "機能を通じてエラーに関する警告のログをとる。 デフォルトの値は I<off> である。"
8872 #: build/C/man5/host.conf.5:103
8878 #: build/C/man5/host.conf.5:122
8880 "Valid values are I<off>, I<nowarn> and I<warn>. If this option is set to "
8881 "I<off>, spoofed addresses are permitted and no warnings will be emitted via "
8882 "the syslog facility. If this option is set to I<warn>, resolv+ will attempt "
8883 "to prevent hostname spoofing to enhance the security and log a warning of "
8884 "the error via the syslog facility. If this option is set to I<nowarn>, the "
8885 "resolv+ library will attempt to prevent hostname spoofing to enhance the "
8886 "security but not emit warnings via the syslog facility. Setting this option "
8887 "to anything else is equal to setting it to I<nowarn>."
8889 "有効な値は I<off>, I<nowarn>, I<warn> である。 このオプションを I<off> に設定"
8890 "すると、偽装されたアドレスを許可して、 syslog 機能を通じた警告を発しない。 こ"
8891 "のオプションを I<warn> に設定すると、resolv+ はセキュリティを高めるためにホス"
8892 "ト名の偽装を防止し、 syslog 機能を通じてエラーに関する警告のログをとる。 この"
8893 "オプションを I<nowarn> に設定すると、resolv+ はセキュリティを高めるためにホス"
8894 "ト名の偽装を防止するが、 syslog 機能を通じた警告は発しない。 このオプションを"
8895 "何も設定しない場合は、 I<nowarn> を設定したのと同じになる。"
8898 #: build/C/man5/host.conf.5:122
8904 #: build/C/man5/host.conf.5:135
8906 "Valid values are I<on> and I<off>. If set to I<on>, resolv+ will attempt to "
8907 "reorder host addresses so that local addresses (i.e., on the same subnet) "
8908 "are listed first when a B<gethostbyname>(3) is performed. Reordering is "
8909 "done for all lookup methods. The default value is I<off>."
8911 "有効な値は I<on> と I<off> である。 I<on> に設定されると、 B<gethostbyname "
8912 "(3)> が実行されるとき、resolv+ ライブラリは、ローカルな (つまり、同じサブネッ"
8913 "トにある) アドレスが最初にリストされるように ホストアドレスを並べ変える。 す"
8914 "べてのルックアップ方式に対して並べ変えが行われる。 デフォルトの値は、 I<off> "
8918 #: build/C/man5/host.conf.5:135
8924 #: build/C/man5/host.conf.5:139
8926 "There are six environment variables that can be used to allow users to "
8927 "override the behavior which is configured in I</etc/host.conf>."
8929 "I</etc/host.conf> で設定されている動作を、ユーザが上書きできる 6 つの環境変数"
8933 #: build/C/man5/host.conf.5:139
8935 msgid "B<RESOLV_HOST_CONF>"
8936 msgstr "B<RESOLV_HOST_CONF>"
8939 #: build/C/man5/host.conf.5:143
8941 "If set, this variable points to a file that should be read instead of I</etc/"
8944 "この変数を設定すると、 I</etc/host.conf> の代りに読み込むファイルを設定でき"
8948 #: build/C/man5/host.conf.5:143
8950 msgid "B<RESOLV_SERV_ORDER>"
8951 msgstr "B<RESOLV_SERV_ORDER>"
8954 #: build/C/man5/host.conf.5:148
8955 msgid "Overrides the I<order> command."
8956 msgstr "I<order> コマンドを上書きする。"
8959 #: build/C/man5/host.conf.5:148
8961 msgid "B<RESOLV_SPOOF_CHECK>"
8962 msgstr "B<RESOLV_SPOOF_CHECK>"
8965 #: build/C/man5/host.conf.5:157
8967 "Overrides the I<nospoof>, I<spoofalert> and I<spoof> commands in the same "
8968 "way as the I<spoof> command is parsed. Valid values are I<off>, I<nowarn> "
8971 "I<spoof> コマンドを解析するのと同じ方式で、 I<nospoof>, I<spoofalert>, "
8972 "I<spoof> コマンドを上書きできる。 有効な値は I<off>, I<nowarn>, I<warn> であ"
8976 #: build/C/man5/host.conf.5:157
8978 msgid "B<RESOLV_MULTI>"
8979 msgstr "B<RESOLV_MULTI>"
8982 #: build/C/man5/host.conf.5:162
8983 msgid "Overrides the I<multi> command."
8984 msgstr "I<multi> コマンドを上書きする。"
8987 #: build/C/man5/host.conf.5:162
8989 msgid "B<RESOLV_REORDER>"
8990 msgstr "B<RESOLV_REORDER>"
8993 #: build/C/man5/host.conf.5:167
8994 msgid "Overrides the I<reorder> command."
8995 msgstr "I<reorder> コマンドを上書きする。"
8998 #: build/C/man5/host.conf.5:167
9000 msgid "B<RESOLV_ADD_TRIM_DOMAINS>"
9001 msgstr "B<RESOLV_ADD_TRIM_DOMAINS>"
9004 #: build/C/man5/host.conf.5:172
9006 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
9007 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will be added to "
9008 "the list of domains that should be trimmed."
9010 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
9011 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
9015 #: build/C/man5/host.conf.5:172
9017 msgid "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
9018 msgstr "B<RESOLV_OVERRIDE_TRIM_DOMAINS>"
9021 #: build/C/man5/host.conf.5:180
9023 "A list of domains, separated by colons (\\(aq:\\(aq), semicolons (\\(aq;"
9024 "\\(aq) or commas (\\(aq,\\(aq), with the leading dot, which will replace the "
9025 "list of domains that should be trimmed. Overrides the I<trim> command."
9027 "コロン (\\(aq:\\(aq)、セミコロン (\\(aq;\\(aq)、コンマ (\\(aq,\\(aq) で区切っ"
9028 "た ドット (\\(aq.\\(aq) で始まるドメイン名のリスト。 ホスト名から取り去るドメ"
9029 "イン名のリストを上書きする。 I<trim> コマンドを上書きする。"
9032 #: build/C/man5/host.conf.5:184 build/C/man5/host.conf.5:187
9033 msgid "Resolver configuration file"
9037 #: build/C/man5/host.conf.5:184
9039 msgid "I</etc/resolv.conf>"
9040 msgstr "I</etc/resolv.conf>"
9043 #: build/C/man5/host.conf.5:190
9044 msgid "Local hosts database"
9045 msgstr "ローカルの hosts データベース"
9048 #: build/C/man5/host.conf.5:199
9050 "The following differences exist compared to the original implementation. A "
9051 "new command I<spoof> and a new environment variable B<RESOLV_SPOOF_CHECK> "
9052 "can take arguments like I<off>, I<nowarn> and I<warn>. Line comments can "
9053 "appear anywhere and not only at the beginning of a line."
9055 "元々の実装に比べて以下のような違いがある。 新しいコマンド I<spoof> と新しい環"
9056 "境変数 B<RESOLV_SPOOF_CHECK> は、引き数 I<off>, I<nowarn>, I<warn> をとる。 "
9057 "コメントは行頭だけではなく、どこに書いてもよい。"
9060 #: build/C/man5/host.conf.5:204
9061 msgid "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
9062 msgstr "B<gethostbyname>(3), B<hostname>(7), B<named>(8), B<resolv+>(8)"
9065 #: build/C/man7/hostname.7:39
9071 #: build/C/man7/hostname.7:39
9077 #: build/C/man7/hostname.7:42
9078 msgid "hostname - hostname resolution description"
9079 msgstr "hostname - ホスト名の名前解決の説明"
9082 #: build/C/man7/hostname.7:46
9084 "Hostnames are domains, where a domain is a hierarchical, dot-separated list "
9085 "of subdomains; for example, the machine monet, in the Berkeley subdomain of "
9086 "the EDU domain would be represented as \"monet.Berkeley.EDU\"."
9088 "ホスト名は、階層構造でドット区切りのサブドメインである。\n"
9089 "例えば、 EDU ドメインの Berkeley サブドメインのマシン monet は、\n"
9090 "\"monet.Berkeley.EDU\" と表現される。"
9093 #: build/C/man7/hostname.7:55
9095 "Hostnames are often used with network client and server programs, which must "
9096 "generally translate the name to an address for use. (This task is generally "
9097 "performed by either B<getaddrinfo>(3) or the obsolete B<gethostbyname>"
9098 "(3).) Hostnames are resolved by the Internet name resolver in the following "
9101 "ホスト名は、ネットワーククライアントやサーバのプログラムでは一般的に\n"
9102 "使用され、使用する際には名前からアドレスに変換しなければならない (一般\n"
9103 "的にはアドレスへの変換処理は B<getaddrinfo>(3) か (廃止予定の)\n"
9104 "B<gethostbyname>(3) で行われる)。ホスト名の解決は、\n"
9105 "インターネット・ネームリゾルバによって以下の方法で実行される。"
9108 #: build/C/man7/hostname.7:68
9110 "If the name consists of a single component, that is, contains no dot, and if "
9111 "the environment variable B<HOSTALIASES> is set to the name of a file, that "
9112 "file is searched for any string matching the input hostname. The file "
9113 "should consist of lines made up of two white-space separated strings, the "
9114 "first of which is the hostname alias, and the second of which is the "
9115 "complete hostname to be substituted for that alias. If a case-insensitive "
9116 "match is found between the hostname to be resolved and the first field of a "
9117 "line in the file, the substituted name is looked up with no further "
9120 "ホスト名がドットを含まない単一要素で構成されていて、環境変数\n"
9121 "B<HOSTALIASES> にファイル名が設定されている場合、入力されたホスト名に\n"
9122 "マッチする文字列を検索するのに指定されたファイルが使用される。\n"
9123 "そのファイルの各行は、ホワイトスペースで区切られた文字列 2 つで\n"
9124 "構成され、各行の最初の文字列がホスト名のエイリアス (別名) で、\n"
9125 "二番目の文字列がそのエイリアスに対応する完全なホスト名である。\n"
9126 "解決するホスト名と一致するホスト名のエイリアス (ファイルの各行の最初の\n"
9127 "フィールド) が見つかれば、完全なホスト名に置き換えられ、\n"
9128 "それ以上の変換処理は行わずに、そのホスト名で検索処理が行われる\n"
9129 "(ホスト名とエイリアスの照合では大文字、小文字の違いは無視される)。"
9132 #: build/C/man7/hostname.7:72
9134 "If the input name ends with a trailing dot, the trailing dot is removed, and "
9135 "the remaining name is looked up with no further processing."
9137 "入力されたホスト名の末尾がドットの場合、\n"
9138 "末尾のドットは削除され、それ以上の処理は行われず、\n"
9139 "(末尾のドットを削除した) 残りの名前で検索が行われる。"
9142 #: build/C/man7/hostname.7:85
9144 "If the input name does not end with a trailing dot, it is looked up by "
9145 "searching through a list of domains until a match is found. The default "
9146 "search list includes first the local domain, then its parent domains with at "
9147 "least 2 name components (longest first). For example, in the domain CS."
9148 "Berkeley.EDU, the name lithium.CChem will be checked first as lithium.CChem."
9149 "CS.Berkeley.EDU and then as lithium.CChem.Berkeley.EDU. Lithium.CChem.EDU "
9150 "will not be tried, as there is only one component remaining from the local "
9151 "domain. The search path can be changed from the default by a system-wide "
9152 "configuration file (see B<resolver>(5))."
9154 "入力された名前の末尾がドットでない場合、\n"
9155 "マッチするものが見つかるまでドメインのリストの検索が行われる。\n"
9156 "デフォルトのドメインの検索リストは、先頭ローカルのドメインで、\n"
9157 "親ドメインが (長いものから順に) 続く (親ドメインはドット区切りで\n"
9158 "少なくとも 2 要素あるものだけが使用される)。\n"
9159 "例えば、 CS.Berkeley.EDU ドメインで、\n"
9160 "lithium.CChem というホスト名の場合には、\n"
9161 "最初に lithium.CChem.CS.Berkeley.EDU が確認され、\n"
9162 "次に lithium.CChem.Berkeley.EDU が確認される。\n"
9163 "Lithium.CChem.EDU はチェックされない。\n"
9164 "なぜなら、ローカルドメイン CS.Berkeley.EDU で残っているドメインは\n"
9165 "EDU で、これは一つしか要素がないからである。\n"
9166 "検索リストはシステム全体で共通の設定ファイルでデフォルト値から\n"
9167 "変更できる (B<resolver>(5) 参照)。"
9170 #. Hostname appeared in
9173 #: build/C/man7/hostname.7:93
9174 msgid "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
9175 msgstr "B<gethostbyname>(3), B<resolver>(5), B<mailaddr>(7), B<named>(8)"
9178 #: build/C/man5/hosts.5:27
9184 #: build/C/man5/hosts.5:27
9190 #: build/C/man5/hosts.5:30
9191 msgid "hosts - static table lookup for hostnames"
9192 msgstr "hosts - ホスト名の静的なルックアップテーブル"
9195 #: build/C/man5/hosts.5:32
9196 msgid "B</etc/hosts>"
9197 msgstr "B</etc/hosts>"
9200 #: build/C/man5/hosts.5:40
9202 "This manual page describes the format of the I</etc/hosts> file. This file "
9203 "is a simple text file that associates IP addresses with hostnames, one line "
9204 "per IP address. For each host a single line should be present with the "
9205 "following information:"
9207 "このマニュアルページは、 I</etc/hosts> ファイルのフォーマットについて記述して"
9208 "いる。 このファイルは簡単なテキストファイルで、1 行に 1 つの IP アドレスがあ"
9209 "り、 IP アドレスとホスト名を関連づけている。 各ホストについて、次のような情報"
9213 #: build/C/man5/hosts.5:43
9214 msgid "IP_address canonical_hostname [aliases...]"
9215 msgstr "IPアドレス 正式なホスト名 [エイリアス...]"
9218 #: build/C/man5/hosts.5:56
9220 "Fields of the entry are separated by any number of blanks and/or tab "
9221 "characters. Text from a \"#\" character until the end of the line is a "
9222 "comment, and is ignored. Host names may contain only alphanumeric "
9223 "characters, minus signs (\"-\"), and periods (\".\"). They must begin with "
9224 "an alphabetic character and end with an alphanumeric character. Optional "
9225 "aliases provide for name changes, alternate spellings, shorter hostnames, or "
9226 "generic hostnames (for example, I<localhost>)."
9228 "エントリのフィールドは、空白またはタブ (複数でも可) で区切られる。 \"#\" 文字"
9229 "から行末までのテキストはコメントとして無視される。 ホスト名は英数字・マイナス"
9230 "記号 (\"-\")・ピリオド (\".\") を含むことができる。 ホスト名は英文字 "
9231 "(alphabetic character) で始まって、 英数字 (alphanumeric characte) で終わらな"
9232 "ければならない。 エイリアスはオプションであり、名前の変更、別のスペル、 短い"
9233 "ホスト名、一般的に使われるホスト名 (例えば I<localhost>) などのために用意さ"
9237 #: build/C/man5/hosts.5:64
9239 "The Berkeley Internet Name Domain (BIND) Server implements the Internet name "
9240 "server for UNIX systems. It augments or replaces the I</etc/hosts> file or "
9241 "hostname lookup, and frees a host from relying on I</etc/hosts> being up to "
9242 "date and complete."
9244 "Berkeley Internet Name Domain (BIND) サーバは、 UNIX システムのためのインター"
9245 "ネットネームサーバを実装している。 これは、 I</etc/hosts> ファイルやホスト名"
9246 "ルックアップを拡張したり置き換えたりするものである。 これにより各ホストは I</"
9247 "etc/hosts> を最新かつ完全に保たなくてもよくなる。"
9250 #: build/C/man5/hosts.5:67
9252 "In modern systems, even though the host table has been superseded by DNS, it "
9253 "is still widely used for:"
9255 "ホストテーブルは、DNS にとって代わられたにもかかわらず、 現在のシステムにおい"
9256 "て次のような用途で広く使われている。"
9259 #: build/C/man5/hosts.5:67
9261 msgid "B<bootstrapping>"
9265 #: build/C/man5/hosts.5:73
9267 "Most systems have a small host table containing the name and address "
9268 "information for important hosts on the local network. This is useful when "
9269 "DNS is not running, for example during system bootup."
9271 "大部分のシステムは、ローカルネットワークにおいて重要なホストの 名前とアドレス"
9272 "が含まれた小さなホストテーブルを持っている。 これは、システムのブート時など"
9273 "の DNS が稼働していないときに役立つ。"
9276 #: build/C/man5/hosts.5:73
9282 #: build/C/man5/hosts.5:79
9284 "Sites that use NIS use the host table as input to the NIS host database. "
9285 "Even though NIS can be used with DNS, most NIS sites still use the host "
9286 "table with an entry for all local hosts as a backup."
9288 "NIS を使用しているサイトは、ホストテーブルを NIS ホストデータベースの入力とし"
9289 "て用いる。 NIS を DNS と共に使用できるにもかかわらず、 大部分の NIS サイトは"
9290 "未だに、 全てのローカルホストのエントリをもつホストテーブルを バックアップと"
9294 #: build/C/man5/hosts.5:79
9296 msgid "B<isolated nodes>"
9297 msgstr "B<隔絶されたノード>"
9300 #: build/C/man5/hosts.5:86
9302 "Very small sites that are isolated from the network use the host table "
9303 "instead of DNS. If the local information rarely changes, and the network is "
9304 "not connected to the Internet, DNS offers little advantage."
9306 "ネットワークから隔絶された非常に小さなサイトは、 DNS の代わりにホストテーブル"
9307 "を使用している。 ローカル情報が稀にしか変更されず、 ネットワークがインター"
9308 "ネットと接続されていない場合、 DNS にそれほどの利点はない。"
9311 #: build/C/man5/hosts.5:91
9313 "Modifications to this file normally take effect immediately, except in cases "
9314 "where the file is cached by applications."
9316 "このファイルへの変更は通常すぐに反映される。但し、アプリケーション によりファ"
9317 "イルの内容がキャッシュされている場合はこの限りではない。"
9320 #: build/C/man5/hosts.5:91
9322 msgid "Historical notes"
9326 #: build/C/man5/hosts.5:94
9328 "RFC\\ 952 gave the original format for the host table, though it has since "
9331 "ホストテーブルのフォーマットはその後変更されているが、 元々のフォーマットは "
9332 "RFC\\ 952 には記載されている。"
9335 #: build/C/man5/hosts.5:107
9337 "Before the advent of DNS, the host table was the only way of resolving "
9338 "hostnames on the fledgling Internet. Indeed, this file could be created "
9339 "from the official host data base maintained at the Network Information "
9340 "Control Center (NIC), though local changes were often required to bring it "
9341 "up to date regarding unofficial aliases and/or unknown hosts. The NIC no "
9342 "longer maintains the hosts.txt files, though looking around at the time of "
9343 "writing (circa 2000), there are historical hosts.txt files on the WWW. I "
9344 "just found three, from 92, 94, and 95."
9346 "DNS の登場以前、ホストテーブルは、駆け出したばかりのインターネットにおける ホ"
9347 "スト名解決の唯一の方法であった。 実際、このファイルは Network Information "
9348 "Control Center (NIC) によって 管理される公式ホストデータベースから作成するこ"
9349 "とができた。 しかし、非公式なエイリアスや不明なホストを扱えるように、 最新に"
9350 "保つためのローカルな変更が頻繁に必要とされた。 NIC は既に hosts.txt を管理し"
9351 "ていないが、 これを書いている (2000 年頃の) 時点で調べてみると、 WWW 上に歴史"
9352 "的な hosts.txt が存在する。 92, 94, 95 年のものが見つかった。"
9355 #: build/C/man5/hosts.5:114
9358 "127.0.0.1 localhost\n"
9359 "192.168.1.10 foo.mydomain.org foo\n"
9360 "192.168.1.13 bar.mydomain.org bar\n"
9361 "146.82.138.7 master.debian.org master\n"
9362 "209.237.226.90 www.opensource.org\n"
9364 "127.0.0.1 localhost\n"
9365 "192.168.1.10 foo.mydomain.org foo\n"
9366 "192.168.1.13 bar.mydomain.org bar\n"
9367 "146.82.138.7 master.debian.org master\n"
9368 "209.237.226.90 www.opensource.org\n"
9371 #: build/C/man5/hosts.5:121
9373 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8)"
9375 "B<hostname>(1), B<resolver>(3), B<resolver>(5), B<hostname>(7), B<named>(8)"
9378 #. This manual page was written by Manoj Srivastava <srivasta@debian.org>,
9379 #. for the Debian GNU/Linux system.
9381 #: build/C/man5/hosts.5:126
9382 msgid "Internet RFC\\ 952"
9383 msgstr "Internet RFC\\ 952"
9386 #: build/C/man5/hosts.equiv.5:6
9389 msgstr "HOSTS.EQUIV"
9392 #: build/C/man5/hosts.equiv.5:6
9398 #: build/C/man5/hosts.equiv.5:11
9400 "/etc/hosts.equiv - list of hosts and users that are granted \"trusted\" B<r> "
9401 "command access to your system"
9403 "/etc/hosts.equiv - 「信頼された」B<r> コマンドによるシステムへの アクセスを許"
9407 #: build/C/man5/hosts.equiv.5:22
9409 "The B<hosts.equiv> file allows or denies hosts and users to use the B<r>-"
9410 "commands (e.g., B<rlogin>, B<rsh>, or B<rcp>) without supplying a password."
9412 "B<hosts.equiv> ファイルは B<r>-コマンド (B<rlogin>, B<rsh>, B<rcp> など) によ"
9413 "るパスワードなしでの利用を 許可/拒否するホスト/ユーザを設定する。"
9416 #: build/C/man5/hosts.equiv.5:24
9417 msgid "The file uses the following format:"
9418 msgstr "このファイルでは以下の書式を用いる。"
9421 #: build/C/man5/hosts.equiv.5:24
9423 msgid "I<[ + | - ]> I<[hostname]> I<[username]>"
9424 msgstr "I<[ + | - ]> I<[hostname]> I<[username]>"
9427 #: build/C/man5/hosts.equiv.5:43
9429 "The I<hostname> is the name of a host which is logically equivalent to the "
9430 "local host. Users logged into that host are allowed to access like-named "
9431 "user accounts on the local host without supplying a password. The "
9432 "I<hostname> may be (optionally) preceded by a plus (+) sign. If the plus "
9433 "sign is used alone, it allows any host to access your system. You can "
9434 "explicitly deny access to a host by preceding the I<hostname> by a minus (-) "
9435 "sign. Users from that host must always supply a password. For security "
9436 "reasons you should always use the FQDN of the hostname and not the short "
9439 "I<hostname> は、ローカルホストと論理的に等価なホストの名前である。 そのホスト"
9440 "にログインしているユーザは、パスワードなしで ローカルホストの同じ名前のユーザ"
9441 "アカウントにアカウントできる。 I<hostname> の前にはプラス記号 (+) を置いても"
9442 "よい。プラス記号が単独で置かれた場合は、 このシステムへのアクセスをあらゆるホ"
9443 "ストに対して許可したことになる。 アクセスを明示的に拒否するには、 "
9444 "I<hostname> の前にマイナス記号 (-) を付ける。そのホストからのユーザは 常にパ"
9445 "スワードを要求される。セキュリティ上、ホスト名は 短い名前ではなく常に FQDN を"
9449 #: build/C/man5/hosts.equiv.5:61
9451 "The I<username> entry grants a specific user access to all user accounts "
9452 "(except root) without supplying a password. That means the user is NOT "
9453 "restricted to like-named accounts. The I<username> may be (optionally) "
9454 "preceded by a plus (+) sign. You can also explicitly deny access to a "
9455 "specific user by preceding the I<username> with a minus (-) sign. This says "
9456 "that the user is not trusted no matter what other entries for that host "
9459 "I<username> エントリは、特定のユーザに対して、 (root 以外の) あらゆるユーザア"
9460 "カウント へのアクセスをパスワードなしで許可する。すなわち、そのユーザは同じ名"
9461 "前の アカウント以外にもアクセスできる。 I<username> の前にはプラス記号 (+) を"
9462 "置いてもよい。 特定のユーザからのアクセスを明示的に拒否するには、 "
9463 "I<username> の前にマイナス記号 (-) を付ける。こうすると、 ホストのエントリが"
9464 "なんと言おうとも、そのユーザは信頼されないことになる。"
9467 #: build/C/man5/hosts.equiv.5:63
9468 msgid "Netgroups can be specified by preceding the netgroup by an @ sign."
9469 msgstr "netgroup を指定することもでき、その場合は @ 記号を前につける。"
9472 #: build/C/man5/hosts.equiv.5:69
9474 "Be extremely careful when using the plus (+) sign. A simple typographical "
9475 "error could result in a standalone plus sign. A standalone plus sign is a "
9476 "wildcard character that means \"any host\"!"
9478 "プラス記号 (+) を利用する際にはくれぐれも注意すること。 単純なミスタイプで、"
9479 "単独のプラス記号を置いてしまうことがある。 単独のプラス記号は「すべてのホス"
9480 "ト」を表すワイルドカードになってしまう!"
9483 #: build/C/man5/hosts.equiv.5:71
9484 msgid "I</etc/hosts.equiv>"
9485 msgstr "I</etc/hosts.equiv>"
9488 #: build/C/man5/hosts.equiv.5:76
9490 "Some systems will honor the contents of this file only when it has owner "
9491 "root and no write permission for anybody else. Some exceptionally paranoid "
9492 "systems even require that there be no other hard links to the file."
9494 "システムによっては、このファイルの内容が効力を持つのは、 このファイルの所有者"
9495 "が root で、 かつそれ以外に書き込み権限がない場合に限定されていることもあ"
9496 "る。 また、非常に制限がきついシステムでは、このファイルに対する他の ハードリ"
9497 "ンクがないことが要求される場合もある。"
9500 #: build/C/man5/hosts.equiv.5:84
9502 "Modern systems use the Pluggable Authentication Modules library (PAM). With "
9503 "PAM a standalone plus sign is considered a wildcard character which means "
9504 "\"any host\" only when the word I<promiscuous> is added to the auth "
9505 "component line in your PAM file for the particular service (e.g., B<rlogin>)."
9507 "最近のシステムでは Pluggable Authentication Modules library (PAM) が 使われて"
9508 "いる。PAM では、単独のプラス記号が「すべてのホスト」を表す ワイルドカードとし"
9509 "て扱われるのは、特定のサービス (例えば B<rlogin>) 用の PAM ファイルで auth "
9510 "行にキーワード I<promiscuous> が追加されている場合のみである。"
9513 #: build/C/man5/hosts.equiv.5:88
9514 msgid "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9515 msgstr "B<rhosts>(5), B<rlogind>(8), B<rshd>(8)"
9518 #: build/C/man7/icmp.7:12
9524 #: build/C/man7/icmp.7:12 build/C/man8/nscd.8:23 build/C/man7/raw.7:13
9525 #: build/C/man7/unix.7:18
9531 #: build/C/man7/icmp.7:15
9532 msgid "icmp - Linux IPv4 ICMP kernel module."
9533 msgstr "icmp - Linux IPv4 ICMP カーネルモジュール"
9536 #: build/C/man7/icmp.7:23
9538 "This kernel protocol module implements the Internet Control Message Protocol "
9539 "defined in RFC\\ 792. It is used to signal error conditions and for "
9540 "diagnosis. The user doesn't interact directly with this module; instead it "
9541 "communicates with the other protocols in the kernel and these pass the ICMP "
9542 "errors to the application layers. The kernel ICMP module also answers ICMP "
9545 "このカーネルモジュールは RFC\\ 792 で定義されている Internet Control Message "
9546 "Protocol を実装したものである。 このプロトコルはエラー状況を知らせたり診断を"
9547 "行うために用いられる。 ユーザーはこのモジュールとは直接には通信できない。 こ"
9548 "のモジュールはカーネルの他のプロトコルと通信し、 それらのプロトコルが ICMP エ"
9549 "ラーをアプリケーションレイヤに渡す。 カーネルの ICMP モジュールは ICMP リクエ"
9553 #: build/C/man7/icmp.7:35
9555 "A user protocol may receive ICMP packets for all local sockets by opening a "
9556 "raw socket with the protocol B<IPPROTO_ICMP>. See B<raw>(7) for more "
9557 "information. The types of ICMP packets passed to the socket can be filtered "
9558 "using the B<ICMP_FILTER> socket option. ICMP packets are always processed "
9559 "by the kernel too, even when passed to a user socket."
9561 "raw ソケットをプロトコル B<IPPROTO_ICMP> でオープンすれば、 ユーザープロトコ"
9562 "ルはローカルなソケット全てに対する ICMP パケットを受信することができる。 詳細"
9563 "は B<raw>(7) を参照のこと。 ソケットに渡される ICMP パケットのタイプは "
9564 "B<ICMP_FILTER> オプションによってフィルターできる。 ICMP パケットは (たとえ"
9565 "ユーザーソケットに渡される場合でも)、 常にカーネルによって (も) 処理される。"
9568 #: build/C/man7/icmp.7:41
9570 "Linux limits the rate of ICMP error packets to each destination. "
9571 "B<ICMP_REDIRECT> and B<ICMP_DEST_UNREACH> are also limited by the "
9572 "destination route of the incoming packets."
9574 "Linux では ICMP エラーパケットのレートをそれぞれの送り先に対して 制限してい"
9575 "る。 B<ICMP_REDIRECT> と B<ICMP_DEST_UNREACH> も到着したパケットの行き先経路 "
9576 "(destination route) を制限する。"
9578 #. FIXME better description needed
9580 #: build/C/man7/icmp.7:54
9582 "ICMP supports a set of I</proc> interfaces to configure some global IP "
9583 "parameters. The parameters can be accessed by reading or writing files in "
9584 "the directory I</proc/sys/net/ipv4/>. Most of these parameters are rate "
9585 "limitations for specific ICMP types. Linux 2.2 uses a token bucket filter "
9586 "to limit ICMPs. The value is the timeout in jiffies until the token bucket "
9587 "filter is cleared after a burst. A jiffy is a system dependent unit, "
9588 "usually 10ms on i386 and about 1ms on alpha and ia64."
9590 "ICMP では、いくつかのグローバルパラメータを設定するための I</proc> ファイル群"
9591 "が用意されている。 これらのパラメータには、 I</proc/sys/net/ipv4/> ディレクト"
9592 "リ内のファイルの読み書きでアクセスできる。 これらのパラメータのほとんどは特定"
9593 "の ICMP タイプに対するレート制限 (rate limitation) である。 Linux 2.2 は "
9594 "ICMP の制限にトークン・バケット・フィルタ (token bucket filter) を用いる。 そ"
9595 "れぞれの値は、バーストの後にトークン・バケット・フィルタがクリア されるまでの"
9596 "タイムアウトを秒単位で表したものである。最小単位(jiffy)は システム依存の単位"
9597 "で i386 システムは通常 10ms、alpha や ia64 では 1ms である。"
9600 #: build/C/man7/icmp.7:54
9602 msgid "I<icmp_destunreach_rate> (Linux 2.2 to 2.4.9)"
9603 msgstr "I<icmp_destunreach_rate> (Linux 2.2 から 2.4.9 まで)"
9605 #. Precisely: from 2.1.102
9607 #: build/C/man7/icmp.7:63
9609 "Maximum rate to send ICMP Destination Unreachable packets. This limits the "
9610 "rate at which packets are sent to any individual route or destination. The "
9611 "limit does not affect sending of B<ICMP_FRAG_NEEDED> packets needed for path "
9614 "ICMP 不達パケット (Destination Unreachable packet) を送る最大レート。 これは"
9615 "特定のルートまたは行き先にパケットを送信するレートを制限する。 この制限は、 "
9616 "path MTU discovery に必要な B<ICMP_FRAG_NEEDED> パケットの送信には影響しな"
9620 #: build/C/man7/icmp.7:63
9622 msgid "I<icmp_echo_ignore_all> (since Linux 2.2)"
9623 msgstr "I<icmp_echo_ignore_all> (Linux 2.2 以降)"
9625 #. Precisely: 2.1.68
9627 #: build/C/man7/icmp.7:69
9628 msgid "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> requests."
9630 "この値が非ゼロの場合は、 Linux はすべての B<ICMP_ECHO> 要求を無視する。"
9633 #: build/C/man7/icmp.7:69
9635 msgid "I<icmp_echo_ignore_broadcasts> (since Linux 2.2)"
9636 msgstr "I<icmp_echo_ignore_broadcasts> (Linux 2.2 以降)"
9638 #. Precisely: from 2.1.68
9640 #: build/C/man7/icmp.7:75
9642 "If this value is nonzero, Linux will ignore all B<ICMP_ECHO> packets sent to "
9643 "broadcast addresses."
9645 "この値が非ゼロの場合は、 Linux はブロードキャストアドレスに送られたすべての "
9646 "B<ICMP_ECHO> 要求を無視する。"
9649 #: build/C/man7/icmp.7:75
9651 msgid "I<icmp_echoreply_rate> (Linux 2.2 to 2.4.9)"
9652 msgstr "I<icmp_echoreply_rate> (Linux 2.2 から 2.4.9 まで)"
9654 #. Precisely: from 2.1.102
9656 #: build/C/man7/icmp.7:83
9658 "Maximum rate for sending B<ICMP_ECHOREPLY> packets in response to "
9659 "B<ICMP_ECHOREQUEST> packets."
9661 "B<ICMP_ECHOREQUEST> パケットに応答する B<ICMP_ECHOREPLY> パケットの最大送信"
9665 #: build/C/man7/icmp.7:83
9667 msgid "I<icmp_errors_use_inbound_ifaddr> (Boolean; default: disabled; since Linux 2.6.12)"
9668 msgstr "I<icmp_errors_use_inbound_ifaddr> (ブール値; デフォルト: 無効; Linux 2.6.12 以降)"
9670 #. The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9672 #: build/C/man7/icmp.7:88
9674 "If disabled, ICMP error messages are sent with the primary address of the "
9675 "exiting interface."
9677 "これを無効にすると、ICMP エラーメッセージは、 出力インタフェースのプライマリ"
9681 #: build/C/man7/icmp.7:94
9683 "If enabled, the message will be sent with the primary address of the "
9684 "interface that received the packet that caused the ICMP error. This is the "
9685 "behavior that many network administrators will expect from a router. And it "
9686 "can make debugging complicated network layouts much easier."
9688 "これを有効にすると、エラーメッセージは ICMP エラーの原因となったパケットを 受"
9689 "信したインタフェースのプライマアドレスで送信される。 この動作は、多くのネット"
9690 "ワーク管理者がルータに対して期待しているものであり、 これにより複雑なネット"
9691 "ワークレイアウトのデバッグがより容易になる。"
9694 #: build/C/man7/icmp.7:98
9696 "Note that if no primary address exists for the interface selected, then the "
9697 "primary address of the first non-loopback interface that has one will be "
9698 "used regardless of this setting."
9700 "選択されたインタフェースでプライマリアドレスが存在しない場合は、 この設定に関"
9701 "わらず、最初のループバック以外のインタフェースで、 プライマリアドレスを持つイ"
9702 "ンタフェースのプライマリアドレスが使用される点に 注意すること。"
9705 #: build/C/man7/icmp.7:98
9707 msgid "I<icmp_ignore_bogus_error_responses> (Boolean; default: disabled; since Linux 2.2)"
9708 msgstr "I<icmp_ignore_bogus_error_responses> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
9710 #. precisely: since 2.1.32
9711 #. The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9713 #: build/C/man7/icmp.7:106
9715 "Some routers violate RFC1122 by sending bogus responses to broadcast "
9716 "frames. Such violations are normally logged via a kernel warning. If this "
9717 "parameter is enabled, the kernel will not give such warnings, which will "
9718 "avoid log file clutter."
9720 "ルータの中には、RFC1122 に違反し、ブロードキャストフレームに対して 偽の応答を"
9721 "送信するものがある。 このような違反は通常カーネルの警告としてログに記録され"
9722 "る。 このパラメータを有効にすると、カーネルはこのような警告を出さなくなり、 "
9723 "ログファイルに雑音のような情報が記録されるのを避けることができる。"
9726 #: build/C/man7/icmp.7:106
9728 msgid "I<icmp_paramprob_rate> (Linux 2.2 to 2.4.9)"
9729 msgstr "I<icmp_paramprob_rate> (Linux 2.2 から 2.4.9 まで)"
9731 #. Precisely: from 2.1.102
9733 #: build/C/man7/icmp.7:113
9735 "Maximum rate for sending B<ICMP_PARAMETERPROB> packets. These packets are "
9736 "sent when a packet arrives with an invalid IP header."
9738 "B<ICMP_PARAMETERPROB> パケットの最大送信レート。 これらのパケットは不正な IP "
9739 "ヘッダを持つパケットが到着した場合に 送信される。"
9742 #: build/C/man7/icmp.7:113
9744 msgid "I<icmp_ratelimit> (integer; default: 1000; since Linux 2.4.10)"
9745 msgstr "I<icmp_ratelimit> (integer; default: 1000; Linux 2.4.10 以降)"
9747 #. The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9749 #: build/C/man7/icmp.7:121
9751 "Limit the maximum rates for sending ICMP packets whose type matches "
9752 "I<icmp_ratemask> (see below) to specific targets. 0 to disable any "
9753 "limiting, otherwise the minimum space between responses in milliseconds."
9755 "種別が I<icmp_ratemask> (下記参照) にマッチした ICMP パケットの、 特定の送信"
9756 "先への送信レートの最大値を制限する。 0 はレート制限を無効にすることを、 0 以"
9757 "外の値は応答間の最小間隔 (ミリ秒単位) を示す。"
9760 #: build/C/man7/icmp.7:121
9762 msgid "I<icmp_ratemask> (integer; default: see below; since Linux 2.4.10)"
9763 msgstr "I<icmp_ratemask> (integer; default: 下記参照; Linux 2.4.10 以降)"
9765 #. The following taken from 2.6.28-rc4 Documentation/networking/ip-sysctl.txt
9767 #: build/C/man7/icmp.7:125
9768 msgid "Mask made of ICMP types for which rates are being limited."
9769 msgstr "レート制限を行う ICMP タイプを決めるマスク。"
9772 #: build/C/man7/icmp.7:127
9773 msgid "Significant bits: IHGFEDCBA9876543210"
9774 msgstr "有効ビット: IHGFEDCBA9876543210"
9777 #: build/C/man7/icmp.7:129
9778 msgid "Default mask: 0000001100000011000 (0x1818)"
9779 msgstr "デフォルトマスク: 0000001100000011000 (0x1818)"
9782 #: build/C/man7/icmp.7:132
9784 "Bit definitions (see the Linux kernel source file I<include/linux/icmp.h>):"
9786 "ビット定義 (Linux カーネルソースファイル I<include/linux/icmp.h> を参照):"
9789 #: build/C/man7/icmp.7:136
9791 msgid "0 Echo Reply\n"
9792 msgstr "0 Echo Reply\n"
9795 #: build/C/man7/icmp.7:137
9797 msgid "3 Destination Unreachable *\n"
9798 msgstr "3 Destination Unreachable *\n"
9801 #: build/C/man7/icmp.7:138
9803 msgid "4 Source Quench *\n"
9804 msgstr "4 Source Quench *\n"
9807 #: build/C/man7/icmp.7:139
9809 msgid "5 Redirect\n"
9810 msgstr "5 Redirect\n"
9813 #: build/C/man7/icmp.7:140
9815 msgid "8 Echo Request\n"
9816 msgstr "8 Echo Request\n"
9819 #: build/C/man7/icmp.7:141
9821 msgid "B Time Exceeded *\n"
9822 msgstr "B Time Exceeded *\n"
9825 #: build/C/man7/icmp.7:142
9827 msgid "C Parameter Problem *\n"
9828 msgstr "C Parameter Problem *\n"
9831 #: build/C/man7/icmp.7:143
9833 msgid "D Timestamp Request\n"
9834 msgstr "D Timestamp Request\n"
9837 #: build/C/man7/icmp.7:144
9839 msgid "E Timestamp Reply\n"
9840 msgstr "E Timestamp Reply\n"
9843 #: build/C/man7/icmp.7:145
9845 msgid "F Info Request\n"
9846 msgstr "F Info Request\n"
9849 #: build/C/man7/icmp.7:146
9851 msgid "G Info Reply\n"
9852 msgstr "G Info Reply\n"
9855 #: build/C/man7/icmp.7:147
9857 msgid "H Address Mask Request\n"
9858 msgstr "H Address Mask Request\n"
9861 #: build/C/man7/icmp.7:148
9863 msgid "I Address Mask Reply\n"
9864 msgstr "I Address Mask Reply\n"
9867 #: build/C/man7/icmp.7:154
9869 "The bits marked with an asterisk are rate limited by default (see the "
9870 "default mask above)."
9872 "アスタリスク印 (*) が付いたビットは、 デフォルトでレート制限が有効になってい"
9873 "る (上記のマスクのデフォルトも参照)。"
9876 #: build/C/man7/icmp.7:154
9878 msgid "I<icmp_timeexceed_rate> (Linux 2.2 to 2.4.9)"
9879 msgstr "I<icmp_timeexceed_rate> (Linux 2.2 から 2.4.9 まで)"
9882 #: build/C/man7/icmp.7:161
9884 "Maximum rate for sending B<ICMP_TIME_EXCEEDED> packets. These packets are "
9885 "sent to prevent loops when a packet has crossed too many hops."
9887 "B<ICMP_TIME_EXCEEDED> パケットの最大送信レート。 これらのパケットはパケットが"
9888 "あまりに多くの hop を通過した場合に、 ループを防ぐために送られる。"
9891 #: build/C/man7/icmp.7:165
9892 msgid "Support for the B<ICMP_ADDRESS> request was removed in 2.2."
9893 msgstr "B<ICMP_ADDRESS> 要求に対するサポートは 2.2 で削除された。"
9896 #: build/C/man7/icmp.7:169
9897 msgid "Support for B<ICMP_SOURCE_QUENCH> was removed in Linux 2.2."
9898 msgstr "B<ICMP_SOURCE_QUENCH> は Linux 2.2 で削除された。"
9900 #. not really true ATM
9902 #. Linux ICMP should be compliant to RFC 1122.
9904 #: build/C/man7/icmp.7:177
9906 "As many other implementations don't support B<IPPROTO_ICMP> raw sockets, "
9907 "this feature should not be relied on in portable programs."
9909 "他の多くの実装では、 B<IPPROTO_ICMP> raw ソケットがサポートされていない。 こ"
9910 "の機能は移植性が必要なプログラムでは用いるべきでない。"
9913 #: build/C/man7/icmp.7:182
9915 "B<ICMP_REDIRECT> packets are not sent when Linux is not acting as a router. "
9916 "They are also accepted only from the old gateway defined in the routing "
9917 "table and the redirect routes are expired after some time."
9919 "Linux がルーターとして動作していないときには、 B<ICMP_REDIRECT> パケットは送"
9920 "信されない。 またこれらが受け取られるのも、発信元がルーティングテーブルに定義"
9921 "されている 古いゲートウェイで、リダイレクト・ルート (redirect route) が 適当"
9922 "な時間の後に期限切れになっている場合に限られる。"
9925 #: build/C/man7/icmp.7:186
9927 "The 64-bit timestamp returned by B<ICMP_TIMESTAMP> is in milliseconds since "
9928 "the Epoch, 1970-01-01 00:00:00 +0000 (UTC)."
9930 "B<ICMP_TIMESTAMP> から返される 64 ビットのタイムスタンプは、 紀元 (Epoch) で"
9931 "ある 1970-01-01 00:00:00 +0000 (UTC) からの経過時間をミリ秒単位で表したもの"
9935 #: build/C/man7/icmp.7:191
9937 "Linux ICMP internally uses a raw socket to send ICMPs. This raw socket may "
9938 "appear in B<netstat>(8) output with a zero inode."
9940 "Linux ICMP は ICMP を送るために内部で raw ソケットを用いる。 raw ソケットは "
9941 "B<netstat>(8) の出力に 0 inode として出力される。"
9944 #: build/C/man7/icmp.7:193
9949 #: build/C/man7/icmp.7:195
9950 msgid "RFC\\ 792 for a description of the ICMP protocol."
9951 msgstr "B<RFC\\ 792>: ICMP プロトコルの説明"
9954 #: build/C/man3/inet.3:42
9960 #: build/C/man3/inet.3:42
9966 #: build/C/man3/inet.3:46
9968 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
9969 "inet_netof - Internet address manipulation routines"
9971 "inet_aton, inet_addr, inet_network, inet_ntoa, inet_makeaddr, inet_lnaof, "
9972 "inet_netof - インターネットアドレス操作ルーチン"
9975 #: build/C/man3/inet.3:51
9978 "B<#include E<lt>sys/socket.hE<gt>>\n"
9979 "B<#include E<lt>netinet/in.hE<gt>>\n"
9980 "B<#include E<lt>arpa/inet.hE<gt>>\n"
9982 "B<#include E<lt>sys/socket.hE<gt>>\n"
9983 "B<#include E<lt>netinet/in.hE<gt>>\n"
9984 "B<#include E<lt>arpa/inet.hE<gt>>\n"
9987 #: build/C/man3/inet.3:53
9989 msgid "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
9990 msgstr "B<int inet_aton(const char *>I<cp>B<, struct in_addr *>I<inp>B<);>\n"
9993 #: build/C/man3/inet.3:55
9995 msgid "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
9996 msgstr "B<in_addr_t inet_addr(const char *>I<cp>B<);>\n"
9999 #: build/C/man3/inet.3:57
10001 msgid "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
10002 msgstr "B<in_addr_t inet_network(const char *>I<cp>B<);>\n"
10004 #. type: Plain text
10005 #: build/C/man3/inet.3:59
10007 msgid "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
10008 msgstr "B<char *inet_ntoa(struct in_addr >I<in>B<);>\n"
10010 #. type: Plain text
10011 #: build/C/man3/inet.3:61
10013 msgid "B<struct in_addr inet_makeaddr(int >I<net>B<, int >I<host>B<);>\n"
10014 msgstr "B<struct in_addr inet_makeaddr(int >I<net>B<, int >I<host>B<);>\n"
10016 #. type: Plain text
10017 #: build/C/man3/inet.3:63
10019 msgid "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
10020 msgstr "B<in_addr_t inet_lnaof(struct in_addr >I<in>B<);>\n"
10022 #. type: Plain text
10023 #: build/C/man3/inet.3:65
10025 msgid "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
10026 msgstr "B<in_addr_t inet_netof(struct in_addr >I<in>B<);>\n"
10028 #. type: Plain text
10029 #: build/C/man3/inet.3:75
10030 msgid "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
10031 msgstr "B<inet_aton>(), B<inet_ntoa>(): _BSD_SOURCE || _SVID_SOURCE"
10033 #. type: Plain text
10034 #: build/C/man3/inet.3:85
10036 "B<inet_aton>() converts the Internet host address I<cp> from the IPv4 "
10037 "numbers-and-dots notation into binary form (in network byte order) and "
10038 "stores it in the structure that I<inp> points to. B<inet_aton>() returns "
10039 "nonzero if the address is valid, zero if not. The address supplied in I<cp> "
10040 "can have one of the following forms:"
10042 "B<inet_aton>() は、インターネットホストのアドレス I<cp> を、 IPv4 の数値と"
10043 "ドットによる表記から (ネットワークバイトオーダの) バイナリ値へ 変換し、変換結"
10044 "果を I<inp> が指している構造体に格納する。 アドレスが有効な場合 0 以外を返"
10045 "し、そうでない場合は 0 を返す。 I<cp> で渡すアドレスとして、以下の形式を用い"
10049 #: build/C/man3/inet.3:85
10052 msgstr "I<a.b.c.d>"
10054 #. type: Plain text
10055 #: build/C/man3/inet.3:89
10057 "Each of the four numeric parts specifies a byte of the address; the bytes "
10058 "are assigned in left-to-right order to produce the binary address."
10060 "4 つの数字のそれぞれはアドレスの各バイトを示す。 これらのバイトは左から右の順"
10061 "序でバイナリアドレスに割り当てられる。"
10064 #: build/C/man3/inet.3:89
10069 #. type: Plain text
10070 #: build/C/man3/inet.3:102
10072 "Parts I<a> and I<b> specify the first two bytes of the binary address. Part "
10073 "I<c> is interpreted as a 16-bit value that defines the rightmost two bytes "
10074 "of the binary address. This notation is suitable for specifying (outmoded) "
10075 "Class B network addresses."
10077 "I<a> と I<b> はバイナリアドレスの最初の 2 バイトを示す。 I<c> は 16 ビット値"
10078 "と解釈され、バイナリアドレスの右側の 2 バイトを表す。 この表記は、(過去のもの"
10079 "となった) クラス B ネットワークアドレスを 指定するのに適している。"
10082 #: build/C/man3/inet.3:102
10087 #. type: Plain text
10088 #: build/C/man3/inet.3:113
10090 "Part I<a> specifies the first byte of the binary address. Part I<b> is "
10091 "interpreted as a 24-bit value that defines the rightmost three bytes of the "
10092 "binary address. This notation is suitable for specifying (outmoded) Class A "
10093 "network addresses."
10094 msgstr "I<a> はバイナリアドレスの最初のバイトを示す。 I<b> は 24 ビット値と解釈され、バイナリアドレスの右側の 3 バイトを表す。 この表記は、(過去のものとなった) クラス A ネットワークアドレスを 指定するのに適している。"
10097 #: build/C/man3/inet.3:113
10102 #. type: Plain text
10103 #: build/C/man3/inet.3:119
10105 "The value I<a> is interpreted as a 32-bit value that is stored directly into "
10106 "the binary address without any byte rearrangement."
10108 "値 I<a> は 32 ビット値と解釈され、バイトの再配置は行われず、 そのままバイナリ"
10111 #. type: Plain text
10112 #: build/C/man3/inet.3:132
10114 "In all of the above forms, components of the dotted address can be specified "
10115 "in decimal, octal (with a leading I<0>), or hexadecimal, with a leading "
10116 "I<0X>). Addresses in any of these forms are collectively termed I<IPV4 "
10117 "numbers-and-dots notation>. The form that uses exactly four decimal numbers "
10118 "is referred to as I<IPv4 dotted-decimal notation> (or sometimes: I<IPv4 "
10119 "dotted-quad notation>)."
10121 "上記の全ての形式で、ドット区切りのアドレスの各要素は、10 進数、 8 進数 (先頭"
10122 "に I<0> を付ける)、 16 進数 (先頭に I<0X> を付ける) で指定できる。 これらの形"
10123 "式のアドレスをまとめて I<IPv4 の数値とドットによる表記 (IPv4 numbers-and-"
10124 "dots notation)> と呼ぶ。 また、10 進数 4 つだけを使った形式を I<IPv4 のドット"
10125 "区切りの 10 進数表記 (IPv4 dotted-decimal notation)> と呼ぶ (I<IPv4 のドット"
10126 "区切り 4 分割表記 (IPv4 dotted-decimal notation)> と呼ぶこともある)。"
10128 #. type: Plain text
10129 #: build/C/man3/inet.3:141
10131 "If B<inet_aton>() returns 1 if the supplied string was successfully "
10132 "interpreted, or 0 if the string is invalid (B<errno> is I<not> set on error)."
10133 msgstr "B<inet_aton>() は渡された文字列が正常に解釈できた場合 1 を返し、 文字列が不正な場合 0 を返す (エラーの場合に B<errno> はセットI<されない>)。"
10135 #. type: Plain text
10136 #: build/C/man3/inet.3:158
10138 "The B<inet_addr>() function converts the Internet host address I<cp> from "
10139 "IPv4 numbers-and-dots notation into binary data in network byte order. If "
10140 "the input is invalid, B<INADDR_NONE> (usually -1) is returned. Use of this "
10141 "function is problematic because -1 is a valid address (255.255.255.255). "
10142 "Avoid its use in favor of B<inet_aton>(), B<inet_pton>(3), or B<getaddrinfo>"
10143 "(3) which provide a cleaner way to indicate error return."
10145 "B<inet_addr>() 関数は、インターネットホストのアドレス I<cp> を、 IPv4 の数値"
10146 "とドットによる表記からネットワークバイトオーダでの バイナリ値へ変換して返"
10147 "す。 入力が不正な場合、 B<INADDR_NONE> (普通は -1) を返す。 -1 は有効なアドレ"
10148 "ス (255.255.255.255) なので、この関数を使うと 問題になるかもしれない。 この関"
10149 "数を使うのは避け、代わりに B<inet_aton>(), B<inet_pton>(3), B<getaddrinfo>"
10150 "(3) を使うのがよい。 これらの関数の方が、エラーの通知がよりきれいな方法で行"
10153 #. type: Plain text
10154 #: build/C/man3/inet.3:168
10156 "The B<inet_network>() function converts I<cp>, a string in IPv4 numbers-and-"
10157 "dots notation, into a number in host byte order suitable for use as an "
10158 "Internet network address. On success, the converted address is returned. "
10159 "If the input is invalid, -1 is returned."
10161 "B<inet_network>() 関数は、 IPv4 の数値とドットによる表記の文字列 I<cp> を、 "
10162 "インターネットアドレスとしての使用に適した ホストバイトオーダの数値に変換す"
10163 "る。 成功すると、変換されたアドレスを返す。 入力が不正な場合は -1 を返す。"
10165 #. type: Plain text
10166 #: build/C/man3/inet.3:176
10168 "The B<inet_ntoa>() function converts the Internet host address I<in>, given "
10169 "in network byte order, to a string in IPv4 dotted-decimal notation. The "
10170 "string is returned in a statically allocated buffer, which subsequent calls "
10173 "B<inet_ntoa>() 関数は、ネットワークバイトオーダで渡されたインターネットホス"
10174 "トアドレス I<in> を、 IPv4 のドット区切りの 10 進数表記の文字列に変換する。 "
10175 "文字列は静的に割当てられたバッファに格納されて返されるので、 この後でこの関数"
10176 "を再度呼び出すと文字列は上書きされる。"
10178 #. type: Plain text
10179 #: build/C/man3/inet.3:182
10181 "The B<inet_lnaof>() function returns the local network address part of the "
10182 "Internet address I<in>. The returned value is in host byte order."
10184 "B<inet_lnaof>() 関数は、インターネットアドレス I<in> のローカルネットワーク"
10185 "部分を返す。 この返り値はホストバイトオーダである。"
10187 #. type: Plain text
10188 #: build/C/man3/inet.3:188
10190 "The B<inet_netof>() function returns the network number part of the "
10191 "Internet address I<in>. The returned value is in host byte order."
10193 "B<inet_netof>() 関数は、インターネットアドレス I<in> のネットワーク部分を返"
10194 "す。 この返り値はホストバイトオーダである。"
10196 #. type: Plain text
10197 #: build/C/man3/inet.3:199
10199 "The B<inet_makeaddr>() function is the converse of B<inet_netof>() and "
10200 "B<inet_lnaof>(). It returns an Internet host address in network byte order, "
10201 "created by combining the network number I<net> with the local address "
10202 "I<host>, both in host byte order."
10204 "B<inet_makeaddr>() 関数は B<inet_netof>() と B<inet_lnaof>() の逆の機能を"
10205 "持つ。 ネットワーク番号 I<net> と、ローカルアドレス I<host> を 組み合わせて生"
10206 "成した、インターネットホストアドレスを ネットワークバイトオーダで返す。 "
10207 "I<host>, I<net> はともにホストバイトオーダである。"
10209 #. type: Plain text
10210 #: build/C/man3/inet.3:209
10212 "The structure I<in_addr> as used in B<inet_ntoa>(), B<inet_makeaddr>(), "
10213 "B<inet_lnaof>() and B<inet_netof>() is defined in I<E<lt>netinet/in."
10216 "B<inet_ntoa>(), B<inet_makeaddr>(), B<inet_lnaof>(), B<inet_netof>() で使用"
10217 "する構造体 I<in_addr> は I<E<lt>netinet/in.hE<gt>> で次のように定義されてい"
10220 #. type: Plain text
10221 #: build/C/man3/inet.3:213
10223 msgid "typedef uint32_t in_addr_t;\n"
10224 msgstr "typedef uint32_t in_addr_t;\n"
10226 #. type: Plain text
10227 #: build/C/man3/inet.3:217
10230 "struct in_addr {\n"
10231 " in_addr_t s_addr;\n"
10234 "struct in_addr {\n"
10235 " in_addr_t s_addr;\n"
10238 #. type: Plain text
10239 #: build/C/man3/inet.3:227
10241 "4.3BSD. B<inet_addr>() and B<inet_ntoa>() are specified in POSIX.1-2001. "
10242 "B<inet_aton>() is not specified in POSIX.1-2001, but is available on most "
10245 "4.3BSD. B<inet_addr>(), B<inet_ntoa>() は POSIX.1-2001 で規定されている。 "
10246 "B<inet_aton>() は POSIX.1-2001 で規定されていないが、ほとんどのシステムで利"
10249 #. type: Plain text
10250 #: build/C/man3/inet.3:231
10252 "On the i386 the host byte order is Least Significant Byte first (little "
10253 "endian), whereas the network byte order, as used on the Internet, is Most "
10254 "Significant Byte first (big endian)."
10256 "i386 ではホストバイトオーダは Least Significant Byte (LSB) first (リトルエン"
10257 "ディアン) だが、 インターネットで使われるネットワークバイトオーダは Most "
10258 "Significant Byte (MSB) first (ビッグエンディアン) である点に注意すること。"
10260 #. type: Plain text
10261 #: build/C/man3/inet.3:240
10263 "B<inet_lnaof>(), B<inet_netof>(), and B<inet_makeaddr>() are legacy "
10264 "functions that assume they are dealing with I<classful network addresses>. "
10265 "Classful networking divides IPv4 network addresses into host and network "
10266 "components at byte boundaries, as follows:"
10268 "B<inet_lnaof>(), B<inet_netof>(), B<inet_makeaddr>() は過去の名残であり、渡"
10269 "されたアドレスが I<クラスフル・ネットワークアドレス (classful network "
10270 "addresses)> であると仮定して処理を行う。 クラスフル・ネットワークアドレスで"
10271 "は、以下にあるように、 IPv4 ネットワークアドレスをバイト境界でネットワーク部"
10275 #: build/C/man3/inet.3:240
10280 #. type: Plain text
10281 #: build/C/man3/inet.3:246
10283 "This address type is indicated by the value 0 in the most significant bit of "
10284 "the (network byte ordered) address. The network address is contained in the "
10285 "most significant byte, and the host address occupies the remaining three "
10288 "(ネットワークバイトオーダの) アドレスの最上位ビットが 0 の場合、 このアドレス"
10289 "種別となる。このアドレス種別では、 最上位バイトがネットワークアドレスを表"
10290 "し、 残りの 3 バイトがホストアドレスを表す。"
10293 #: build/C/man3/inet.3:246
10298 #. type: Plain text
10299 #: build/C/man3/inet.3:252
10301 "This address type is indicated by the binary value 10 in the most "
10302 "significant two bits of the address. The network address is contained in "
10303 "the two most significant bytes, and the host address occupies the remaining "
10306 "(ネットワークバイトオーダの) アドレスの上位側 2 ビットがバイナリ値で 10 の場"
10307 "合、このアドレス種別となる。このアドレス種別では、 上位 2 バイトがネットワー"
10308 "クアドレスを表し、 残りの 2 バイトがホストアドレスを表す。"
10311 #: build/C/man3/inet.3:252
10316 #. type: Plain text
10317 #: build/C/man3/inet.3:258
10319 "This address type is indicated by the binary value 110 in the most "
10320 "significant three bits of the address. The network address is contained in "
10321 "the three most significant bytes, and the host address occupies the "
10324 "(ネットワークバイトオーダの) アドレスの上位側 3 ビットがバイナリ値で 110 の場"
10325 "合、このアドレス種別となる。このアドレス種別では、 上位 3 バイトがネットワー"
10326 "クアドレスを表し、 残りの 1 バイトがホストアドレスを表す。"
10328 #. type: Plain text
10329 #: build/C/man3/inet.3:263
10331 "Classful network addresses are now obsolete, having been superseded by "
10332 "Classless Inter-Domain Routing (CIDR), which divides addresses into network "
10333 "and host components at arbitrary bit (rather than byte) boundaries."
10335 "クラスフル・ネットワークアドレスは現在では廃止され、 クラスレス・ドメイン間"
10336 "ルーチン (CIDR) に取って代わられた。 CIDR では、アドレスを任意のビット境界 "
10337 "(バイト境界ではない) で ネットワーク部とホスト部に分割する。"
10339 #. type: Plain text
10340 #: build/C/man3/inet.3:270
10342 "An example of the use of B<inet_aton>() and B<inet_ntoa>() is shown "
10343 "below. Here are some example runs:"
10345 "以下は B<inet_aton>() と B<inet_ntoa>() の使用例である。このように実行す"
10348 #. type: Plain text
10349 #: build/C/man3/inet.3:277
10352 "$B< ./a.out 226.000.000.037> # Last byte is in octal\n"
10354 "$B< ./a.out 0x7f.1 > # First byte is in hex\n"
10357 "$B< ./a.out 226.000.000.037> # Last byte is in octal\n"
10359 "$B< ./a.out 0x7f.1 > # First byte is in hex\n"
10362 #. type: Plain text
10363 #: build/C/man3/inet.3:286
10366 "#define _BSD_SOURCE\n"
10367 "#include E<lt>arpa/inet.hE<gt>\n"
10368 "#include E<lt>stdio.hE<gt>\n"
10369 "#include E<lt>stdlib.hE<gt>\n"
10371 "#define _BSD_SOURCE\n"
10372 "#include E<lt>arpa/inet.hE<gt>\n"
10373 "#include E<lt>stdio.hE<gt>\n"
10374 "#include E<lt>stdlib.hE<gt>\n"
10376 #. type: Plain text
10377 #: build/C/man3/inet.3:291
10381 "main(int argc, char *argv[])\n"
10383 " struct in_addr addr;\n"
10386 "main(int argc, char *argv[])\n"
10388 " struct in_addr addr;\n"
10390 #. type: Plain text
10391 #: build/C/man3/inet.3:296
10394 " if (argc != 2) {\n"
10395 " fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10396 " exit(EXIT_FAILURE);\n"
10399 " if (argc != 2) {\n"
10400 " fprintf(stderr, \"%s E<lt>dotted-addressE<gt>\\en\", argv[0]);\n"
10401 " exit(EXIT_FAILURE);\n"
10404 #. type: Plain text
10405 #: build/C/man3/inet.3:301
10408 " if (inet_aton(argv[1], &addr) == 0) {\n"
10409 " fprintf(stderr, \"Invalid address\\en\");\n"
10410 " exit(EXIT_FAILURE);\n"
10413 " if (inet_aton(argv[1], &addr) == 0) {\n"
10414 " fprintf(stderr, \"Invalid address\\en\");\n"
10415 " exit(EXIT_FAILURE);\n"
10418 #. type: Plain text
10419 #: build/C/man3/inet.3:305
10422 " printf(\"%s\\en\", inet_ntoa(addr));\n"
10423 " exit(EXIT_SUCCESS);\n"
10426 " printf(\"%s\\en\", inet_ntoa(addr));\n"
10427 " exit(EXIT_SUCCESS);\n"
10430 #. type: Plain text
10431 #: build/C/man3/inet.3:317
10433 "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), "
10434 "B<getnetent>(3), B<inet_net_pton>(3), B<inet_ntop>(3), B<inet_pton>(3), "
10435 "B<hosts>(5), B<networks>(5)"
10436 msgstr "B<byteorder>(3), B<getaddrinfo>(3), B<gethostbyname>(3), B<getnameinfo>(3), B<getnetent>(3), B<inet_net_pton>(3), B<inet_ntop>(3), B<inet_pton>(3), B<hosts>(5), B<networks>(5)"
10439 #: build/C/man3/inet_ntop.3:26
10445 #: build/C/man3/inet_ntop.3:26
10448 msgstr "2008-11-11"
10450 #. type: Plain text
10451 #: build/C/man3/inet_ntop.3:29
10452 msgid "inet_ntop - convert IPv4 and IPv6 addresses from binary to text form"
10453 msgstr "inet_ntop - IPv4/IPv6 アドレスをバイナリ形式からテキスト形式に変換する"
10455 #. type: Plain text
10456 #: build/C/man3/inet_ntop.3:35
10459 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
10460 "B< char *>I<dst>B<, socklen_t >I<size>B<);>\n"
10462 "B<const char *inet_ntop(int >I<af>B<, const void *>I<src>B<,>\n"
10463 "B< char *>I<dst>B<, socklen_t >I<size>B<);>\n"
10465 #. type: Plain text
10466 #: build/C/man3/inet_ntop.3:48
10468 "This function converts the network address structure I<src> in the I<af> "
10469 "address family into a character string. The resulting string is copied to "
10470 "the buffer pointed to by I<dst>, which must be a non-null pointer. The "
10471 "caller specifies the number of bytes available in this buffer in the "
10472 "argument I<size>."
10474 "この関数は、 I<af> アドレスファミリーのネットワークアドレス構造体 I<src> を文"
10475 "字列に変換する。 変換結果の文字列は、 I<dst> が指すバッファにコピーされる。 "
10476 "I<dst> は NULL でないポインタでなければならない。 呼び出し時に、このバッファ"
10477 "で利用できるバイト数を 引き数 I<size> に指定する。"
10479 #. type: Plain text
10480 #: build/C/man3/inet_ntop.3:57
10482 "B<inet_ntop>() extends the B<inet_ntoa>(3) function to support multiple "
10483 "address families, B<inet_ntoa>(3) is now considered to be deprecated in "
10484 "favor of B<inet_ntop>(). The following address families are currently "
10487 "B<inet_ntop>() は B<inet_ntoa>(3) 関数を拡張して複数のアドレスファミリーを"
10488 "扱えるようにしたものである。 今後は B<inet_ntoa>(3) は使わず、 B<inet_ntop>"
10489 "() を使うようにすると良いだろう。 現在サポートされているアドレスファミリーは"
10492 #. type: Plain text
10493 #: build/C/man3/inet_ntop.3:70
10495 "I<src> points to a I<struct in_addr> (in network byte order) which is "
10496 "converted to an IPv4 network address in the dotted-decimal format, \"I<ddd."
10497 "ddd.ddd.ddd>\". The buffer I<dst> must be at least B<INET_ADDRSTRLEN> bytes "
10500 "この場合 I<src> は (ネットワークバイトオーダーの) I<struct in_addr> へのポイ"
10501 "ンタとみなされ、この構造体の内容が ドット区切りの 10 進数形式 \"I<ddd.ddd."
10502 "ddd.ddd>\" の IPv4 ネットワークアドレスに変換される。 バッファ I<dst> は少な"
10503 "くとも B<INET_ADDRSTRLEN> バイトの長さを持たなければならない。"
10505 #. type: Plain text
10506 #: build/C/man3/inet_ntop.3:83
10508 "I<src> points to a I<struct in6_addr> (in network byte order) which is "
10509 "converted to a representation of this address in the most appropriate IPv6 "
10510 "network address format for this address. The buffer I<dst> must be at least "
10511 "B<INET6_ADDRSTRLEN> bytes long."
10513 "この場合 I<src> は (ネットワークバイトオーダーの) I<struct in6_addr> へのポ"
10514 "インタとみなされ、この構造体の内容が、 (このアドレスに対してもっとも適切な) "
10515 "IPv6 ネットワークアドレスの表示形式に変換される。 バッファ I<dst> は少なくと"
10516 "も B<INET6_ADDRSTRLEN> バイトの長さを持たなければならない。"
10518 #. type: Plain text
10519 #: build/C/man3/inet_ntop.3:91
10521 "On success, B<inet_ntop>() returns a non-null pointer to I<dst>. NULL is "
10522 "returned if there was an error, with I<errno> set to indicate the error."
10524 "成功すると、 B<inet_ntop>() は I<dst> への (NULL でない) ポインタを返す。 エ"
10525 "ラーがあった場合は NULL を返し、 I<errno> をエラーを示す値に適切に設定する。"
10528 #: build/C/man3/inet_ntop.3:92 build/C/man3/inet_net_pton.3:147
10530 msgid "B<EAFNOSUPPORT>"
10531 msgstr "B<EAFNOSUPPORT>"
10533 #. type: Plain text
10534 #: build/C/man3/inet_ntop.3:96
10535 msgid "I<af> was not a valid address family."
10536 msgstr "I<af> がサポートされているアドレスファミリーでなかった。"
10539 #: build/C/man3/inet_ntop.3:96
10544 #. type: Plain text
10545 #: build/C/man3/inet_ntop.3:100
10546 msgid "The converted address string would exceed the size given by I<size>."
10548 "変換されたアドレス文字列の長さが I<size> で指定されたサイズを超過してしまう。"
10550 #. 2.1.3: size_t, 2.1.91: socklen_t
10551 #. type: Plain text
10552 #: build/C/man3/inet_ntop.3:112
10554 "POSIX.1-2001. Note that RFC\\ 2553 defines a prototype where the last "
10555 "argument I<size> is of type I<size_t>. Many systems follow RFC\\ 2553. "
10556 "Glibc 2.0 and 2.1 have I<size_t>, but 2.2 and later have I<socklen_t>."
10558 "POSIX.1-2001. RFC\\ 2553 では最後の引き数 I<size> のプロトタイプを "
10559 "I<size_t> 型と定義している。多くのシステムでは RFC\\ 2553 にしたがっている。 "
10560 "glibc 2.0 と 2.1 では I<size_t> だが、 glibc 2.2 以降では I<socklen_t> となっ"
10563 #. type: Plain text
10564 #: build/C/man3/inet_ntop.3:115
10565 msgid "B<AF_INET6> converts IPv4-mapped IPv6 addresses into an IPv6 format."
10567 "B<AF_INET6> は IPv4 がマップされた IPv6 アドレスを IPv6 形式に変換してしま"
10570 #. type: Plain text
10571 #: build/C/man3/inet_ntop.3:118
10572 msgid "See B<inet_pton>(3)."
10573 msgstr "B<inet_pton>(3) を参照。"
10575 #. type: Plain text
10576 #: build/C/man3/inet_ntop.3:122
10577 msgid "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
10578 msgstr "B<getnameinfo>(3), B<inet>(3), B<inet_pton>(3)"
10581 #: build/C/man3/inet_pton.3:27
10587 #: build/C/man3/inet_pton.3:27
10590 msgstr "2008-06-18"
10592 #. type: Plain text
10593 #: build/C/man3/inet_pton.3:30
10594 msgid "inet_pton - convert IPv4 and IPv6 addresses from text to binary form"
10595 msgstr "inet_pton - IPv4/IPv6 アドレスをテキスト形式からバイナリ形式に変換する"
10597 #. type: Plain text
10598 #: build/C/man3/inet_pton.3:35
10600 msgid "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
10601 msgstr "B<int inet_pton(int >I<af>B<, const char *>I<src>B<, void *>I<dst>B<);>\n"
10603 #. type: Plain text
10604 #: build/C/man3/inet_pton.3:51
10606 "This function converts the character string I<src> into a network address "
10607 "structure in the I<af> address family, then copies the network address "
10608 "structure to I<dst>. The I<af> argument must be either B<AF_INET> or "
10611 "この関数は文字列 I<src> を、アドレスファミリー I<af> のネットワークアドレス構"
10612 "造体に変換し、 I<dst> にコピーする。 I<af> 引き数は B<AF_INET> か "
10613 "B<AF_INET6> のどちらかでなければならない。"
10615 #. type: Plain text
10616 #: build/C/man3/inet_pton.3:53
10617 msgid "The following address families are currently supported:"
10618 msgstr "現在サポートされているアドレスファミリーは以下の通りである。"
10620 #. type: Plain text
10621 #: build/C/man3/inet_pton.3:67
10623 "I<src> points to a character string containing an IPv4 network address in "
10624 "dotted-decimal format, \"I<ddd.ddd.ddd.ddd>\", where I<ddd> is a decimal "
10625 "number of up to three digits in the range 0 to 255. The address is "
10626 "converted to a I<struct in_addr> and copied to I<dst>, which must be I<sizeof"
10627 "(struct in_addr)> (4) bytes (32 bits) long."
10629 "I<src> はドット区切りの 10 進数形式 \"I<ddd.ddd.ddd.ddd>\" の IPv4 ネットワー"
10630 "クアドレス文字列へのポインタである。 I<ddd> は 0 から 255 までの範囲の最大 3 "
10631 "桁の 10 進数である。 このアドレスは I<struct in_addr> に変換されて I<dst> に"
10632 "コピーされる。 I<dst> の長さは I<sizeof(struct in_addr)> (4) バイト (32ビッ"
10635 #. type: Plain text
10636 #: build/C/man3/inet_pton.3:79
10638 "I<src> points to a character string containing an IPv6 network address. The "
10639 "address is converted to a I<struct in6_addr> and copied to I<dst>, which "
10640 "must be I<sizeof(struct in6_addr)> (16) bytes (128 bits) long. The allowed "
10641 "formats for IPv6 addresses follow these rules:"
10643 "I<src> は IPv6 ネットワークアドレスが格納された文字列へのポインタである。 こ"
10644 "のアドレスは I<struct in6_addr> に変換されて I<dst> にコピーされる。 I<dst> "
10645 "の長さは I<sizeof(struct in6_addr)> (16) バイト (128 ビット) でなければならな"
10646 "い。 以下の 3 つのルールにしたがった形式が IPv6 アドレスとして入力できる。"
10649 #: build/C/man3/inet_pton.3:80
10654 #. type: Plain text
10655 #: build/C/man3/inet_pton.3:87
10657 "The preferred format is I<x:x:x:x:x:x:x:x>. This form consists of eight "
10658 "hexadecimal numbers, each of which expresses a 16-bit value (i.e., each I<x> "
10659 "can be up to 4 hex digits)."
10661 "推奨形式は I<x:x:x:x:x:x:x:x> である。この形式は 8 個の 16 進数から構成さ"
10662 "れ、 各々の 16 進数は 16 ビット値を表す (I<x> は最大 4 桁の 16 進数である)。"
10665 #: build/C/man3/inet_pton.3:87
10670 #. type: Plain text
10671 #: build/C/man3/inet_pton.3:100
10673 "A series of contiguous zero values in the preferred format can be "
10674 "abbreviated to I<::>. Only one instance of I<::> can occur in an address. "
10675 "For example, the loopback address I<0:0:0:0:0:0:0:1> can be abbreviated as "
10676 "I<::1>. The wildcard address, consisting of all zeros, can be written as "
10679 "推奨形式の中の連続する 0 の列は I<::> に短縮できる。アドレス中で使用できる "
10680 "I<::> は 1 個だけである。 例えば、ループバックアドレス I<0:0:0:0:0:0:0:1> は "
10681 "I<::1> と短縮できる。 全ビットが 0 で構成されるワイルドカードアドレスは I<::"
10685 #: build/C/man3/inet_pton.3:100
10690 #. type: Plain text
10691 #: build/C/man3/inet_pton.3:113
10693 "An alternate format is useful for expressing IPv4-mapped IPv6 addresses. "
10694 "This form is written as I<x:x:x:x:x:x:d.d.d.d>, where the six leading I<x>s "
10695 "are hexadecimal values that define the six most-significant 16-bit pieces of "
10696 "the address (i.e., 96 bits), and the I<d>s express a value in dotted-decimal "
10697 "notation that defines the least significant 32 bits of the address. An "
10698 "example of such an address is I<::FFFF:204.152.189.116>."
10700 "IPv4 をマッピングした IPv6 アドレスを表記するには別の形式が便利である。 この"
10701 "別の形式は I<x:x:x:x:x:x:d.d.d.d> と書くことができる。 最初の 6 個の I<x> は"
10702 "アドレスを 16 ビット単位に区切ったときの上位側 6 個分 (つまり 96 ビット分) "
10703 "を定義する 16 進数であり、 I<d> の部分はアドレスの下位 32 ビットをドット区切"
10704 "りの 10 進数表記で表したものである。 I<::FFFF:204.152.189.116> はこの形式の例"
10707 #. type: Plain text
10708 #: build/C/man3/inet_pton.3:116
10710 "See RFC 2373 for further details on the representation of IPv6 addresses."
10711 msgstr "IPv6 アドレスの表現方法の詳細については RFC 2373 を参照のこと。"
10713 #. type: Plain text
10714 #: build/C/man3/inet_pton.3:129
10716 "B<inet_pton>() returns 1 on success (network address was successfully "
10717 "converted). 0 is returned if I<src> does not contain a character string "
10718 "representing a valid network address in the specified address family. If "
10719 "I<af> does not contain a valid address family, -1 is returned and I<errno> "
10720 "is set to B<EAFNOSUPPORT>."
10722 "成功する (ネットワークアドレスが正常に変換される) と、 B<inet_pton>() は 1 "
10723 "を返す。 I<src> が指定されたアドレスファミリーに対する 正しいネットワークアド"
10724 "レス表記でない場合には、 0 を返す。 I<af> がサポートされているアドレスファミ"
10725 "リーでない場合には、 -1 を返し、 I<errno> に B<EAFNOSUPPORT> を設定する。"
10727 #. type: Plain text
10728 #: build/C/man3/inet_pton.3:150
10730 "Unlike B<inet_aton>(3) and B<inet_addr>(3), B<inet_pton>() supports IPv6 "
10731 "addresses. On the other hand, B<inet_pton>() accepts only IPv4 addresses "
10732 "in dotted-decimal notation, whereas B<inet_aton>(3) and B<inet_addr>(3) "
10733 "allow the more general numbers-and-dots notation (hexadecimal and octal "
10734 "number formats, and formats that don't require all four bytes to be "
10735 "explicitly written). For an interface that handles both IPv6 addresses, and "
10736 "IPv4 addresses in numbers-and-dots notation, see B<getaddrinfo>(3)."
10738 "B<inet_aton>(3) や B<inet_addr>(3) と異なり、 B<inet_pton>() は IPv6 アド"
10739 "レスに対応している。 一方で、 B<inet_pton>() が受け付ける IPv4 アドレスは"
10740 "ドット区切りの 10 進数表記だけである。 これに対し、 B<inet_aton>(3) や "
10741 "B<inet_addr>(3) ではもっと一般的なドット区切りの数字表記 (16 進数や 8 進数の"
10742 "形式や、 4 バイト全てを明示的に書かなくてもよい形式) が使用できる。 ドット区"
10743 "切りの数字表記で IPv6 アドレスと IPv4 アドレスの両方を扱える インターフェイス"
10744 "については、 B<getaddrinfo>(3) を参照のこと。"
10746 #. type: Plain text
10747 #: build/C/man3/inet_pton.3:156
10749 "B<AF_INET6> does not recognize IPv4 addresses. An explicit IPv4-mapped IPv6 "
10750 "address must be supplied in I<src> instead."
10752 "B<AF_INET6> は IPv4 アドレスを認識しない。 代わりに IPv4 アドレスをマッピング"
10753 "した IPv6 アドレスを I<src> に与えなければならない。"
10755 #. type: Plain text
10756 #: build/C/man3/inet_pton.3:162
10758 "The program below demonstrates the use of B<inet_pton>() and B<inet_ntop>"
10759 "(3). Here are some example runs:"
10761 "以下のプログラムは B<inet_pton>() と B<inet_ntop>(3) の使用例を示すものであ"
10762 "る。 実行すると以下のようになる。"
10764 #. type: Plain text
10765 #: build/C/man3/inet_pton.3:171
10768 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
10770 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
10772 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
10773 "::ffff:204.152.189.116\n"
10775 "$B< ./a.out i6 0:0:0:0:0:0:0:0>\n"
10777 "$B< ./a.out i6 1:0:0:0:0:0:0:8>\n"
10779 "$B< ./a.out i6 0:0:0:0:0:FFFF:204.152.189.116>\n"
10780 "::ffff:204.152.189.116\n"
10782 #. type: Plain text
10783 #: build/C/man3/inet_pton.3:180
10786 "#include E<lt>arpa/inet.hE<gt>\n"
10787 "#include E<lt>stdio.hE<gt>\n"
10788 "#include E<lt>stdlib.hE<gt>\n"
10789 "#include E<lt>string.hE<gt>\n"
10791 "#include E<lt>arpa/inet.hE<gt>\n"
10792 "#include E<lt>stdio.hE<gt>\n"
10793 "#include E<lt>stdlib.hE<gt>\n"
10794 "#include E<lt>string.hE<gt>\n"
10796 #. type: Plain text
10797 #: build/C/man3/inet_pton.3:187
10801 "main(int argc, char *argv[])\n"
10803 " unsigned char buf[sizeof(struct in6_addr)];\n"
10804 " int domain, s;\n"
10805 " char str[INET6_ADDRSTRLEN];\n"
10808 "main(int argc, char *argv[])\n"
10810 " unsigned char buf[sizeof(struct in6_addr)];\n"
10811 " int domain, s;\n"
10812 " char str[INET6_ADDRSTRLEN];\n"
10814 #. type: Plain text
10815 #: build/C/man3/inet_pton.3:192
10818 " if (argc != 3) {\n"
10819 " fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
10820 " exit(EXIT_FAILURE);\n"
10823 " if (argc != 3) {\n"
10824 " fprintf(stderr, \"Usage: %s {i4|i6|E<lt>numE<gt>} string\\en\", argv[0]);\n"
10825 " exit(EXIT_FAILURE);\n"
10828 #. type: Plain text
10829 #: build/C/man3/inet_pton.3:195
10832 " domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
10833 " (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
10835 " domain = (strcmp(argv[1], \"i4\") == 0) ? AF_INET :\n"
10836 " (strcmp(argv[1], \"i6\") == 0) ? AF_INET6 : atoi(argv[1]);\n"
10838 #. type: Plain text
10839 #: build/C/man3/inet_pton.3:204
10842 " s = inet_pton(domain, argv[2], buf);\n"
10843 " if (s E<lt>= 0) {\n"
10845 " fprintf(stderr, \"Not in presentation format\");\n"
10847 " perror(\"inet_pton\");\n"
10848 " exit(EXIT_FAILURE);\n"
10851 " s = inet_pton(domain, argv[2], buf);\n"
10852 " if (s E<lt>= 0) {\n"
10854 " fprintf(stderr, \"Not in presentation format\");\n"
10856 " perror(\"inet_pton\");\n"
10857 " exit(EXIT_FAILURE);\n"
10860 #. type: Plain text
10861 #: build/C/man3/inet_pton.3:209
10864 " if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
10865 " perror(\"inet_ntop\");\n"
10866 " exit(EXIT_FAILURE);\n"
10869 " if (inet_ntop(domain, buf, str, INET6_ADDRSTRLEN) == NULL) {\n"
10870 " perror(\"inet_ntop\");\n"
10871 " exit(EXIT_FAILURE);\n"
10874 #. type: Plain text
10875 #: build/C/man3/inet_pton.3:211
10877 msgid " printf(\"%s\\en\", str);\n"
10878 msgstr " printf(\"%s\\en\", str);\n"
10880 #. type: Plain text
10881 #: build/C/man3/inet_pton.3:219
10882 msgid "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
10883 msgstr "B<getaddrinfo>(3), B<inet>(3), B<inet_ntop>(3)"
10886 #: build/C/man3/inet_net_pton.3:26
10888 msgid "INET_NET_PTON"
10889 msgstr "INET_NET_PTON"
10892 #: build/C/man3/inet_net_pton.3:26
10895 msgstr "2014-04-14"
10897 #. type: Plain text
10898 #: build/C/man3/inet_net_pton.3:29
10899 msgid "inet_net_pton, inet_net_ntop - Internet network number conversion"
10902 #. type: Plain text
10903 #: build/C/man3/inet_net_pton.3:35
10906 "B<int inet_net_pton(int >I<af>B<, const char *>I<pres>B<,>\n"
10907 "B< void *>I<netp>B<, size_t >I<nsize>B<);>\n"
10909 "B<int inet_net_pton(int >I<af>B<, const char *>I<pres>B<,>\n"
10910 "B< void *>I<netp>B<, size_t >I<nsize>B<);>\n"
10912 #. type: Plain text
10913 #: build/C/man3/inet_net_pton.3:38
10916 "B<char *inet_net_ntop(int >I<af>B<, const void *>I<netp>B<, int >I<bits>B<,>\n"
10917 "B< char *>I<pres>B<, size_t >I<psize>B<);>\n"
10919 "B<char *inet_net_ntop(int >I<af>B<, const void *>I<netp>B<, int >I<bits>B<,>\n"
10920 "B< char *>I<pres>B<, size_t >I<psize>B<);>\n"
10922 #. type: Plain text
10923 #: build/C/man3/inet_net_pton.3:42 build/C/man3/resolver.3:85
10924 msgid "Link with I<-lresolv>."
10925 msgstr "I<-lresolv> でリンクする。"
10927 #. type: Plain text
10928 #: build/C/man3/inet_net_pton.3:50
10929 msgid "B<inet_net_pton>(), B<inet_net_ntop>():"
10930 msgstr "B<inet_net_pton>(), B<inet_net_ntop>():"
10933 #: build/C/man3/inet_net_pton.3:53
10935 msgid "Since glibc 2.20:"
10936 msgstr "glibc 2.20 以降:"
10938 #. type: Plain text
10939 #: build/C/man3/inet_net_pton.3:56
10940 msgid "_DEFAULT_SOURCE"
10941 msgstr "_DEFAULT_SOURCE"
10944 #: build/C/man3/inet_net_pton.3:56
10946 msgid "Before glibc 2.20:"
10947 msgstr "glibc 2.20 より前:"
10949 #. type: Plain text
10950 #: build/C/man3/inet_net_pton.3:65
10952 "These functions convert network numbers between presentation (i.e., "
10953 "printable) format and network (i.e., binary) format."
10956 #. type: Plain text
10957 #: build/C/man3/inet_net_pton.3:71
10959 "For both functions, I<af> specifies the address family for the conversion; "
10960 "the only supported value is B<AF_INET>."
10964 #: build/C/man3/inet_net_pton.3:71
10966 msgid "inet_net_pton()"
10967 msgstr "inet_net_pton()"
10969 #. type: Plain text
10970 #: build/C/man3/inet_net_pton.3:90
10972 "The B<inet_net_pton>() function converts I<pres>, a null-terminated string "
10973 "containing an Internet network number in presentation format to network "
10974 "format. The result of the conversion, which is in network byte order, is "
10975 "placed in the buffer pointed to by I<net>. (The I<netp> argument typically "
10976 "points to an I<in_addr> structure.) The I<nsize> argument specifies the "
10977 "number of bytes available in I<netp>."
10980 #. type: Plain text
10981 #: build/C/man3/inet_net_pton.3:98
10983 "On success, B<inet_net_pton>() returns the number of bits in the network "
10984 "number field of the result placed in I<netp>. For a discussion of the input "
10985 "presentation format and the return value, see NOTES."
10988 #. type: Plain text
10989 #: build/C/man3/inet_net_pton.3:108
10991 "I<Note>: the buffer pointed to by I<netp> should be zeroed out before "
10992 "calling B<inet_net_pton>(), since the call writes only as many bytes as are "
10993 "required for the network number (or as are explicitly specified by I<pres>), "
10994 "which may be less than the number of bytes in a complete network address."
10998 #: build/C/man3/inet_net_pton.3:108
11000 msgid "inet_net_ntop()"
11003 #. type: Plain text
11004 #: build/C/man3/inet_net_pton.3:120
11006 "The B<inet_net_ntop>() function converts the network number in the buffer "
11007 "pointed to by I<netp> to presentation format; I<*netp> is interpreted as a "
11008 "value in network byte order. The I<bits> argument specifies the number of "
11009 "bits in the network number in I<*netp>."
11012 #. type: Plain text
11013 #: build/C/man3/inet_net_pton.3:131
11015 "The null-terminated presentation-format string is placed in the buffer "
11016 "pointed to by I<pres>. The I<psize> argument specifies the number of bytes "
11017 "available in I<pres>. The presentation string is in CIDR format: a dotted-"
11018 "decimal number representing the network address, followed by a slash, and "
11019 "the size of the network number in bits."
11022 #. type: Plain text
11023 #: build/C/man3/inet_net_pton.3:138
11025 "On success, B<inet_net_pton>() returns the number of bits in the network "
11026 "number. On error, it returns -1, and I<errno> is set to indicate the cause "
11030 #. type: Plain text
11031 #: build/C/man3/inet_net_pton.3:146
11033 "On success, B<inet_net_ntop>() returns I<pres>. On error, it returns NULL, "
11034 "and I<errno> is set to indicate the cause of the error."
11037 #. type: Plain text
11038 #: build/C/man3/inet_net_pton.3:152
11039 msgid "I<af> specified a value other than B<AF_INET>."
11042 #. type: Plain text
11043 #: build/C/man3/inet_net_pton.3:155
11044 msgid "The size of the output buffer was insufficient."
11047 #. type: Plain text
11048 #: build/C/man3/inet_net_pton.3:160
11049 msgid "(B<inet_net_pton>()) I<pres> was not in correct presentation format."
11052 #. type: Plain text
11053 #: build/C/man3/inet_net_pton.3:166
11055 "The B<inet_net_pton>() and B<inet_net_ntop>() functions are nonstandard, "
11056 "but widely available."
11057 msgstr "関数 B<inet_net_pton>() と B<inet_net_ntop>() は非標準だが、多くのシステムで利用可能である。"
11060 #: build/C/man3/inet_net_pton.3:167
11062 msgid "Input presentation format for inet_net_pton()"
11065 #. type: Plain text
11066 #: build/C/man3/inet_net_pton.3:171
11068 "The network number may be specified either as a hexadecimal value or in "
11069 "dotted-decimal notation."
11072 #. If the hexadecimal string is short, the remaining nibbles are zeroed.
11073 #. type: Plain text
11074 #: build/C/man3/inet_net_pton.3:176
11076 "Hexadecimal values are indicated by an initial \"0x\" or \"0X\". The "
11077 "hexadecimal digits populate the nibbles (half octets) of the network number "
11078 "from left to right in network byte order."
11081 #. type: Plain text
11082 #: build/C/man3/inet_net_pton.3:180
11084 "In dotted-decimal notation, up to four octets are specified, as decimal "
11085 "numbers separated by dots. Thus, any of the following forms are accepted:"
11088 #. type: Plain text
11089 #: build/C/man3/inet_net_pton.3:185
11102 #. Reading other man pages, some other implementations treat
11103 #. 'c' in a.b.c as a 16-bit number that populates right-most two bytes
11104 #. 'b' in a.b as a 24-bit number that populates right-most three bytes
11105 #. type: Plain text
11106 #: build/C/man3/inet_net_pton.3:193
11108 "Each part is a number in the range 0 to 255 that populates one byte of the "
11109 "resulting network number, going from left to right, in network-byte (big "
11110 "endian) order. Where a part is omitted, the resulting byte in the network "
11114 #. type: Plain text
11115 #: build/C/man3/inet_net_pton.3:198
11117 "For either hexadecimal or dotted-decimal format, the network number can "
11118 "optionally be followed by a slash and a number in the range 0 to 32, which "
11119 "specifies the size of the network number in bits."
11123 #: build/C/man3/inet_net_pton.3:198
11125 msgid "Return value of inet_net_pton()"
11128 #. type: Plain text
11129 #: build/C/man3/inet_net_pton.3:208
11131 "The return value of B<inet_net_pton>() is the number of bits in the network "
11132 "number field. If the input presentation string terminates with a slash and "
11133 "an explicit size value, then that size becomes the return value of "
11134 "B<inet_net_pton>(). Otherwise, the return value, I<bits>, is inferred as "
11138 #. type: Plain text
11139 #: build/C/man3/inet_net_pton.3:214
11141 "If the most significant byte of the network number is greater than or equal "
11142 "to 240, then I<bits> is 32."
11145 #. type: Plain text
11146 #: build/C/man3/inet_net_pton.3:221
11148 "Otherwise, if the most significant byte of the network number is greater "
11149 "than or equal to 224, then I<bits> is 4."
11152 #. type: Plain text
11153 #: build/C/man3/inet_net_pton.3:228
11155 "Otherwise, if the most significant byte of the network number is greater "
11156 "than or equal to 192, then I<bits> is 24."
11159 #. type: Plain text
11160 #: build/C/man3/inet_net_pton.3:235
11162 "Otherwise, if the most significant byte of the network number is greater "
11163 "than or equal to 128, then I<bits> is 16."
11166 #. type: Plain text
11167 #: build/C/man3/inet_net_pton.3:239
11168 msgid "Otherwise, I<bits> is 8."
11171 #. type: Plain text
11172 #: build/C/man3/inet_net_pton.3:248
11174 "If the resulting I<bits> value from the above steps is greater than or equal "
11175 "to 8, but the number of octets specified in the network number exceed "
11176 "I<bits/8>, then I<bits> is set to 8 times the number of octets actually "
11180 #. type: Plain text
11181 #: build/C/man3/inet_net_pton.3:262
11183 "The program below demonstrates the use of B<inet_net_pton>() and "
11184 "B<inet_net_ntop>(). It uses B<inet_net_pton>() to convert the presentation "
11185 "format network address provided in its first command-line to binary form, "
11186 "displays the return value from B<inet_net_pton>(). It then uses "
11187 "B<inet_net_ntop>() to convert the binary form back to presentation format, "
11188 "and displays the resulting string."
11191 #. type: Plain text
11192 #: build/C/man3/inet_net_pton.3:276
11194 "In order to demonstrate that B<inet_net_pton>() may not write to all bytes "
11195 "of its I<netp> argument, the program allows an optional second command-line "
11196 "argument, a number used to initialize the buffer before B<inet_net_pton>() "
11197 "is called. As its final line of output, the program displays all of the "
11198 "bytes of the buffer returned by B<inet_net_pton>() allowing the user to see "
11199 "which bytes have not been touched by B<inet_net_pton>()."
11202 #. type: Plain text
11203 #: build/C/man3/inet_net_pton.3:280
11205 "An example run, showing that B<inet_net_pton>() infers the number of bits "
11206 "in the network number:"
11209 #. type: Plain text
11210 #: build/C/man3/inet_net_pton.3:287
11213 "$ B<./a.out 193.168>\n"
11214 "inet_net_pton() returned: 24\n"
11215 "inet_net_ntop() yielded: 193.168.0/24\n"
11216 "Raw address: c1a80000\n"
11218 "$ B<./a.out 193.168>\n"
11219 "inet_net_pton() returned: 24\n"
11220 "inet_net_ntop() yielded: 193.168.0/24\n"
11221 "Raw address: c1a80000\n"
11223 #. type: Plain text
11224 #: build/C/man3/inet_net_pton.3:293
11226 "Demonstrate that B<inet_net_pton>() does not zero out unused bytes in its "
11230 #. type: Plain text
11231 #: build/C/man3/inet_net_pton.3:300
11234 "$ B<./a.out 193.168 0xffffffff>\n"
11235 "inet_net_pton() returned: 24\n"
11236 "inet_net_ntop() yielded: 193.168.0/24\n"
11237 "Raw address: c1a800ff\n"
11239 "$ B<./a.out 193.168 0xffffffff>\n"
11240 "inet_net_pton() returned: 24\n"
11241 "inet_net_ntop() yielded: 193.168.0/24\n"
11242 "Raw address: c1a800ff\n"
11244 #. type: Plain text
11245 #: build/C/man3/inet_net_pton.3:308
11247 "Demonstrate that B<inet_net_pton>() will widen the inferred size of the "
11248 "network number, if the supplied number of bytes in the presentation string "
11249 "exceeds the inferred value:"
11252 #. type: Plain text
11253 #: build/C/man3/inet_net_pton.3:315
11256 "$ B<./a.out 193.168.1.128>\n"
11257 "inet_net_pton() returned: 32\n"
11258 "inet_net_ntop() yielded: 193.168.1.128/32\n"
11259 "Raw address: c1a80180\n"
11261 "$ B<./a.out 193.168.1.128>\n"
11262 "inet_net_pton() returned: 32\n"
11263 "inet_net_ntop() yielded: 193.168.1.128/32\n"
11264 "Raw address: c1a80180\n"
11266 #. type: Plain text
11267 #: build/C/man3/inet_net_pton.3:323
11269 "Explicitly specifying the size of the network number overrides any inference "
11270 "about its size (but any extra bytes that are explicitly specified will still "
11271 "be used by B<inet_net_pton>(): to populate the result buffer):"
11274 #. type: Plain text
11275 #: build/C/man3/inet_net_pton.3:330
11278 "$ B<./a.out 193.168.1.128/24>\n"
11279 "inet_net_pton() returned: 24\n"
11280 "inet_net_ntop() yielded: 193.168.1/24\n"
11281 "Raw address: c1a80180\n"
11283 "$ B<./a.out 193.168.1.128/24>\n"
11284 "inet_net_pton() returned: 24\n"
11285 "inet_net_ntop() yielded: 193.168.1/24\n"
11286 "Raw address: c1a80180\n"
11288 #. type: Plain text
11289 #: build/C/man3/inet_net_pton.3:335
11291 msgid "/* Link with -lresolv */\n"
11292 msgstr "/* -lresolv でリンクする */\n"
11294 #. type: Plain text
11295 #: build/C/man3/inet_net_pton.3:339
11298 "#include E<lt>arpa/inet.hE<gt>\n"
11299 "#include E<lt>stdio.hE<gt>\n"
11300 "#include E<lt>stdlib.hE<gt>\n"
11302 "#include E<lt>arpa/inet.hE<gt>\n"
11303 "#include E<lt>stdio.hE<gt>\n"
11304 "#include E<lt>stdlib.hE<gt>\n"
11306 #. type: Plain text
11307 #: build/C/man3/inet_net_pton.3:342
11310 "#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n"
11313 "#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n"
11316 #. type: Plain text
11317 #: build/C/man3/inet_net_pton.3:349
11321 "main(int argc, char *argv[])\n"
11323 " char buf[100];\n"
11324 " struct in_addr addr;\n"
11328 "main(int argc, char *argv[])\n"
11330 " char buf[100];\n"
11331 " struct in_addr addr;\n"
11334 #. type: Plain text
11335 #: build/C/man3/inet_net_pton.3:356
11338 " if (argc E<lt> 2) {\n"
11339 " fprintf(stderr,\n"
11340 " \"Usage: %s presentation-form [addr-init-value]\\en\",\n"
11342 " exit(EXIT_FAILURE);\n"
11345 " if (argc E<lt> 2) {\n"
11346 " fprintf(stderr,\n"
11347 " \"Usage: %s presentation-form [addr-init-value]\\en\",\n"
11349 " exit(EXIT_FAILURE);\n"
11352 #. type: Plain text
11353 #: build/C/man3/inet_net_pton.3:362
11356 " /* If argv[2] is supplied (a numeric value), use it to initialize\n"
11357 " the output buffer given to inet_net_pton(), so that we can see\n"
11358 " that inet_net_pton() initializes only those bytes needed for\n"
11359 " the network number. If argv[2] is not supplied, then initialize\n"
11360 " the buffer to zero (as is recommended practice). */\n"
11363 #. type: Plain text
11364 #: build/C/man3/inet_net_pton.3:364
11366 msgid " addr.s_addr = (argc E<gt> 2) ? strtod(argv[2], NULL) : 0;\n"
11367 msgstr " addr.s_addr = (argc E<gt> 2) ? strtod(argv[2], NULL) : 0;\n"
11369 #. type: Plain text
11370 #: build/C/man3/inet_net_pton.3:366
11372 msgid " /* Convert presentation network number in argv[1] to binary */\n"
11375 #. type: Plain text
11376 #: build/C/man3/inet_net_pton.3:370
11379 " bits = inet_net_pton(AF_INET, argv[1], &addr, sizeof(addr));\n"
11380 " if (bits == -1)\n"
11381 " errExit(\"inet_net_ntop\");\n"
11383 " bits = inet_net_pton(AF_INET, argv[1], &addr, sizeof(addr));\n"
11384 " if (bits == -1)\n"
11385 " errExit(\"inet_net_ntop\");\n"
11387 #. type: Plain text
11388 #: build/C/man3/inet_net_pton.3:372
11390 msgid " printf(\"inet_net_pton() returned: %d\\en\", bits);\n"
11391 msgstr " printf(\"inet_net_pton() returned: %d\\en\", bits);\n"
11393 #. type: Plain text
11394 #: build/C/man3/inet_net_pton.3:375
11397 " /* Convert binary format back to presentation, using \\(aqbits\\(aq\n"
11398 " returned by inet_net_pton() */\n"
11401 #. type: Plain text
11402 #: build/C/man3/inet_net_pton.3:378
11405 " if (inet_net_ntop(AF_INET, &addr, bits, buf, sizeof(buf)) == NULL)\n"
11406 " errExit(\"inet_net_ntop\");\n"
11408 " if (inet_net_ntop(AF_INET, &addr, bits, buf, sizeof(buf)) == NULL)\n"
11409 " errExit(\"inet_net_ntop\");\n"
11411 #. type: Plain text
11412 #: build/C/man3/inet_net_pton.3:380
11414 msgid " printf(\"inet_net_ntop() yielded: %s\\en\", buf);\n"
11415 msgstr " printf(\"inet_net_ntop() yielded: %s\\en\", buf);\n"
11417 #. type: Plain text
11418 #: build/C/man3/inet_net_pton.3:385
11421 " /* Display \\(aqaddr\\(aq in raw form (in network byte order), so we can\n"
11422 " see bytes not displayed by inet_net_ntop(); some of those bytes\n"
11423 " may not have been touched by inet_net_ntop(), and so will still\n"
11424 " have any initial value that was specified in argv[2]. */\n"
11427 #. type: Plain text
11428 #: build/C/man3/inet_net_pton.3:387
11430 msgid " printf(\"Raw address: %x\\en\", htonl(addr.s_addr));\n"
11431 msgstr " printf(\"Raw address: %x\\en\", htonl(addr.s_addr));\n"
11433 #. type: Plain text
11434 #: build/C/man3/inet_net_pton.3:394
11435 msgid "B<inet>(3), B<networks>(5)"
11436 msgstr "B<inet>(3), B<networks>(5)"
11439 #: build/C/man7/ip.7:36
11445 #: build/C/man7/ip.7:36
11448 msgstr "2013-09-17"
11450 #. type: Plain text
11451 #: build/C/man7/ip.7:39
11452 msgid "ip - Linux IPv4 protocol implementation"
11453 msgstr "ip - Linux IPv4 プロトコルの実装"
11455 #. type: Plain text
11456 #: build/C/man7/ip.7:45 build/C/man7/ipv6.7:93 build/C/man7/raw.7:20
11457 #: build/C/man7/tcp.7:83 build/C/man7/udp.7:19
11458 msgid "B<#include E<lt>netinet/in.hE<gt>>"
11459 msgstr "B<#include E<lt>netinet/in.hE<gt>>"
11461 #. type: Plain text
11462 #: build/C/man7/ip.7:47
11463 msgid "B<#include E<lt>netinet/ip.hE<gt> >/* superset of previous */"
11464 msgstr "B<#include E<lt>netinet/ip.hE<gt> >/* 上記のスーパーセット */"
11466 #. type: Plain text
11467 #: build/C/man7/ip.7:49
11468 msgid "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
11469 msgstr "I<tcp_socket>B< = socket(AF_INET, SOCK_STREAM, 0);>"
11471 #. type: Plain text
11472 #: build/C/man7/ip.7:51
11473 msgid "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
11474 msgstr "I<udp_socket>B< = socket(AF_INET, SOCK_DGRAM, 0);>"
11476 #. type: Plain text
11477 #: build/C/man7/ip.7:53
11478 msgid "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
11479 msgstr "I<raw_socket>B< = socket(AF_INET, SOCK_RAW, >I<protocol>B<);>"
11481 #. FIXME has someone verified that 2.1 is really 1812 compliant?
11482 #. type: Plain text
11483 #: build/C/man7/ip.7:60
11485 "Linux implements the Internet Protocol, version 4, described in RFC\\ 791 "
11486 "and RFC\\ 1122. B<ip> contains a level 2 multicasting implementation "
11487 "conforming to RFC\\ 1112. It also contains an IP router including a packet "
11490 "Linux は RFC\\ 791 と RFC\\ 1122 で記述されている Internet Protocol, version "
11491 "4 を実装している。 B<ip> には RFC\\ 1112 に準拠した level 2 マルチキャストの"
11492 "実装が含まれている。 またパケットフィルタ機能を含む IP ルーターも実装されてい"
11495 #. type: Plain text
11496 #: build/C/man7/ip.7:64
11498 "The programming interface is BSD-sockets compatible. For more information "
11499 "on sockets, see B<socket>(7)."
11501 "プログラミング・インターフェースは BSD ソケットと互換である。 ソケットに関す"
11502 "るより詳細な情報は B<socket>(7) を参照のこと。"
11504 #. type: Plain text
11505 #: build/C/man7/ip.7:95
11507 "An IP socket is created by calling the B<socket>(2) function as B<socket"
11508 "(AF_INET, >I<socket_type>B<, >I<protocol>B<)>. Valid socket types are "
11509 "B<SOCK_STREAM> to open a B<tcp>(7) socket, B<SOCK_DGRAM> to open a B<udp>"
11510 "(7) socket, or B<SOCK_RAW> to open a B<raw>(7) socket to access the IP "
11511 "protocol directly. I<protocol> is the IP protocol in the IP header to be "
11512 "received or sent. The only valid values for I<protocol> are 0 and "
11513 "B<IPPROTO_TCP> for TCP sockets, and 0 and B<IPPROTO_UDP> for UDP sockets. "
11514 "For B<SOCK_RAW> you may specify a valid IANA IP protocol defined in RFC\\ "
11515 "1700 assigned numbers."
11517 "IP ソケットは、 B<socket>(2) 関数を B<socket(AF_INET, >I<socket_type>B<, >\n"
11518 "I<protocol>B<)> のように呼び出すことで生成される。指定できるソケットタイプ"
11520 "3 つあり、 B<tcp>(7) ソケットをオープンする場合 B<SOCK_STREAM>、 B<udp>(7)\n"
11521 "ソケットをオープンする場合 B<SOCK_DGRAM>、 IP プロトコルに直接アクセスする\n"
11522 "ために B<raw>(7) ソケットをオープンする場合には B<SOCK_RAW> である。 \n"
11523 "I<protocol> は送受信される IP ヘッダに書かれる IP プロトコルである。\n"
11524 "指定できる値は、 TCP ソケットには 0 か B<IPPROTO_TCP>、 UDP ソケットには \n"
11525 "0 か B<IPPROTO_UDP> に限られる。 B<SOCK_RAW> に対しては、 RFC\\ 1700 で定義\n"
11526 "されている有効な IANA IP プロトコルを、 割り当てられている番号で指定する\n"
11529 #. type: Plain text
11530 #: build/C/man7/ip.7:117
11532 "When a process wants to receive new incoming packets or connections, it "
11533 "should bind a socket to a local interface address using B<bind>(2). In this "
11534 "case, only one IP socket may be bound to any given local (address, port) "
11535 "pair. When B<INADDR_ANY> is specified in the bind call, the socket will be "
11536 "bound to I<all> local interfaces. When B<listen>(2) is called on an "
11537 "unbound socket, the socket is automatically bound to a random free port with "
11538 "the local address set to B<INADDR_ANY>. When B<connect>(2) is called on an "
11539 "unbound socket, the socket is automatically bound to a random free port or "
11540 "to a usable shared port with the local address set to B<INADDR_ANY>."
11542 "あるプロセスで、やってくるパケットを受信したり 接続要求を受けたりしたい場合に"
11543 "は、 そのプロセスはローカルなインターフェースアドレスに、 B<bind>(2) を用いて"
11544 "ソケットをバインドしなければならない。 この場合、 ローカルの「アドレスとポー"
11545 "ト」のペアに対してバインドできる IP ソケットは一つだけである。 B<bind>(2) の"
11546 "呼び出しで B<INADDR_ANY> が指定されていた場合は、 ソケットは I<すべて> のロー"
11547 "カルインターフェースにバインドされる。 B<listen>(2) がバインドされていないソ"
11548 "ケットに対してコールされると、 そのソケットは、 ローカルポートはランダムに選"
11549 "択された空いているポートで、 ローカルアドレスは B<INADDR_ANY> で自動的にバイ"
11550 "ンドされる。 B<connect>(2) がバインドされていないソケットに対してコールされる"
11551 "と、 そのソケットは、 ローカルポートはランダムに選択された空いているポートか"
11552 "未使用の共有ポートで、 ローカルアドレスは B<INADDR_ANY> で自動的にバインドさ"
11555 #. type: Plain text
11556 #: build/C/man7/ip.7:123
11558 "A TCP local socket address that has been bound is unavailable for some time "
11559 "after closing, unless the B<SO_REUSEADDR> flag has been set. Care should be "
11560 "taken when using this flag as it makes TCP less reliable."
11562 "B<SO_REUSEADDR> フラグがセットされていない場合には、 バインドされていた TCP "
11563 "ローカルソケットアドレスは クローズされた後しばらくの間使えなくなる。 "
11564 "B<SO_REUSEADDR> フラグを使うと TCP の信頼性を低下させるので、 使うときには注"
11567 #. type: Plain text
11568 #: build/C/man7/ip.7:134
11570 "An IP socket address is defined as a combination of an IP interface address "
11571 "and a 16-bit port number. The basic IP protocol does not supply port "
11572 "numbers, they are implemented by higher level protocols like B<udp>(7) and "
11573 "B<tcp>(7). On raw sockets I<sin_port> is set to the IP protocol."
11575 "IP ソケットアドレスは、 IP インターフェースアドレスと 16ビットのポート番号の"
11576 "組み合わせで定義される。 IP プロトコルそのものはポート番号を扱わない。 ポート"
11577 "番号は、 B<udp>(7) や B<tcp>(7) といった、上位のプロトコルで実装される。 "
11578 "raw ソケットでは、 I<sin_port> が IP プロトコルにセットされる。"
11580 #. type: Plain text
11581 #: build/C/man7/ip.7:142
11584 "struct sockaddr_in {\n"
11585 " sa_family_t sin_family; /* address family: AF_INET */\n"
11586 " in_port_t sin_port; /* port in network byte order */\n"
11587 " struct in_addr sin_addr; /* internet address */\n"
11590 "struct sockaddr_in {\n"
11591 " sa_family_t sin_family; /* address family: AF_INET */\n"
11592 " in_port_t sin_port; /* port in network byte order */\n"
11593 " struct in_addr sin_addr; /* internet address */\n"
11596 #. type: Plain text
11597 #: build/C/man7/ip.7:147
11600 "/* Internet address. */\n"
11601 "struct in_addr {\n"
11602 " uint32_t s_addr; /* address in network byte order */\n"
11605 "/* Internet address. */\n"
11606 "struct in_addr {\n"
11607 " uint32_t s_addr; /* address in network byte order */\n"
11610 #. type: Plain text
11611 #: build/C/man7/ip.7:172
11613 "I<sin_family> is always set to B<AF_INET>. This is required; in Linux 2.2 "
11614 "most networking functions return B<EINVAL> when this setting is missing. "
11615 "I<sin_port> contains the port in network byte order. The port numbers below "
11616 "1024 are called I<privileged ports> (or sometimes: I<reserved ports>). Only "
11617 "privileged processes (i.e., those having the B<CAP_NET_BIND_SERVICE> "
11618 "capability) may B<bind>(2) to these sockets. Note that the raw IPv4 "
11619 "protocol as such has no concept of a port, they are implemented only by "
11620 "higher protocols like B<tcp>(7) and B<udp>(7)."
11622 "I<sin_familiy> には常に B<AF_INET> をセットする。これは必須である。 Linux "
11623 "2.2 では、このセットを忘れると ほとんどのネットワーク関数は B<EINVAL> を返す"
11624 "ようになっている。 I<sin_port> にはポート番号をネットワークバイトオーダーで指"
11625 "定する。 1024 未満のポート番号は I<特権ポート (privileged ports)> と呼ばれる "
11626 "(I<予約ポート (reserved ports)> とも時々呼ばれる)。 特権プロセス "
11627 "(B<CAP_NET_BIND_SERVICE> ケーパビリティを持つプロセス) 以外のプロセスは、これ"
11628 "らのポートには B<bind>(2) できない。 IPv4 プロトコルそのものにはポートに関す"
11629 "る概念がない。ポートが実装されるのは、 B<tcp>(7) や B<udp>(7) といった、上位"
11632 #. type: Plain text
11633 #: build/C/man7/ip.7:191
11635 "I<sin_addr> is the IP host address. The I<s_addr> member of I<struct "
11636 "in_addr> contains the host interface address in network byte order. "
11637 "I<in_addr> should be assigned one of the B<INADDR_*> values (e.g., "
11638 "B<INADDR_ANY>) or set using the B<inet_aton>(3), B<inet_addr>(3), "
11639 "B<inet_makeaddr>(3) library functions or directly with the name resolver "
11640 "(see B<gethostbyname>(3))."
11642 "I<sin_addr> は IP ホストアドレスである。 I<struct in_addr> の I<s_addr> \n"
11643 "メンバには、ホストのインターフェースアドレスを ネットワークバイトオーダーで\n"
11644 "指定する。 I<in_addr> は、B<INADDR_*> の一つ (例えば B<INADDR_ANY>) を代入す"
11646 "ライブラリ関数 B<inet_aton>(3), B<inet_addr>(3), B<inet_makeaddr>(3) を用い"
11648 "あるいは名前解決機構 (name resolver) を直接用いる、のどれかで設定すべきであ"
11650 "(B<gethostbyname>(3) を見よ)。"
11652 #. Leave a loophole for XTP @)
11653 #. type: Plain text
11654 #: build/C/man7/ip.7:203
11656 "IPv4 addresses are divided into unicast, broadcast and multicast addresses. "
11657 "Unicast addresses specify a single interface of a host, broadcast addresses "
11658 "specify all hosts on a network and multicast addresses address all hosts in "
11659 "a multicast group. Datagrams to broadcast addresses can be sent or received "
11660 "only when the B<SO_BROADCAST> socket flag is set. In the current "
11661 "implementation, connection-oriented sockets are allowed to use only unicast "
11664 "IPv4 アドレスには、ユニキャストアドレス、 ブロードキャストアドレス、マルチ"
11665 "キャストアドレスがある。 ユニキャストアドレスは、あるホストの一つのアドレスを"
11666 "指定する。 ブロードキャストアドレスは、あるネットワーク上の全てのホストを指定"
11667 "する。 マルチキャストアドレスは、マルチキャストグループに所属する 全てのホス"
11668 "トを指定する。ブロードキャストアドレスへのデータグラムは、 B<SO_BROADCAST> ソ"
11669 "ケットフラグがセットされていないと送信・受信できない。 現在の実装では、接続指"
11670 "向のソケットにはユニキャストアドレスしか使えない。"
11672 #. type: Plain text
11673 #: build/C/man7/ip.7:211
11675 "Note that the address and the port are always stored in network byte order. "
11676 "In particular, this means that you need to call B<htons>(3) on the number "
11677 "that is assigned to a port. All address/port manipulation functions in the "
11678 "standard library work in network byte order."
11680 "アドレスとポートは常にネットワークバイトオーダーで格納されることに注意せよ。 "
11681 "具体的には、ポートを指定する数値には B<htons>(3) を呼び出す必要がある。 標準"
11682 "ライブラリにあるアドレス/ポート操作関数は すべてネットワークバイトオーダーで"
11685 #. type: Plain text
11686 #: build/C/man7/ip.7:224
11688 "There are several special addresses: B<INADDR_LOOPBACK> (127.0.0.1) always "
11689 "refers to the local host via the loopback device; B<INADDR_ANY> (0.0.0.0) "
11690 "means any address for binding; B<INADDR_BROADCAST> (255.255.255.255) means "
11691 "any host and has the same effect on bind as B<INADDR_ANY> for historical "
11694 "特別なアドレスがいくつか存在する: B<INADDR_LOOPBACK>(127.0.0.1) は loopback "
11695 "デバイスを通して常にローカルなホストを参照する。 B<INADDR_ANY>(0.0.0.0) は任"
11696 "意のアドレスを意味し、バインド用である。 B<INADDR_BROADCAST>"
11697 "(255.255.255.255) は任意のホストを意味し、歴史的理由から、バインドの際には "
11698 "B<INADDR_ANY> と同じ効果になる。"
11700 #. or SOL_IP on Linux
11701 #. type: Plain text
11702 #: build/C/man7/ip.7:233
11704 "IP supports some protocol-specific socket options that can be set with "
11705 "B<setsockopt>(2) and read with B<getsockopt>(2). The socket option level "
11706 "for IP is B<IPPROTO_IP>. A boolean integer flag is zero when it is false, "
11709 "IP にはプロトコル固有のソケットオプションがいくつか存在し、 B<setsockopt>"
11710 "(2) で設定が、 B<getsockopt>(2) で取得ができる。 IP のソケットオプションレ"
11711 "ベルは B<IPPROTO_IP> である。 ブール整数値のフラグでは、 0 は偽、それ以外は真"
11715 #: build/C/man7/ip.7:233
11717 msgid "B<IP_ADD_MEMBERSHIP> (since Linux 1.2)"
11718 msgstr "B<IP_ADD_MEMBERSHIP> (Linux 1.2 以降)"
11720 #. type: Plain text
11721 #: build/C/man7/ip.7:239
11722 msgid "Join a multicast group. Argument is an I<ip_mreqn> structure."
11723 msgstr "マルチキャストグループに参加する。 引き数は I<ip_mreqn> 構造体である。"
11725 #. type: Plain text
11726 #: build/C/man7/ip.7:249
11729 "struct ip_mreqn {\n"
11730 " struct in_addr imr_multiaddr; /* IP multicast group\n"
11732 " struct in_addr imr_address; /* IP address of local\n"
11734 " int imr_ifindex; /* interface index */\n"
11737 "struct ip_mreqn {\n"
11738 " struct in_addr imr_multiaddr; /* IP multicast group\n"
11740 " struct in_addr imr_address; /* IP address of local\n"
11742 " int imr_ifindex; /* interface index */\n"
11745 #. (i.e., within the 224.0.0.0-239.255.255.255 range)
11746 #. type: Plain text
11747 #: build/C/man7/ip.7:270
11749 "I<imr_multiaddr> contains the address of the multicast group the application "
11750 "wants to join or leave. It must be a valid multicast address (or "
11751 "B<setsockopt>(2) fails with the error B<EINVAL>). I<imr_address> is the "
11752 "address of the local interface with which the system should join the "
11753 "multicast group; if it is equal to B<INADDR_ANY>, an appropriate interface "
11754 "is chosen by the system. I<imr_ifindex> is the interface index of the "
11755 "interface that should join/leave the I<imr_multiaddr> group, or 0 to "
11756 "indicate any interface."
11758 "I<imr_multiaddr> には、アプリケーションが参加または脱退したい マルチキャスト"
11759 "グループのアドレスが入る。 指定するアドレスは有効なマルチキャストアドレスでな"
11760 "ければならない (さもなければ B<setsockopt>(2) がエラー B<EINVAL> で失敗す"
11761 "る)。 I<imr_address> はシステムがマルチキャストグループに参加する際に用いる "
11762 "ローカルなインターフェースのアドレスである。 これが B<INADDR_ANY> であった場"
11763 "合には、適切なインターフェースがシステムによって選択される。 I<imr_ifindex> "
11764 "は I<imr_multiaddr> グループに参加/脱退するインターフェースの interface "
11765 "index である。 どのインターフェースでもよい場合は 0 にする。"
11767 #. type: Plain text
11768 #: build/C/man7/ip.7:285
11770 "The I<ip_mreqn> structure is available only since Linux 2.2. For "
11771 "compatibility, the old I<ip_mreq> structure (present since Linux 1.2) is "
11772 "still supported; it differs from I<ip_mreqn> only by not including the "
11773 "I<imr_ifindex> field. Only valid as a B<setsockopt>(2)."
11775 "I<ip_mreqn> 構造体は Linux 2.2 以降でのみ利用可能である。互換性のため、 古い "
11776 "I<ip_mreq> 構造体 (Linux 1.2 以降で存在する) もまだサポートされている。 "
11777 "I<ip_mreqn> との違いは、 I<imr_ifindex> フィールドを含まないことだけである。 "
11778 "B<setsockopt>(2) でのみ使える。"
11781 #: build/C/man7/ip.7:285
11783 msgid "B<IP_ADD_SOURCE_MEMBERSHIP> (since Linux 2.4.22 / 2.5.68)"
11784 msgstr "B<IP_ADD_SOURCE_MEMBERSHIP> (Linux 2.4.22 以降 / 2.5.68 以降)"
11786 #. type: Plain text
11787 #: build/C/man7/ip.7:292
11789 "Join a multicast group and allow receiving data only from a specified "
11790 "source. Argument is an I<ip_mreq_source> structure."
11792 "マルチキャストグループに参加、指定された送信元からのデータの受信のみを許可す"
11793 "る。 引き数は I<ip_mreq_source> 構造体である。"
11795 #. type: Plain text
11796 #: build/C/man7/ip.7:303
11799 "struct ip_mreq_source {\n"
11800 " struct in_addr imr_multiaddr; /* IP multicast group\n"
11802 " struct in_addr imr_interface; /* IP address of local\n"
11804 " struct in_addr imr_sourceaddr; /* IP address of\n"
11805 " multicast source */\n"
11808 "struct ip_mreq_source {\n"
11809 " struct in_addr imr_multiaddr; /* IP multicast group\n"
11811 " struct in_addr imr_interface; /* IP address of local\n"
11813 " struct in_addr imr_sourceaddr; /* IP address of\n"
11814 " multicast source */\n"
11817 #. type: Plain text
11818 #: build/C/man7/ip.7:324
11820 "The I<ip_mreq_source> structure is similar to I<ip_mreqn> described under "
11821 "B<IP_ADD_MEMBERSIP>. The I<imr_multiaddr> field contains the address of the "
11822 "multicast group the application wants to join or leave. The "
11823 "I<imr_interface> field is the address of the local interface with which the "
11824 "system should join the multicast group. Finally, the I<imr_sourceaddr> "
11825 "field contains the address of the source the application wants to receive "
11828 "I<ip_mreq_source> 構造体は B<IP_ADD_MEMBERSIP> の項で説明した I<ip_mreqn> に"
11829 "似ている。 I<imr_multiaddr> フィールドには、アプリケーションが参加または脱退"
11830 "したいマルチキャストグループのアドレスが入る。 I<imr_interface> フィールド"
11831 "は、 マルチキャストグループに参加する際に システムが使用すべきローカルイン"
11832 "ターフェースのアドレスである。 I<imr_sourceaddr> フィールドには、アプリケー"
11833 "ションがデータを受信したい送信元のアドレスが入る。"
11835 #. type: Plain text
11836 #: build/C/man7/ip.7:327
11838 "This option can be used multiple times to allow receiving data from more "
11841 "このオプションを複数回使うことで、 複数の送信元からのデータ受信を許可すること"
11845 #: build/C/man7/ip.7:327
11847 msgid "B<IP_BLOCK_SOURCE> (since Linux 2.4.22 / 2.5.68)"
11848 msgstr "B<IP_BLOCK_SOURCE> (since Linux 2.4.22 以降 / 2.5.68 以降)"
11850 #. type: Plain text
11851 #: build/C/man7/ip.7:335
11853 "Stop receiving multicast data from a specific source in a given group. This "
11854 "is valid only after the application has subscribed to the multicast group "
11855 "using either B<IP_ADD_MEMBERSHIP> or B<IP_ADD_SOURCE_MEMBERSHIP>."
11857 "指定したグループで、指定した送信元からのマルチキャストデータの受信を停止す"
11858 "る。 このオプションは、アプリケーションが B<IP_ADD_MEMBERSHIP> か "
11859 "B<IP_ADD_SOURCE_MEMBERSHIP> のいずれかを使ってマルチキャストグループに参加し"
11862 #. type: Plain text
11863 #: build/C/man7/ip.7:340 build/C/man7/ip.7:362 build/C/man7/ip.7:923
11865 "Argument is an I<ip_mreq_source> structure as described under "
11866 "B<IP_ADD_SOURCE_MEMBERSHIP>."
11868 "引き数は I<ip_mreq_source> 構造体である。 B<IP_ADD_SOURCE_MEMBERSHIP> の項に"
11872 #: build/C/man7/ip.7:340
11874 msgid "B<IP_DROP_MEMBERSHIP> (since Linux 1.2)"
11875 msgstr "B<IP_DROP_MEMBERSHIP> (Linux 1.2 以降)"
11877 #. type: Plain text
11878 #: build/C/man7/ip.7:349
11880 "Leave a multicast group. Argument is an I<ip_mreqn> or I<ip_mreq> structure "
11881 "similar to B<IP_ADD_MEMBERSHIP>."
11883 "マルチキャストグループから抜ける。引き数は B<IP_ADD_MEMBERSHIP> と同様に "
11884 "I<ip_mreqn> または I<ip_mreq> 構造体である。"
11887 #: build/C/man7/ip.7:349
11889 msgid "B<IP_DROP_SOURCE_MEMBERSHIP> (since Linux 2.4.22 / 2.5.68)"
11890 msgstr "B<IP_DROP_SOURCE_MEMBERSHIP> (Linux 2.4.22 以降 / 2.5.68 以降)"
11892 #. type: Plain text
11893 #: build/C/man7/ip.7:357
11895 "Leave a source-specific group\\(emthat is, stop receiving data from a given "
11896 "multicast group that come from a given source. If the application has "
11897 "subscribed to multiple sources within the same group, data from the "
11898 "remaining sources will still be delivered. To stop receiving data from all "
11899 "sources at once, use B<IP_LEAVE_GROUP>."
11901 "送信元を指定してグループから抜ける。 つまり、 指定したマルチキャストグループ"
11902 "の指定された送信元からのデータ受信を停止する。 アプリケーションは同じマルチ"
11903 "キャストグループで複数の送信元を購読 (subscribe) している場合には、 残りの送"
11904 "信元からのデータの受信は引き続き配信される。 すべての送信元からのデータ受信を"
11905 "一度で停止するには B<IP_LEAVE_GROUP> を使うこと。"
11908 #: build/C/man7/ip.7:362
11910 msgid "B<IP_FREEBIND> (since Linux 2.4)"
11911 msgstr "B<IP_FREEBIND> (Linux 2.4 以降)"
11913 #. Precisely: 2.4.0-test10
11914 #. type: Plain text
11915 #: build/C/man7/ip.7:375
11917 "If enabled, this boolean option allows binding to an IP address that is "
11918 "nonlocal or does not (yet) exist. This permits listening on a socket, "
11919 "without requiring the underlying network interface or the specified dynamic "
11920 "IP address to be up at the time that the application is trying to bind to "
11921 "it. This option is the per-socket equivalent of the I<ip_nonlocal_bind> I</"
11922 "proc> interface described below."
11924 "このブール値のオプションを有効にすると、ローカルではない IP アドレスや存在\n"
11925 "しない IP アドレスをバインドできるようになる。これを使うと、対応するネット\n"
11926 "ワークインターフェイスがなかったり、アプリケーションがソケットをバインドしよ"
11928 "する時点で特定の動的 IP アドレスが有効になっていなかったりしても、ソケット"
11930 "接続待ち状態 (listening) にできるようになる。\n"
11931 "このオプションは、下記に説明がある I<ip_nonlocal_bind> I</proc> インターフェ"
11936 #: build/C/man7/ip.7:375
11938 msgid "B<IP_HDRINCL> (since Linux 2.0)"
11939 msgstr "B<IP_HDRINCL> (Linux 2.0 以降)"
11941 #. type: Plain text
11942 #: build/C/man7/ip.7:391
11944 "If enabled, the user supplies an IP header in front of the user data. Only "
11945 "valid for B<SOCK_RAW> sockets. See B<raw>(7) for more information. When "
11946 "this flag is enabled the values set by B<IP_OPTIONS>, B<IP_TTL> and "
11947 "B<IP_TOS> are ignored."
11949 "有効になっていると、ユーザは IP ヘッダをユーザーデータの前に与える。 "
11950 "B<SOCK_RAW> ソケットでのみ有効である。詳細は B<raw>(7) を見よ。このフラグが"
11951 "有効になっていると、 B<IP_OPTIONS>, B<IP_TTL>, B<IP_TOS> は無視される。"
11954 #: build/C/man7/ip.7:391
11956 msgid "B<IP_MSFILTER> (since Linux 2.4.22 / 2.5.68)"
11957 msgstr "B<IP_MSFILTER> (since Linux 2.4.22 以降 / 2.5.68 以降)"
11959 #. type: Plain text
11960 #: build/C/man7/ip.7:397
11962 "This option provides access to the advanced full-state filtering API. "
11963 "Argument is an I<ip_msfilter> structure."
11965 "このオプションを使うと、 高度なフィルタリング API へアクセスできる。 この "
11966 "API ではすべての状態にアクセスできる。 引き数は I<ip_msfilter> 構造体である。"
11968 #. type: Plain text
11969 #: build/C/man7/ip.7:406
11972 "struct ip_msfilter {\n"
11973 " struct in_addr imsf_multiaddr; /* IP multicast group\n"
11975 " struct in_addr imsf_interface; /* IP address of local\n"
11977 " uint32_t imsf_fmode; /* Filter-mode */\n"
11979 "struct ip_msfilter {\n"
11980 " struct in_addr imsf_multiaddr; /* IP multicast group\n"
11982 " struct in_addr imsf_interface; /* IP address of local\n"
11984 " uint32_t imsf_fmode; /* Filter-mode */\n"
11986 #. type: Plain text
11987 #: build/C/man7/ip.7:412
11990 " uint32_t imsf_numsrc; /* Number of sources in\n"
11991 " the following array */\n"
11992 " struct in_addr imsf_slist[1]; /* Array of source\n"
11996 " uint32_t imsf_numsrc; /* Number of sources in\n"
11997 " the following array */\n"
11998 " struct in_addr imsf_slist[1]; /* Array of source\n"
12002 #. type: Plain text
12003 #: build/C/man7/ip.7:427
12005 "There are two macros, B<MCAST_INCLUDE> and B<MCAST_EXCLUDE>, which can be "
12006 "used to specify the filtering mode. Additionally, the B<IP_MSFILTER_SIZE>"
12007 "(n) macro exists to determine how much memory is needed to store "
12008 "I<ip_msfilter> structure with I<n> sources in the source list."
12010 "B<MCAST_INCLUDE> と B<MCAST_EXCLUDE> の 2 つのマクロがあり、 フィルタリング"
12011 "モードを指定するのに使用できる。 また、 B<IP_MSFILTER_SIZE>(n) マクロがあ"
12012 "り、 送信元リストに I<n> 個の送信元が入った I<ip_msfilter> 構造体を格納するの"
12013 "に必要なメモリ量を判定することができる。"
12015 #. type: Plain text
12016 #: build/C/man7/ip.7:430
12018 "For the full description of multicast source filtering refer to RFC 3376."
12019 msgstr "マルチキャスト送信元フィルタリングの全容は RFC\\ 3376 を参照のこと。"
12022 #: build/C/man7/ip.7:430
12024 msgid "B<IP_MTU> (since Linux 2.2)"
12025 msgstr "B<IP_MTU> (Linux 2.2 以降)"
12027 #. Precisely: 2.1.124
12028 #. type: Plain text
12029 #: build/C/man7/ip.7:438
12031 "Retrieve the current known path MTU of the current socket. Valid only when "
12032 "the socket has been connected. Returns an integer. Only valid as a "
12033 "B<getsockopt>(2)."
12035 "ソケットの、既知の path MTU を取得する。 ソケットが接続している場合のみ有効で"
12036 "ある。 B<getsockopt>(2) でのみ使える。"
12039 #: build/C/man7/ip.7:438
12041 msgid "B<IP_MTU_DISCOVER> (since Linux 2.2)"
12042 msgstr "B<IP_MTU_DISCOVER> (Linux 2.2 以降)"
12044 #. Precisely: 2.1.124
12045 #. type: Plain text
12046 #: build/C/man7/ip.7:459
12048 "Set or receive the Path MTU Discovery setting for a socket. When enabled, "
12049 "Linux will perform Path MTU Discovery as defined in RFC\\ 1191 on "
12050 "B<SOCK_STREAM> sockets. For non-B<SOCK_STREAM> sockets, B<IP_PMTUDISC_DO> "
12051 "forces the don't-fragment flag to be set on all outgoing packets. It is the "
12052 "user's responsibility to packetize the data in MTU-sized chunks and to do "
12053 "the retransmits if necessary. The kernel will reject (with B<EMSGSIZE>) "
12054 "datagrams that are bigger than the known path MTU. B<IP_PMTUDISC_WANT> will "
12055 "fragment a datagram if needed according to the path MTU, or will set the "
12056 "don't-fragment flag otherwise."
12058 "ソケットの Path MTU Discovery の設定をセット・取得する。\n"
12059 "有効になっていると、Linux は B<SOCK_STREAM> ソケットに対して\n"
12060 "RFC\\ 1191 で定義されている Path MTU Discovery を行う。\n"
12061 "B<SOCK_STREAM> でないソケットについては、 B<IP_PMTUDISC_DO> をセットする"
12063 "全ての送信パケットでフラグメント不許可フラグ (don't-fragment flag) が必ず\n"
12064 "セットされるようになる。 B<SOCK_STREAM> でないソケットでは、\n"
12065 "パケットを MTU のサイズの塊に分割したり、必要に応じて再送したりするのは、\n"
12066 "ユーザが責任を持って行う必要がある。\n"
12067 "既知の Path MTU よりも大きなデータグラムの送信が要求されると、\n"
12068 "カーネルは (B<EMSGSIZE> で) 送信を拒否する。\n"
12069 "B<IP_PMTUDISC_WANT> の場合は、 Path MTU に基づいて必要であればデータグラム\n"
12070 "の分割が行われ、それ以外の場合はフラグメント不許可フラグがセットされる。"
12072 #. type: Plain text
12073 #: build/C/man7/ip.7:467
12075 "The system-wide default can be toggled between B<IP_PMTUDISC_WANT> and "
12076 "B<IP_PMTUDISC_DONT> by writing (respectively, zero and nonzero values) to "
12077 "the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file."
12079 "システム全体のデフォルトは B<IP_PMTUDISC_WANT> と B<IP_PMTUDISC_DONT> の\n"
12080 "どちらかに設定することができる。設定の変更は、\n"
12081 "I</proc/sys/net/ipv4/ip_no_pmtu_disc> ファイルに、0 (B<IP_PMTUDISC_WANT>) "
12083 "0 以外 (B<IP_PMTUDISC_DONT>) を書き込むことで行う。"
12086 #: build/C/man7/ip.7:471
12088 msgid "Path MTU discovery value:Meaning\n"
12089 msgstr "Path MTU discovery 値:意味\n"
12092 #: build/C/man7/ip.7:472
12094 msgid "IP_PMTUDISC_WANT:Use per-route settings.\n"
12095 msgstr "IP_PMTUDISC_WANT:ルートごとの設定を用いる。\n"
12098 #: build/C/man7/ip.7:473
12100 msgid "IP_PMTUDISC_DONT:Never do Path MTU Discovery.\n"
12101 msgstr "IP_PMTUDISC_DONT:Path MTU Discovery を行わない。\n"
12104 #: build/C/man7/ip.7:474
12106 msgid "IP_PMTUDISC_DO:Always do Path MTU Discovery.\n"
12107 msgstr "IP_PMTUDISC_DO:常に Path MTU Discovery を行う。\n"
12110 #: build/C/man7/ip.7:475
12112 msgid "IP_PMTUDISC_PROBE:Set DF but ignore Path MTU.\n"
12113 msgstr "IP_PMTUDISC_PROBE:DFビットをセットするが、Path MTU を無視する。\n"
12115 #. type: Plain text
12116 #: build/C/man7/ip.7:493
12118 "When PMTU discovery is enabled, the kernel automatically keeps track of the "
12119 "path MTU per destination host. When it is connected to a specific peer with "
12120 "B<connect>(2), the currently known path MTU can be retrieved conveniently "
12121 "using the B<IP_MTU> socket option (e.g., after an B<EMSGSIZE> error "
12122 "occurred). The path MTU may change over time. For connectionless sockets "
12123 "with many destinations, the new MTU for a given destination can also be "
12124 "accessed using the error queue (see B<IP_RECVERR>). A new error will be "
12125 "queued for every incoming MTU update."
12127 "path MTU discovery が有効になっていると、カーネルは宛先ホストごとに 自動的"
12129 "path MTU を処理する。特定の相手に B<connect>(2) で接続した場合には、\n"
12130 "B<IP_MTU> ソケットオプションを用いれば、既知の path MTU の取得に便利である\n"
12131 "(たとえば B<EMSGSIZE> エラーが起きた後など)。 path MTU は時間とともに変化す"
12133 "かもしれない。 宛先がたくさんあるコネクションレスなソケットでは、 与えられ"
12135 "宛先に対する新しい MTU にも、 エラーキューを用いてアクセスすることができる\n"
12136 "(B<IP_RECVERR> を見よ)。 MTU 更新が到着するごとに、新たなエラーがキューイン"
12140 #. type: Plain text
12141 #: build/C/man7/ip.7:498
12143 "While MTU discovery is in progress, initial packets from datagram sockets "
12144 "may be dropped. Applications using UDP should be aware of this and not take "
12145 "it into account for their packet retransmit strategy."
12147 "MTU discovery の進行中には、データグラムソケットからの初期パケットは 到着しな"
12148 "いかもしれない。 UDP を用いるアプリケーションでは、 このことを気にかけてお"
12149 "き、 パケットの再送アルゴリズムにこの分を除外させるべきである。"
12151 #. FIXME this is an ugly hack
12152 #. type: Plain text
12153 #: build/C/man7/ip.7:503
12155 "To bootstrap the path MTU discovery process on unconnected sockets, it is "
12156 "possible to start with a big datagram size (up to 64K-headers bytes long) "
12157 "and let it shrink by updates of the path MTU."
12159 "接続していないソケットに対して path MTU discovery プロセスを立ち上げるには、 "
12160 "大きなデータグラムサイズ (最大 64K ヘッダバイト長) からはじめて、 path MTU が"
12161 "更新されるまでサイズを縮めていくことも可能である。"
12163 #. type: Plain text
12164 #: build/C/man7/ip.7:512
12166 "To get an initial estimate of the path MTU, connect a datagram socket to the "
12167 "destination address using B<connect>(2) and retrieve the MTU by calling "
12168 "B<getsockopt>(2) with the B<IP_MTU> option."
12170 "path MTU の値をまず見積もってみるには、宛先アドレスに B<connect>(2) を使って"
12171 "データグラムソケットを接続し、 B<getsockopt>(2) を B<IP_MTU> オプションとと"
12172 "もに呼び、 MTU を取得することである。"
12174 #. type: Plain text
12175 #: build/C/man7/ip.7:524
12177 "It is possible to implement RFC 4821 MTU probing with B<SOCK_DGRAM> or "
12178 "B<SOCK_RAW> sockets by setting a value of B<IP_PMTUDISC_PROBE> (available "
12179 "since Linux 2.6.22). This is also particularly useful for diagnostic tools "
12180 "such as B<tracepath>(8) that wish to deliberately send probe packets larger "
12181 "than the observed Path MTU."
12183 "B<IP_PMTUDISC_PROBE> (Linux 2.6.22 以降で利用可能) を設定することで、 "
12184 "B<SOCK_DGRAM> や B<SOCK_RAW> のソケットで RFC 4821 の MTU 探索を実装すること"
12185 "が可能である。 また、この機能は、 B<tracepath>(8) のような診断ツールで特に有"
12186 "用である。これらのツールでは、 観測された Path MTU よりも大きな探索パケットを"
12190 #: build/C/man7/ip.7:524
12192 msgid "B<IP_MULTICAST_ALL> (since Linux 2.6.31)"
12193 msgstr "B<IP_MULTICAST_ALL> (Linux 2.6.31 以降)"
12195 #. type: Plain text
12196 #: build/C/man7/ip.7:538
12198 "This option can be used to modify the delivery policy of multicast messages "
12199 "to sockets bound to the wildcard B<INADDR_ANY> address. The argument is a "
12200 "boolean integer (defaults to 1). If set to 1, the socket will receive "
12201 "messages from all the groups that have been joined globally on the whole "
12202 "system. Otherwise, it will deliver messages only from the groups that have "
12203 "been explicitly joined (for example via the B<IP_ADD_MEMBERSHIP> option) on "
12204 "this particular socket."
12206 "このオプションを使って、 マルチキャストメッセージの、 ワイルドカードの "
12207 "B<INADDR_ANY> アドレスにバインドされているソケットへの 配送ポリシーを変更する"
12208 "ことができる。 引き数はブート値の整数で、 デフォルト値は 1 である。 このオプ"
12209 "ションを 1 に設定されている場合、そのソケットでは、このシステムで参加している"
12210 "すべてのグループからのメッセージが受信される。 それ以外の場合は、そのソケット"
12211 "では、 そのソケットに対して (B<IP_ADD_MEMBERSHIP> などを使って) 明示的に参加"
12212 "が指定されたグループからのメッセージだけが受信される。"
12215 #: build/C/man7/ip.7:538
12217 msgid "B<IP_MULTICAST_IF> (since Linux 1.2)"
12218 msgstr "B<IP_MULTICAST_IF> (Linux 1.2 以降)"
12220 #. net: IP_MULTICAST_IF setsockopt now recognizes struct mreq
12221 #. Commit: 3a084ddb4bf299a6e898a9a07c89f3917f0713f7
12222 #. type: Plain text
12223 #: build/C/man7/ip.7:550
12225 "Set the local device for a multicast socket. Argument is an I<ip_mreqn> or "
12226 "I<ip_mreq> (since Linux 3.5) structure similar to B<IP_ADD_MEMBERSHIP>."
12228 "ローカルデバイスをマルチキャストソケットとして設定する。引き数は "
12229 "B<IP_ADD_MEMBERSHIP> と同様に I<ip_mreqn> 構造体か I<ip_mreq> 構造体 (Linux "
12232 #. type: Plain text
12233 #: build/C/man7/ip.7:554
12234 msgid "When an invalid socket option is passed, B<ENOPROTOOPT> is returned."
12235 msgstr "不正なソケットオプションが渡されると、 B<ENOPROTOOPT> が返される。"
12238 #: build/C/man7/ip.7:554
12240 msgid "B<IP_MULTICAST_LOOP> (since Linux 1.2)"
12241 msgstr "B<IP_MULTICAST_LOOP> (Linux 1.2 以降)"
12243 #. type: Plain text
12244 #: build/C/man7/ip.7:558
12246 "Set or read a boolean integer argument that determines whether sent "
12247 "multicast packets should be looped back to the local sockets."
12249 "マルチキャストパケットをローカルなソケットにループバックするかどうかを 定める"
12250 "ブール値の整数引き数を設定・取得する。"
12253 #: build/C/man7/ip.7:558
12255 msgid "B<IP_MULTICAST_TTL> (since Linux 1.2)"
12256 msgstr "B<IP_MULTICAST_TTL> (Linux 1.2 以降)"
12258 #. type: Plain text
12259 #: build/C/man7/ip.7:566
12261 "Set or read the time-to-live value of outgoing multicast packets for this "
12262 "socket. It is very important for multicast packets to set the smallest TTL "
12263 "possible. The default is 1 which means that multicast packets don't leave "
12264 "the local network unless the user program explicitly requests it. Argument "
12267 "このソケットから発信されるマルチキャストパケットの time-to-live 値を設定・取"
12268 "得する。 マルチキャストパケットに対しては、できるだけ小さな TTL に設定するこ"
12269 "とがとても重要である。デフォルトは 1 で、 ユーザープログラムが明示的に要求し"
12270 "ない限り マルチキャストパケットはローカルなネットワークから出ないことにな"
12274 #: build/C/man7/ip.7:566
12276 msgid "B<IP_NODEFRAG> (since Linux 2.6.36)"
12277 msgstr "B<IP_NODEFRAG> (Linux 2.6.36 以降)"
12279 #. type: Plain text
12280 #: build/C/man7/ip.7:574
12282 "If enabled (argument is nonzero), the reassembly of outgoing packets is "
12283 "disabled in the netfilter layer. This option is valid only for B<SOCK_RAW> "
12284 "sockets. The argument is an integer."
12286 "有効 (引き数が 0 以外の場合) になっていると、netfilter 層での出力パケットの\n"
12287 "再構築 (reassembly) が行われなくなる。このオプションは B<SOCK_RAW> ソケット\n"
12288 "においてのみ有効である。引き数は整数である。"
12291 #: build/C/man7/ip.7:574
12293 msgid "B<IP_OPTIONS> (since Linux 2.0)"
12294 msgstr "B<IP_OPTIONS> (Linux 2.0 以降)"
12296 #. Precisely: 1.3.30
12297 #. type: Plain text
12298 #: build/C/man7/ip.7:603
12300 "Set or get the IP options to be sent with every packet from this socket. "
12301 "The arguments are a pointer to a memory buffer containing the options and "
12302 "the option length. The B<setsockopt>(2) call sets the IP options "
12303 "associated with a socket. The maximum option size for IPv4 is 40 bytes. "
12304 "See RFC\\ 791 for the allowed options. When the initial connection request "
12305 "packet for a B<SOCK_STREAM> socket contains IP options, the IP options will "
12306 "be set automatically to the options from the initial packet with routing "
12307 "headers reversed. Incoming packets are not allowed to change options after "
12308 "the connection is established. The processing of all incoming source "
12309 "routing options is disabled by default and can be enabled by using the "
12310 "I<accept_source_route> I</proc> interface. Other options like timestamps "
12311 "are still handled. For datagram sockets, IP options can be only set by the "
12312 "local user. Calling B<getsockopt>(2) with B<IP_OPTIONS> puts the current "
12313 "IP options used for sending into the supplied buffer."
12315 "このソケットから送られるパケット全てに付随する IP オプションを 設定・取得す"
12316 "る。オプションを保存しているメモリバッファへのポインタと オプションの長さとを"
12317 "引き数に取る。 B<setsockopt>(2) を呼び出すと、ソケットに関連づけられる IP オ"
12318 "プションを設定できる。 IPv4 におけるオプションのサイズの最大値は 40 バイトで"
12319 "ある。 用いることのできるオプションについては RFC\\ 791 を見よ。 "
12320 "B<SOCK_STREAM> ソケットに対する初期接続要求パケットに IP オプションが含まれて"
12321 "いると、 ルーティングヘッダを付けて戻されてくる初期パケットの IP オプションに"
12322 "同じオプションがセットされる。接続が確立された後、 やってきたパケットのオプ"
12323 "ションを変更することはできない。 デフォルトでは。外部から受信したパケットの全"
12324 "ての source routing オプション の処理は無効となっており、 I</proc> インタ"
12325 "フェースの I<accept_source_route> を使うとこれを有効にできる。これを無効にし"
12326 "ていても timestamps など の他のオプションの処理は行われる。データグラムソケッ"
12327 "トでは、 IP オプションはローカルユーザーしか設定できない。 B<getsockopt>(2) "
12328 "を B<IP_OPTIONS> をつけて呼ぶと、現在送信に用いられている IP オプションを 引"
12329 "き数に与えたバッファに取得できる。"
12332 #: build/C/man7/ip.7:603
12334 msgid "B<IP_PKTINFO> (since Linux 2.2)"
12335 msgstr "B<IP_PKTINFO> (Linux 2.2 以降)"
12337 #. Precisely: 2.1.68
12338 #. type: Plain text
12339 #: build/C/man7/ip.7:620
12341 "Pass an B<IP_PKTINFO> ancillary message that contains a I<pktinfo> structure "
12342 "that supplies some information about the incoming packet. This only works "
12343 "for datagram oriented sockets. The argument is a flag that tells the socket "
12344 "whether the B<IP_PKTINFO> message should be passed or not. The message "
12345 "itself can only be sent/retrieved as control message with a packet using "
12346 "B<recvmsg>(2) or B<sendmsg>(2)."
12348 "B<IP_PKTINFO> 補助メッセージを渡す。これには到着パケットに関する情報を提供す"
12349 "る I<pktinfo> 構造体が含まれている。 データグラム指向のソケットでしか動作しな"
12350 "い。 引き数は B<IP_PKTINFO> メッセージを通過させるかどうかをソケットに知らせ"
12351 "るフラグである。 メッセージ自身は B<recvmsg>(2) または B<sendmsg>(2) を用い"
12352 "たパケットの制御メッセージとしてのみ送受信できる。"
12354 #. type: Plain text
12355 #: build/C/man7/ip.7:629
12358 "struct in_pktinfo {\n"
12359 " unsigned int ipi_ifindex; /* Interface index */\n"
12360 " struct in_addr ipi_spec_dst; /* Local address */\n"
12361 " struct in_addr ipi_addr; /* Header Destination\n"
12365 "struct in_pktinfo {\n"
12366 " unsigned int ipi_ifindex; /* Interface index */\n"
12367 " struct in_addr ipi_spec_dst; /* Local address */\n"
12368 " struct in_addr ipi_addr; /* Header Destination\n"
12372 #. FIXME elaborate on that.
12373 #. This field is grossly misnamed
12374 #. type: Plain text
12375 #: build/C/man7/ip.7:654
12377 "I<ipi_ifindex> is the unique index of the interface the packet was received "
12378 "on. I<ipi_spec_dst> is the local address of the packet and I<ipi_addr> is "
12379 "the destination address in the packet header. If B<IP_PKTINFO> is passed to "
12380 "B<sendmsg>(2) and I<ipi_spec_dst> is not zero, then it is used as the local "
12381 "source address for the routing table lookup and for setting up IP source "
12382 "route options. When I<ipi_ifindex> is not zero, the primary local address "
12383 "of the interface specified by the index overwrites I<ipi_spec_dst> for the "
12384 "routing table lookup."
12386 "I<ipi_ifindex> はパケットが受信されたインターフェースの、他と重ならないイン"
12387 "デックスである。 I<ipi_spec_dst> はパケットのローカルアドレスである。 "
12388 "I<ipi_addr> はパケットヘッダにある宛先アドレスである。 B<IP_PKTINFO> が "
12389 "B<sendmsg>(2) に渡されて、かつ I<ipi_spec_dst> が 0 以外の場合、 "
12390 "I<ipi_spec_dst> はルーティングテーブルを検索する際にローカルな送信元アドレス"
12391 "として使用され、 IP source route オプションを設定するのにも使用される。 "
12392 "I<ipi_ifindex> が 0 以外の場合、このインデックスによって指定されるインター"
12393 "フェースの プライマリローカルアドレスで I<ipi_spec_dst> を上書きし、ルーティ"
12397 #: build/C/man7/ip.7:654
12399 msgid "B<IP_RECVERR> (since Linux 2.2)"
12400 msgstr "B<IP_RECVERR> (Linux 2.2 以降)"
12402 #. Precisely: 2.1.15
12403 #. or SOL_IP on Linux
12404 #. type: Plain text
12405 #: build/C/man7/ip.7:676
12407 "Enable extended reliable error message passing. When enabled on a datagram "
12408 "socket, all generated errors will be queued in a per-socket error queue. "
12409 "When the user receives an error from a socket operation, the errors can be "
12410 "received by calling B<recvmsg>(2) with the B<MSG_ERRQUEUE> flag set. The "
12411 "I<sock_extended_err> structure describing the error will be passed in an "
12412 "ancillary message with the type B<IP_RECVERR> and the level B<IPPROTO_IP>. "
12413 "This is useful for reliable error handling on unconnected sockets. The "
12414 "received data portion of the error queue contains the error packet."
12416 "エラーメッセージの受け渡しに、信頼性の高い拡張された方法を有効にする。 データ"
12417 "グラムソケットに対して有効になっていると、 発生したエラーは全てソケットごとの"
12418 "エラーキューに保存される。 ユーザーはソケット操作からエラーを受け取ったと"
12419 "き、 B<recvmsg>(2) を B<MSG_ERRQUEUE> フラグとともに呼べばそのエラーを取得で"
12420 "きる。 そのエラーを記述する I<sock_extended_err> 構造体が、タイプ "
12421 "B<IP_RECVERR>・ レベル B<IPPROTO_IP> の補助メッセージとして渡される。 これは"
12422 "接続志向でないソケットで信頼性の高いエラー処理を行いたい場合に 有用である。エ"
12423 "ラーキューの受信データフラグメントには エラーパケットが含まれる。"
12425 #. type: Plain text
12426 #: build/C/man7/ip.7:682
12428 "The B<IP_RECVERR> control message contains a I<sock_extended_err> structure:"
12430 "B<IP_RECVERR> 制御メッセージには I<sock_extended_err> 構造体が含まれる:"
12432 #. type: Plain text
12433 #: build/C/man7/ip.7:690
12436 "#define SO_EE_ORIGIN_NONE 0\n"
12437 "#define SO_EE_ORIGIN_LOCAL 1\n"
12438 "#define SO_EE_ORIGIN_ICMP 2\n"
12439 "#define SO_EE_ORIGIN_ICMP6 3\n"
12441 "#define SO_EE_ORIGIN_NONE 0\n"
12442 "#define SO_EE_ORIGIN_LOCAL 1\n"
12443 "#define SO_EE_ORIGIN_ICMP 2\n"
12444 "#define SO_EE_ORIGIN_ICMP6 3\n"
12446 #. type: Plain text
12447 #: build/C/man7/ip.7:701
12450 "struct sock_extended_err {\n"
12451 " uint32_t ee_errno; /* error number */\n"
12452 " uint8_t ee_origin; /* where the error originated */\n"
12453 " uint8_t ee_type; /* type */\n"
12454 " uint8_t ee_code; /* code */\n"
12455 " uint8_t ee_pad;\n"
12456 " uint32_t ee_info; /* additional information */\n"
12457 " uint32_t ee_data; /* other data */\n"
12458 " /* More data may follow */\n"
12461 "struct sock_extended_err {\n"
12462 " uint32_t ee_errno; /* error number */\n"
12463 " uint8_t ee_origin; /* where the error originated */\n"
12464 " uint8_t ee_type; /* type */\n"
12465 " uint8_t ee_code; /* code */\n"
12466 " uint8_t ee_pad;\n"
12467 " uint32_t ee_info; /* additional information */\n"
12468 " uint32_t ee_data; /* other data */\n"
12469 " /* More data may follow */\n"
12472 #. type: Plain text
12473 #: build/C/man7/ip.7:703
12475 msgid "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
12476 msgstr "struct sockaddr *SO_EE_OFFENDER(struct sock_extended_err *);\n"
12478 #. type: Plain text
12479 #: build/C/man7/ip.7:726
12481 "I<ee_errno> contains the I<errno> number of the queued error. I<ee_origin> "
12482 "is the origin code of where the error originated. The other fields are "
12483 "protocol-specific. The macro B<SO_EE_OFFENDER> returns a pointer to the "
12484 "address of the network object where the error originated from given a "
12485 "pointer to the ancillary message. If this address is not known, the "
12486 "I<sa_family> member of the I<sockaddr> contains B<AF_UNSPEC> and the other "
12487 "fields of the I<sockaddr> are undefined."
12489 "I<ee_errno> にはキューに入っているエラーの I<errno> 番号が入る。 "
12490 "I<ee_origin> にはエラーが発生した場所を示すコードが入る。 その他のフィールド"
12491 "はプロトコル依存である。 B<SO_EE_OFFENDER> マクロは与えられた補助メッセージへ"
12492 "のポインタから エラーの発生したネットワークオブジェクトのアドレスへのポインタ"
12493 "を返す。 アドレスが不明な場合、 I<sockaddr> 構造体の I<sa_family> フィールド"
12494 "は B<AF_UNSPEC> となり、その他のフィールド値は不定である。"
12496 #. FIXME . Is it a good idea to document that? It is a dubious feature.
12501 #. has slightly different semantics. Instead of
12502 #. saving the errors for the next timeout, it passes all incoming
12503 #. errors immediately to the user.
12504 #. This might be useful for very short-lived TCP connections which
12505 #. need fast error handling. Use this option with care:
12506 #. it makes TCP unreliable
12507 #. by not allowing it to recover properly from routing
12508 #. shifts and other normal
12509 #. conditions and breaks the protocol specification.
12510 #. type: Plain text
12511 #: build/C/man7/ip.7:785
12513 "IP uses the I<sock_extended_err> structure as follows: I<ee_origin> is set "
12514 "to B<SO_EE_ORIGIN_ICMP> for errors received as an ICMP packet, or "
12515 "B<SO_EE_ORIGIN_LOCAL> for locally generated errors. Unknown values should "
12516 "be ignored. I<ee_type> and I<ee_code> are set from the type and code fields "
12517 "of the ICMP header. I<ee_info> contains the discovered MTU for B<EMSGSIZE> "
12518 "errors. The message also contains the I<sockaddr_in of the node> caused the "
12519 "error, which can be accessed with the B<SO_EE_OFFENDER> macro. The "
12520 "I<sin_family> field of the B<SO_EE_OFFENDER> address is B<AF_UNSPEC> when "
12521 "the source was unknown. When the error originated from the network, all IP "
12522 "options (B<IP_OPTIONS>, B<IP_TTL>, etc.) enabled on the socket and contained "
12523 "in the error packet are passed as control messages. The payload of the "
12524 "packet causing the error is returned as normal payload. Note that TCP has "
12525 "no error queue; B<MSG_ERRQUEUE> is not permitted on B<SOCK_STREAM> sockets. "
12526 "B<IP_RECVERR> is valid for TCP, but all errors are returned by socket "
12527 "function return or B<SO_ERROR> only."
12529 "IP は以下のような I<sock_extended_err> 構造体を用いる: I<ee_origin> は、エ"
12531 "が ICMP パケットとして受信された場合には B<SO_EE_ORIGIN_ICMP> にセットさ"
12533 "ローカルで起こった場合には B<SO_EE_ORIGIN_LOCAL> にセットされる。 不明な値"
12535 "無視される。 I<ee_type> と I<ee_code> は ICMP ヘッダの type フィールドと\n"
12536 "code フィールドの値にセットされる。 I<ee_info> には B<EMSGSIZE> エラーに対"
12538 "る discover された MTU が入る。 メッセージにはエラーを引き起こしたノードの\n"
12539 "I<sockaddr_in> 構造体も含まれる。 これには B<SO_EE_OFFENDER> マクロを使って"
12541 "クセスできる。 ソースが不明の場合、 B<SO_EE_OFFENDER> アドレスの\n"
12542 "I<sin_family> フィールドは B<AF_UNSPEC> となる。 エラーがネットワークで起き"
12544 "場合には、 ソケットで有効になっていたすべての IP オプション (B<IP_OPTIONS>,\n"
12545 "B<IP_TTL> など) とエラーパケットに含まれていたすべての IP オプションとが、 "
12547 "御メッセージとして渡される。 エラーを起こしたパケットのペイロード (payload)\n"
12548 "は 普通のペイロードとして返される。 TCP にはエラーキューがないことに注意し"
12550 "ほしい。 B<MSG_ERRQUEUE> は B<SOCK_STREAM> ソケットに対しては使えない。 TCP\n"
12551 "では B<IP_RECVERR> だけが有効だが、ソケット関数から返されるエラーは\n"
12552 "B<SO_ERROR> だけになる。"
12554 #. type: Plain text
12555 #: build/C/man7/ip.7:790
12557 "For raw sockets, B<IP_RECVERR> enables passing of all received ICMP errors "
12558 "to the application, otherwise errors are only reported on connected sockets"
12560 "raw ソケットに対して B<IP_RECVERR> を指定すると、受信したすべての ICMP エラー"
12561 "をアプリケーションに 渡すようになる。指定しないと、 接続済みのソケットに対す"
12564 #. type: Plain text
12565 #: build/C/man7/ip.7:794
12567 "It sets or retrieves an integer boolean flag. B<IP_RECVERR> defaults to off."
12569 "このオプションはブール値のフラグを設定・取得する。 B<IP_RECVERR> はデフォルト"
12573 #: build/C/man7/ip.7:794
12575 msgid "B<IP_RECVOPTS> (since Linux 2.2)"
12576 msgstr "B<IP_RECVOPTS> (Linux 2.2 以降)"
12578 #. Precisely: 2.1.15
12579 #. type: Plain text
12580 #: build/C/man7/ip.7:805
12582 "Pass all incoming IP options to the user in a B<IP_OPTIONS> control "
12583 "message. The routing header and other options are already filled in for the "
12584 "local host. Not supported for B<SOCK_STREAM> sockets."
12586 "到着した全ての IP オプションを B<IP_OPTION> コントロールメッセージに入れて"
12587 "ユーザーに渡す。 ルーティングヘッダとその他のオプションとは、 ローカルホスト"
12588 "に対してはあらかじめ記入されている。 B<SOCK_STREAM> ソケットではサポートされ"
12592 #: build/C/man7/ip.7:805
12594 msgid "B<IP_RECVORIGDSTADDR> (since Linux 2.6.29)"
12595 msgstr "B<IP_RECVORIGDSTADDR> (Linux 2.6.29 以降)"
12597 #. commit e8b2dfe9b4501ed0047459b2756ba26e5a940a69
12598 #. type: Plain text
12599 #: build/C/man7/ip.7:816
12601 "This boolean option enables the B<IP_ORIGDSTADDR> ancillary message in "
12602 "B<recvmsg>(2), in which the kernel returns the original destination address "
12603 "of the datagram being received. The ancillary message contains a I<struct "
12606 "このブール値のオプションがセットされると、\n"
12607 "B<recvmsg>(2) で B<IP_ORIGDSTADDR> 補助メッセージが有効になる。\n"
12608 "カーネルはデータグラムを受信した元の宛先アドレスをこの補助メッセージで返"
12610 "この補助メッセージには I<struct sockaddr_in> が格納される。"
12613 #: build/C/man7/ip.7:816
12615 msgid "B<IP_RECVTOS> (since Linux 2.2)"
12616 msgstr "B<IP_RECVTOS> (Linux 2.2 以降)"
12618 #. Precisely: 2.1.68
12619 #. type: Plain text
12620 #: build/C/man7/ip.7:825
12622 "If enabled, the B<IP_TOS> ancillary message is passed with incoming "
12623 "packets. It contains a byte which specifies the Type of Service/Precedence "
12624 "field of the packet header. Expects a boolean integer flag."
12626 "有効になっていると、 B<IP_TOS> 補助メッセージが到着パケットとともに渡され"
12627 "る。 これにはパケットヘッダの Service/Precedence フィールドのタイプを指定する"
12628 "バイトデータが含まれている。 ブール整数値のフラグをとる。"
12631 #: build/C/man7/ip.7:825
12633 msgid "B<IP_RECVTTL> (since Linux 2.2)"
12634 msgstr "B<IP_RECVTTL> (Linux 2.2 以降)"
12636 #. Precisely: 2.1.68
12637 #. type: Plain text
12638 #: build/C/man7/ip.7:835
12640 "When this flag is set, pass a B<IP_TTL> control message with the time to "
12641 "live field of the received packet as a byte. Not supported for "
12642 "B<SOCK_STREAM> sockets."
12644 "このフラグがセットされていると、 B<IP_TTL> コントロールメッセージが受信パケッ"
12645 "トの time-to-live フィールドのバイトデータとともに渡される。 B<SOCK_STREAM> "
12646 "ソケットではサポートされていない。"
12649 #: build/C/man7/ip.7:835
12651 msgid "B<IP_RETOPTS> (since Linux 2.2)"
12652 msgstr "B<IP_RETOPTS>"
12654 #. Precisely: 2.1.15
12655 #. type: Plain text
12656 #: build/C/man7/ip.7:842
12658 "Identical to B<IP_RECVOPTS>, but returns raw unprocessed options with "
12659 "timestamp and route record options not filled in for this hop."
12661 "B<IP_RETOPTS> (Linux 2.2 以降) B<IP_RECVOPTS> と等価だが、未処理の生のオプ"
12662 "ションを、 この hop では記入されない timestamp レコードと route レコードとと"
12666 #: build/C/man7/ip.7:842
12668 msgid "B<IP_ROUTER_ALERT> (since Linux 2.2)"
12669 msgstr "B<IP_ROUTER_ALERT> (Linux 2.2 以降)"
12671 #. Precisely: 2.1.68
12672 #. type: Plain text
12673 #: build/C/man7/ip.7:854
12675 "Pass all to-be forwarded packets with the IP Router Alert option set to this "
12676 "socket. Only valid for raw sockets. This is useful, for instance, for user-"
12677 "space RSVP daemons. The tapped packets are not forwarded by the kernel; it "
12678 "is the user's responsibility to send them out again. Socket binding is "
12679 "ignored, such packets are only filtered by protocol. Expects an integer "
12682 "フォワードすべきパケットを IP Router Alert オプションをつけて このソケットに"
12683 "渡す。 raw ソケットに対してのみ有効である。これはたとえばユーザー空間の RSVP "
12684 "デーモンに対して便利である。タップされたパケットは カーネルによってはフォワー"
12685 "ドされないので、これらを再送するのは ユーザーの責任となる。ソケットのバインド"
12686 "は無視され、 このようなパケットはプロトコルによってのみフィルタリングされ"
12690 #: build/C/man7/ip.7:854
12692 msgid "B<IP_TOS> (since Linux 1.0)"
12693 msgstr "B<IP_TOS> (Linux 1.0 以降)"
12695 #. FIXME elaborate on this
12696 #. Needs CAP_NET_ADMIN
12698 #. Since Linux 2.6.27
12699 #. Author: KOVACS Krisztian <hidden@sch.bme.hu>
12700 #. http://lwn.net/Articles/252545/
12701 #. type: Plain text
12702 #: build/C/man7/ip.7:888
12704 "Set or receive the Type-Of-Service (TOS) field that is sent with every IP "
12705 "packet originating from this socket. It is used to prioritize packets on "
12706 "the network. TOS is a byte. There are some standard TOS flags defined: "
12707 "B<IPTOS_LOWDELAY> to minimize delays for interactive traffic, "
12708 "B<IPTOS_THROUGHPUT> to optimize throughput, B<IPTOS_RELIABILITY> to optimize "
12709 "for reliability, B<IPTOS_MINCOST> should be used for \"filler data\" where "
12710 "slow transmission doesn't matter. At most one of these TOS values can be "
12711 "specified. Other bits are invalid and shall be cleared. Linux sends "
12712 "B<IPTOS_LOWDELAY> datagrams first by default, but the exact behavior depends "
12713 "on the configured queueing discipline. Some high priority levels may "
12714 "require superuser privileges (the B<CAP_NET_ADMIN> capability). The "
12715 "priority can also be set in a protocol independent way by the "
12716 "(B<SOL_SOCKET>, B<SO_PRIORITY>) socket option (see B<socket>(7))."
12718 "このソケットから送信されるすべての IP パケットに適用される Type-Of-Service "
12719 "(TOS) フィールドを設定・取得する。 これはネットワーク上でのパケットの優先度を"
12720 "決めるために用いられる。 TOS はバイトデータである。標準の TOS フラグがいくつ"
12721 "か定義されている。 B<IPTOS_LOWDELAY> はインタラクティブなトラフィックの遅延を"
12722 "最小にする。 B<IPTOS_THROUGHPUT> はスループットを最大にする。 "
12723 "B<IPTOS_RELIABILITY> は信頼性を最高にする。 B<IPTOS_MINCOST> は転送速度が遅く"
12724 "てもかまわないとき、「データを詰め込む」のに用いられる。 これらのうち、 1 つ"
12725 "までだけを設定できる。 他のビットは無効で、クリアされる。 Linux はデフォルト"
12726 "では B<IPTOS_LOWDELAY> データグラムを最初に送信する。 しかし、正確な振る舞い"
12727 "はキュー処理の設定に依存する。 高い優先度にするにはスーパーユーザー権限 "
12728 "(B<CAP_NET_ADMIN> ケーパビリティ) が必要となるかもしれない。 優先度は "
12729 "(B<SOL_SOCKET>, B<SO_PRIORITY>) ソケットオプションを用いれば、 プロトコルに"
12730 "依存しない形でも設定できる (B<socket>(7) を見よ)。"
12733 #: build/C/man7/ip.7:888
12735 msgid "B<IP_TRANSPARENT> (since Linux 2.6.24)"
12736 msgstr "B<IP_TRANSPARENT> (Linux 2.6.24 以降)"
12738 #. commit f5715aea4564f233767ea1d944b2637a5fd7cd2e
12739 #. This patch introduces the IP_TRANSPARENT socket option: enabling that
12740 #. will make the IPv4 routing omit the non-local source address check on
12741 #. output. Setting IP_TRANSPARENT requires NET_ADMIN capability.
12742 #. http://lwn.net/Articles/252545/
12743 #. type: Plain text
12744 #: build/C/man7/ip.7:905
12746 "Setting this boolean option enables transparent proxying on this socket. "
12747 "This socket option allows the calling application to bind to a nonlocal IP "
12748 "address and operate both as a client and a server with the foreign address "
12749 "as the local endpoint. NOTE: this requires that routing be set up in a way "
12750 "that packets going to the foreign address are routed through the TProxy "
12751 "box. Enabling this socket option requires superuser privileges (the "
12752 "B<CAP_NET_ADMIN> capability)."
12754 "このブール値のオプションを有効にすると、\n"
12755 "このソケットで透過プロキシ (transparent proxy) ができるようになる。\n"
12756 "このソケットオプションを使うと、呼び出したアプリケーションは、\n"
12757 "ローカルではない IP アドレスをバインドして、ローカルの端点として自分以外の\n"
12758 "アドレス (foreign address) を持つクライアントやサーバの両方として\n"
12760 "B<注意>: この機能が動作するためには、自分以外のアドレス宛のパケットが\n"
12761 "透過プロキシが動作するマシン (TProxy box) 経由で転送されるように、\n"
12762 "ルーティングが設定される必要がある。\n"
12763 "このソケットオプションを有効にするには、スーパーユーザ特権\n"
12764 "(B<CAP_NET_ADMIN> ケーパビリティ) が必要である。"
12766 #. type: Plain text
12767 #: build/C/man7/ip.7:908
12769 "TProxy redirection with the iptables TPROXY target also requires that this "
12770 "option be set on the redirected socket."
12772 "iptables の TPROXY ターゲットで透過プロキシリダイレクション \n"
12773 "(TProxy redirection) を行うには、リダイレクトされるソケットに対して\n"
12774 "このオプションを設定する必要がある。"
12777 #: build/C/man7/ip.7:908
12779 msgid "B<IP_TTL> (since Linux 1.0)"
12780 msgstr "B<IP_TTL> (Linux 1.0 以降)"
12782 #. type: Plain text
12783 #: build/C/man7/ip.7:912
12785 "Set or retrieve the current time-to-live field that is used in every packet "
12786 "sent from this socket."
12788 "time-to-live フィールドの値を設定または取得する。 この値はこのソケットから送"
12789 "信されるすべてのパケットに用いられる。"
12792 #: build/C/man7/ip.7:912
12794 msgid "B<IP_UNBLOCK_SOURCE> (since Linux 2.4.22 / 2.5.68)"
12795 msgstr "B<IP_UNBLOCK_SOURCE> (Linux 2.4.22 以降 / 2.5.68 以降)"
12797 #. type: Plain text
12798 #: build/C/man7/ip.7:918
12800 "Unblock previously blocked multicast source. Returns B<EADDRNOTAVAIL> when "
12801 "given source is not being blocked."
12803 "それ以前はブロックされていたマルチキャストの送信元のブロックを解除する。 指定"
12804 "した送信元がブロックされていない場合は B<EADDRNOTAVAIL> を返す。"
12806 #. FIXME As at 2.6.12, 14 Jun 2005, the following are undocumented:
12808 #. ip_conntrack_max
12809 #. type: Plain text
12810 #: build/C/man7/ip.7:939
12812 "The IP protocol supports a set of I</proc> interfaces to configure some "
12813 "global parameters. The parameters can be accessed by reading or writing "
12814 "files in the directory I</proc/sys/net/ipv4/>. Interfaces described as "
12815 "I<Boolean> take an integer value, with a nonzero value (\"true\") meaning "
12816 "that the corresponding option is enabled, and a zero value (\"false\") "
12817 "meaning that the option is disabled."
12819 "IP プロトコルでは、いくつかのグローバルパラメータを設定するための I</proc> "
12820 "ファイル群が用意されている。 これらのパラメータには、 I</proc/sys/net/ipv4/> "
12821 "ディレクトリ内のファイルの読み書きでアクセスできる。 I<Boolean> と書かれたイ"
12822 "ンタフェースは整数値をとり、 0 以外の値 (\"true\") は対応するオプションが有"
12823 "効、 0 値 (\"false\") は無効、であることを意味する。"
12826 #: build/C/man7/ip.7:939
12828 msgid "I<ip_always_defrag> (Boolean; since Linux 2.2.13)"
12829 msgstr "I<ip_always_defrag> (Boolean; Linux 2.2.13 以降)"
12831 #. type: Plain text
12832 #: build/C/man7/ip.7:945
12834 "[New with kernel 2.2.13; in earlier kernel versions this feature was "
12835 "controlled at compile time by the B<CONFIG_IP_ALWAYS_DEFRAG> option; this "
12836 "option is not present in 2.4.x and later]"
12838 "[2.2.13 で新規登場。以前のバージョンのカーネルでは、この機能は コンパイル時"
12839 "に B<CONFIG_IP_ALWAYS_DEFRAG> オプションによって制御されていた; このファイル"
12840 "は 2.4.x 以降では存在しない]"
12842 #. type: Plain text
12843 #: build/C/man7/ip.7:952
12845 "When this boolean flag is enabled (not equal 0), incoming fragments (parts "
12846 "of IP packets that arose when some host between origin and destination "
12847 "decided that the packets were too large and cut them into pieces) will be "
12848 "reassembled (defragmented) before being processed, even if they are about to "
12851 "このブール値のフラグが有効になっている (0 以外になっている) と、 到着したフラ"
12852 "グメント (IP パケットの一部で、 発信元と発信先の間のどこかのホストで、そのパ"
12853 "ケットが 大きすぎると判断され、分割された場合に生じる) は、たとえフォワード"
12854 "される場合であっても 処理前に再構築 (デフラグメント) される。"
12856 #. type: Plain text
12857 #: build/C/man7/ip.7:959
12859 "Only enable if running either a firewall that is the sole link to your "
12860 "network or a transparent proxy; never ever use it for a normal router or "
12861 "host. Otherwise fragmented communication can be disturbed if the fragments "
12862 "travel over different links. Defragmentation also has a large memory and "
12865 "ファイアウォールがローカル側のネットワークに唯一のリンクを持っている 場合や、"
12866 "透過プロクシの場合に限って有効にすべきである。 通常のルーターやホストでは決し"
12867 "て使用することのないように。 さもないとフラグメントが別のリンクを経由して伝わ"
12868 "る場合に、 通信のフラグメント化ができなくなってしまう。 またフラグメント再構"
12869 "築処理はメモリと CPU 時間のコストが非常に大きい。"
12871 #. type: Plain text
12872 #: build/C/man7/ip.7:963
12874 "This is automagically turned on when masquerading or transparent proxying "
12877 "これはマスカレードや透過プロクシが設定されると、 不思議な仕組みによって自動的"
12881 #: build/C/man7/ip.7:963
12883 msgid "I<ip_autoconfig> (since Linux 2.2 to 2.6.17)"
12884 msgstr "I<ip_autoconfig> (Linux 2.2 以降 2.6.17 まで)"
12886 #. Precisely: since 2.1.68
12887 #. FIXME document ip_autoconfig
12888 #. type: Plain text
12889 #: build/C/man7/ip.7:969
12890 msgid "Not documented."
12891 msgstr "まだ記述していない。"
12894 #: build/C/man7/ip.7:969
12896 msgid "I<ip_default_ttl> (integer; default: 64; since Linux 2.2)"
12897 msgstr "I<ip_default_ttl> (integer; default: 64; Linux 2.2 以降)"
12899 #. Precisely: 2.1.15
12900 #. type: Plain text
12901 #: build/C/man7/ip.7:977
12903 "Set the default time-to-live value of outgoing packets. This can be changed "
12904 "per socket with the B<IP_TTL> option."
12906 "送出されるパケットの time-to-live 値のデフォルトをセットする。 これは "
12907 "B<IP_TTL> オプションを用いれば、パケットごとに変えることもできる。"
12910 #: build/C/man7/ip.7:977
12912 msgid "I<ip_dynaddr> (Boolean; default: disabled; since Linux 2.0.31)"
12913 msgstr "I<ip_dynaddr> (ブール値; デフォルト: 無効; Linux 2.0.31 以降)"
12915 #. type: Plain text
12916 #: build/C/man7/ip.7:984
12918 "Enable dynamic socket address and masquerading entry rewriting on interface "
12919 "address change. This is useful for dialup interface with changing IP "
12920 "addresses. 0 means no rewriting, 1 turns it on and 2 enables verbose mode."
12922 "動的ソケットアドレスと、インターフェースアドレスが変更された際の マスカレード"
12923 "エントリの再書き込みを有効にする。 ダイアルアップインターフェースで、 IP アド"
12924 "レスが変更される場合に便利である。"
12927 #: build/C/man7/ip.7:984
12929 msgid "I<ip_forward> (Boolean; default: disabled; since Linux 1.2)"
12930 msgstr "I<ip_forward> (ブール値; デフォルト: 無効; Linux 1.2 以降)"
12932 #. type: Plain text
12933 #: build/C/man7/ip.7:989
12935 "Enable IP forwarding with a boolean flag. IP forwarding can be also set on "
12936 "a per-interface basis."
12938 "IP forwarding を有効にするかどうかのブール値フラグ。 IP forwarding するかどう"
12939 "かはインターフェースごとにも設定できる。"
12942 #: build/C/man7/ip.7:989
12944 msgid "I<ip_local_port_range> (since Linux 2.2)"
12945 msgstr "I<ip_local_port_range> (Linux 2.2 以降)"
12947 #. Precisely: since 2.1.68
12948 #. type: Plain text
12949 #: build/C/man7/ip.7:1003
12951 "Contains two integers that define the default local port range allocated to "
12952 "sockets. Allocation starts with the first number and ends with the second "
12953 "number. Note that these should not conflict with the ports used by "
12954 "masquerading (although the case is handled). Also arbitrary choices may "
12955 "cause problems with some firewall packet filters that make assumptions about "
12956 "the local ports in use. First number should be at least greater than 1024, "
12957 "or better, greater than 4096, to avoid clashes with well known ports and to "
12958 "minimize firewall problems."
12960 "ソケットに割り当てられているデフォルトのローカルポートの範囲を定める 二つの整"
12961 "数を与える。割り当ては 1 番目の番号から始まり、 2 番目の番号で終わる。 これら"
12962 "はマスカレードで用いられているポートと重なってはならない (その場合も取り扱わ"
12963 "れるが)。 ファイアウォールのパケットフィルターが「利用中のローカルポート」 に"
12964 "ついて何らかの仮定をしている場合には、 番号を勝手に決めてしまうと問題が起きる"
12965 "かもしれない。 1 番目の番号は少なくとも 1024 より大きくすべきである。 良く使"
12966 "われるポートとの衝突を避けたり、ファイアウォールの問題を 回避したければ、 "
12967 "4096 よりも大きくするほうが良いだろう。"
12970 #: build/C/man7/ip.7:1003
12972 msgid "I<ip_no_pmtu_disc> (Boolean; default: disabled; since Linux 2.2)"
12973 msgstr "I<ip_no_pmtu_disc> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
12975 #. Precisely: 2.1.15
12976 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
12977 #. type: Plain text
12978 #: build/C/man7/ip.7:1015
12980 "If enabled, don't do Path MTU Discovery for TCP sockets by default. Path "
12981 "MTU discovery may fail if misconfigured firewalls (that drop all ICMP "
12982 "packets) or misconfigured interfaces (e.g., a point-to-point link where the "
12983 "both ends don't agree on the MTU) are on the path. It is better to fix the "
12984 "broken routers on the path than to turn off Path MTU Discovery globally, "
12985 "because not doing it incurs a high cost to the network."
12987 "有効になっていると、デフォルトで TCP ソケットに対する Path MTU Discoverty を"
12988 "行わない。 Path MTU Discovery は、 正しく設定されていない (ICMP パケットを全"
12989 "てドロップする) ファイアウォールや、 (point-to-point リンクで双方の MTU が一"
12990 "致していない場合など) 正しく設定されていないインターフェースが経路上に存在す"
12991 "ると失敗してしまう。 Path MTU Discovery をグローバルに無効にするよりは、 壊れ"
12992 "ているルータを直すほうが良い。 Path MTU Discovery を無効にするとネットワーク"
12993 "のコストが 大きくなってしまうからである。"
12996 #: build/C/man7/ip.7:1015
12998 msgid "I<ip_nonlocal_bind> (Boolean; default: disabled; since Linux 2.4)"
12999 msgstr "I<ip_nonlocal_bind> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
13001 #. Precisely: patch-2.4.0-test10
13002 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
13003 #. type: Plain text
13004 #: build/C/man7/ip.7:1024
13006 "If set, allows processes to B<bind>(2) to nonlocal IP addresses, which can "
13007 "be quite useful, but may break some applications."
13009 "セットされていれば、プロセスが自分以外の IP アドレスを B<bind>(2) できるよう"
13010 "になる。これはかなり便利だが、うまく動かないアプリケーションもある。"
13013 #: build/C/man7/ip.7:1024
13015 msgid "I<ip6frag_time> (integer; default: 30)"
13016 msgstr "I<ip6frag_time> (integer; default: 30)"
13018 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
13019 #. type: Plain text
13020 #: build/C/man7/ip.7:1029
13021 msgid "Time in seconds to keep an IPv6 fragment in memory."
13022 msgstr "IPv6 フラグメントをメモリに保持しておく時間 (秒単位)。"
13025 #: build/C/man7/ip.7:1029
13027 msgid "I<ip6frag_secret_interval> (integer; default: 600)"
13028 msgstr "I<ip6frag_secret_interval> (integer; default: 600)"
13030 #. type: Plain text
13031 #: build/C/man7/ip.7:1033
13033 "Regeneration interval (in seconds) of the hash secret (or lifetime for the "
13034 "hash secret) for IPv6 fragments."
13036 "IPv6 フラグメントの hash secret の生成間隔 (hash secret の寿命) (秒単位)。"
13039 #: build/C/man7/ip.7:1033
13041 msgid "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
13042 msgstr "I<ipfrag_high_thresh> (integer), I<ipfrag_low_thresh> (integer)"
13044 #. type: Plain text
13045 #: build/C/man7/ip.7:1040
13047 "If the amount of queued IP fragments reaches I<ipfrag_high_thresh>, the "
13048 "queue is pruned down to I<ipfrag_low_thresh>. Contains an integer with the "
13051 "キューイングされている IP フラグメントの量が I<ipfrag_high_thresh> に達する"
13052 "と、キューの内容は I<ipfrag_low_thresh> にまで切り捨てられる。それぞれの大き"
13053 "さを バイト単位で表す整数値が入っている。"
13056 #: build/C/man7/ip.7:1040
13059 msgstr "I<neigh/*>"
13061 #. FIXME Document the conf/*/* interfaces
13062 #. FIXME Document the route/* interfaces
13063 #. FIXME document them all
13064 #. type: Plain text
13065 #: build/C/man7/ip.7:1047
13066 msgid "See B<arp>(7)."
13067 msgstr "B<arp>(7) を見よ。"
13070 #. commented out the following because ipchains is obsolete
13072 #. The ioctls to configure firewalling are documented in
13077 #. type: Plain text
13078 #: build/C/man7/ip.7:1060
13079 msgid "All ioctls described in B<socket>(7) apply to B<ip>."
13080 msgstr "B<socket>(7) に記述されている ioctl は、すべて B<ip> にも適用される。"
13082 #. FIXME Add a discussion of multicasting
13083 #. type: Plain text
13084 #: build/C/man7/ip.7:1064
13086 "Ioctls to configure generic device parameters are described in B<netdevice>"
13089 "ジェネリックデバイスのパラメータを設定する ioctl については B<netdevice>(7) "
13092 #. type: Plain text
13093 #: build/C/man7/ip.7:1084
13095 "The user tried to execute an operation without the necessary permissions. "
13096 "These include: sending a packet to a broadcast address without having the "
13097 "B<SO_BROADCAST> flag set; sending a packet via a I<prohibit> route; "
13098 "modifying firewall settings without superuser privileges (the "
13099 "B<CAP_NET_ADMIN> capability); binding to a privileged port without superuser "
13100 "privileges (the B<CAP_NET_BIND_SERVICE> capability)."
13102 "必要な権限のないユーザーが操作を実行しようとした。 以下のような場合が考えられ"
13103 "る: B<SO_BROADCAST> フラグを設定していない状態でブロードキャストアドレスに パ"
13104 "ケットを送ろうとした。 I<prohibit> なルートを通してパケットを送ろうとした。 "
13105 "スーパーユーザー権限 (B<CAP_NET_ADMIN> ケーパビリティ) なしでファイアウォール"
13106 "の設定を変更しようとした。 スーパーユーザー権限 (B<CAP_NET_BIND_SERVICE> ケー"
13107 "パビリティ) なしで特権ポートにバインドしようとした。"
13109 #. type: Plain text
13110 #: build/C/man7/ip.7:1097
13111 msgid "An connection operation on a nonblocking socket is already in progress."
13112 msgstr "非ブロッキングソケットに対する接続操作が既に実行中である。"
13114 #. type: Plain text
13115 #: build/C/man7/ip.7:1106
13117 "No valid routing table entry matches the destination address. This error "
13118 "can be caused by a ICMP message from a remote router or for the local "
13121 "宛先アドレスにマッチする有効なエントリがルーティングテーブルに 存在しない。こ"
13122 "のエラーはリモートルータからの、 あるいはローカルルーティングテーブルへの "
13123 "ICMP メッセージによって引き起こされることがある。"
13125 #. type: Plain text
13126 #: build/C/man7/ip.7:1112
13128 "Invalid argument passed. For send operations this can be caused by sending "
13129 "to a I<blackhole> route."
13131 "不正な引き数が渡された。送信操作において、 I<blackhole> ルートに送信しようと"
13132 "するとこのエラーが起こることがある。"
13134 #. type: Plain text
13135 #: build/C/man7/ip.7:1119
13136 msgid "Datagram is bigger than an MTU on the path and it cannot be fragmented."
13137 msgstr "データグラムが path MTU よりも大きく、フラグメント化もできない。"
13140 #: build/C/man7/ip.7:1119
13142 msgid "B<ENOBUFS>, B<ENOMEM>"
13143 msgstr "B<ENOBUFS>, B<ENOMEM>"
13145 #. type: Plain text
13146 #: build/C/man7/ip.7:1124
13148 "Not enough free memory. This often means that the memory allocation is "
13149 "limited by the socket buffer limits, not by the system memory, but this is "
13150 "not 100% consistent."
13152 "空きメモリが足りない。 このエラーは、メモリアロケーションがソケットバッファ"
13153 "の 大きさによって制限されていることを意味しているのが通常であるが、 100% そう"
13156 #. type: Plain text
13157 #: build/C/man7/ip.7:1142
13159 "User doesn't have permission to set high priority, change configuration, or "
13160 "send signals to the requested process or group."
13162 "高い優先度を設定したり、設定を変更したり、要求されたプロセスや プロセスグルー"
13163 "プにシグナルを送ったりするのに必要な権限を、 ユーザーが持っていない。"
13165 #. type: Plain text
13166 #: build/C/man7/ip.7:1148
13167 msgid "The socket is not configured or an unknown socket type was requested."
13168 msgstr "ソケットが未設定であるか、知らないソケットタイプが要求された。"
13170 #. type: Plain text
13171 #: build/C/man7/ip.7:1155
13173 "Other errors may be generated by the overlaying protocols; see B<tcp>(7), "
13174 "B<raw>(7), B<udp>(7) and B<socket>(7)."
13176 "他のエラーが上層のプロトコルによって生じるかもしれない。 B<tcp>(7), B<raw>"
13177 "(7), B<udp>(7), B<socket>(7) などを参照のこと。"
13179 #. IP_PASSSEC is Linux-specific
13180 #. IP_XFRM_POLICY is Linux-specific
13181 #. IP_IPSEC_POLICY is a nonstandard extension, also present on some BSDs
13182 #. type: Plain text
13183 #: build/C/man7/ip.7:1170
13185 "B<IP_FREEBIND>, B<IP_MSFILTER>, B<IP_MTU>, B<IP_MTU_DISCOVER>, "
13186 "B<IP_RECVORIGDSTADDR>, B<IP_PKTINFO>, B<IP_RECVERR>, B<IP_ROUTER_ALERT>, and "
13187 "B<IP_TRANSPARENT> are Linux-specific."
13189 "B<IP_FREEBIND>, B<IP_MSFILTER>, B<IP_MTU>, B<IP_MTU_DISCOVER>, "
13190 "B<IP_RECVORIGDSTADDR>,\n"
13191 "B<IP_PKTINFO>, B<IP_RECVERR>, B<IP_ROUTER_ALERT>, and B<IP_TRANSPARENT> \n"
13194 #. type: Plain text
13195 #: build/C/man7/ip.7:1179
13197 "Be very careful with the B<SO_BROADCAST> option - it is not privileged in "
13198 "Linux. It is easy to overload the network with careless broadcasts. For "
13199 "new application protocols it is better to use a multicast group instead of "
13200 "broadcasting. Broadcasting is discouraged."
13202 "B<SO_BROADCAST> オプションの利用には、くれぐれも注意すること。\n"
13203 "これは Linux では特権操作ではない。\n"
13204 "不注意なブロードキャストを行うと、ネットワークは簡単に過負荷状態になる。\n"
13205 "新しいアプリケーションプロトコルには、ブロードキャストではなく\n"
13206 "マルチキャストグループを用いるほうがよい。 ブロードキャストは推奨されない。"
13208 #. type: Plain text
13209 #: build/C/man7/ip.7:1189
13211 "Some other BSD sockets implementations provide B<IP_RCVDSTADDR> and "
13212 "B<IP_RECVIF> socket options to get the destination address and the interface "
13213 "of received datagrams. Linux has the more general B<IP_PKTINFO> for the "
13216 "他の BSD のソケット実装では、 B<IP_RCVDSTADDR> と B<IP_RECVIF> といったソケッ"
13217 "トオプションがサポートされており、 宛先アドレスや受信データグラムのインター"
13218 "フェースが取得できるように なっていることもある。 Linux で同じことをやらせる"
13219 "には、より一般的な B<IP_PKTINFO> が使える。"
13221 #. type: Plain text
13222 #: build/C/man7/ip.7:1198
13224 "Some BSD sockets implementations also provide an B<IP_RECVTTL> option, but "
13225 "an ancillary message with type B<IP_RECVTTL> is passed with the incoming "
13226 "packet. This is different from the B<IP_TTL> option used in Linux."
13228 "いくつかの BSD のソケット実装では B<IP_RECVTTL> オプションも提供されている"
13229 "が、タイプ B<IP_RECVTTL> の補助メッセージは受信パケットとともに渡される。 こ"
13230 "れは Linux で使われている B<IP_TTL> オプションとは異なる動作である。"
13232 #. type: Plain text
13233 #: build/C/man7/ip.7:1204
13235 "Using B<SOL_IP> socket options level isn't portable, BSD-based stacks use "
13236 "B<IPPROTO_IP> level."
13238 "B<SOL_IP> ソケットオプションレベルは移植性がない。 BSD ベースのプロトコルス"
13239 "タックでは B<IPPROTO_IP> レベルが使用されている。"
13241 #. type: Plain text
13242 #: build/C/man7/ip.7:1217
13244 "For compatibility with Linux 2.0, the obsolete B<socket(AF_INET, "
13245 "SOCK_PACKET, >I<protocol>B<)> syntax is still supported to open a B<packet>"
13246 "(7) socket. This is deprecated and should be replaced by B<socket"
13247 "(AF_PACKET, SOCK_RAW, >I<protocol>B<)> instead. The main difference is the "
13248 "new I<sockaddr_ll> address structure for generic link layer information "
13249 "instead of the old B<sockaddr_pkt>."
13251 "Linux 2.0 との互換性のために、 obsolete な B<socket(AF_INET, SOCK_PACKET, "
13252 ">I<protocol>B<)> という書式でも B<packet>(7) をオープンできるようになってい"
13253 "るが、これはお勧めできない。今後は B<socket(AF_PACKET, SOCK_RAW, "
13254 ">I<protocol>B<)> を代わりに用いるべきである。主な違いは、ジェネリックなリンク"
13255 "層用の I<sockaddr_ll> アドレス構造体が、古い B<sockaddr_pkt> に変わって用いら"
13258 #. type: Plain text
13259 #: build/C/man7/ip.7:1222
13261 "The ioctls to configure IP-specific interface options and ARP tables are not "
13264 "IP 固有のインターフェースオプションを指定するための ioctl と ARP テーブルのこ"
13267 #. type: Plain text
13268 #: build/C/man7/ip.7:1226
13270 "Some versions of glibc forget to declare I<in_pktinfo>. Workaround "
13271 "currently is to copy it into your program from this man page."
13273 "glibc のバージョンによっては I<in_pktinfo> の定義を忘れているものがある。 現"
13274 "時点でのとりあえずの対策としては、この man ページにある定義をプログラム中に "
13278 #. This man page was written by Andi Kleen.
13279 #. type: Plain text
13280 #: build/C/man7/ip.7:1236
13282 "Receiving the original destination address with B<MSG_ERRQUEUE> in "
13283 "I<msg_name> by B<recvmsg>(2) does not work in some 2.2 kernels."
13285 "B<recvmsg>(2) で I<msg_name> に B<MSG_ERRQUEUE> を指定して、受信パケットに"
13286 "入っていた宛先アドレスを取得する方法は 2.2 カーネルの一部でうまく動かない。"
13288 #. type: Plain text
13289 #: build/C/man7/ip.7:1249
13291 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), B<capabilities>"
13292 "(7), B<icmp>(7), B<ipv6>(7), B<netlink>(7), B<raw>(7), B<socket>(7), B<tcp>"
13295 "B<recvmsg>(2), B<sendmsg>(2), B<byteorder>(3), B<ipfw>(4), B<capabilities>"
13296 "(7), B<icmp>(7), B<ipv6>(7), B<netlink>(7), B<raw>(7), B<socket>(7), B<tcp>"
13299 #. FIXME autobind INADDR REUSEADDR
13300 #. type: Plain text
13301 #: build/C/man7/ip.7:1254
13303 "RFC\\ 791 for the original IP specification. RFC\\ 1122 for the IPv4 host "
13304 "requirements. RFC\\ 1812 for the IPv4 router requirements."
13306 "RFC\\ 791: 元々の IP 仕様。 RFC\\ 1122: IPv4 ホストの要件。 RFC\\ 1812: IPv4 "
13310 #: build/C/man7/ipv6.7:86
13316 #: build/C/man7/ipv6.7:86
13319 msgstr "2012-12-16"
13321 #. type: Plain text
13322 #: build/C/man7/ipv6.7:89
13323 msgid "ipv6 - Linux IPv6 protocol implementation"
13324 msgstr "ipv6 - Linux IPv6 プロトコルの実装"
13326 #. type: Plain text
13327 #: build/C/man7/ipv6.7:95
13328 msgid "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
13329 msgstr "I<tcp6_socket>B< = socket(AF_INET6, SOCK_STREAM, 0);>"
13331 #. type: Plain text
13332 #: build/C/man7/ipv6.7:97
13333 msgid "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
13334 msgstr "I<raw6_socket>B< = socket(AF_INET6, SOCK_RAW, >I<protocol>B<);>"
13336 #. type: Plain text
13337 #: build/C/man7/ipv6.7:99
13338 msgid "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
13339 msgstr "I<udp6_socket>B< = socket(AF_INET6, SOCK_DGRAM, >I<protocol>B<);>"
13341 #. type: Plain text
13342 #: build/C/man7/ipv6.7:106
13344 "Linux 2.2 optionally implements the Internet Protocol, version 6. This man "
13345 "page contains a description of the IPv6 basic API as implemented by the "
13346 "Linux kernel and glibc 2.1. The interface is based on the BSD sockets "
13347 "interface; see B<socket>(7)."
13349 "Linux 2.2 では、Internet Protocol, version 6 を オプションとして実装してい"
13350 "る。 この man ページでは、Linux カーネルと glibc 2.1 での実装に基づいて、 "
13351 "IPv6 の基本的な API を解説する。 インターフェースは BSD ソケットインター"
13352 "フェースをもとにしている。 B<socket>(7) を参照。"
13354 #. type: Plain text
13355 #: build/C/man7/ipv6.7:111
13357 "The IPv6 API aims to be mostly compatible with the IPv4 API (see B<ip>(7)). "
13358 "Only differences are described in this man page."
13360 "IPv6 API は、 IPv4 API (B<ip>(7) 参照) とほぼ互換になることを目指している。 "
13361 "この man ページでは相違点のみを解説する。"
13363 #. type: Plain text
13364 #: build/C/man7/ipv6.7:123
13366 "To bind an B<AF_INET6> socket to any process, the local address should be "
13367 "copied from the I<in6addr_any> variable which has I<in6_addr> type. In "
13368 "static initializations, B<IN6ADDR_ANY_INIT> may also be used, which expands "
13369 "to a constant expression. Both of them are in network byte order."
13371 "B<AF_INET6> ソケットを何らかのプロセスにバインドするには、 ローカルアドレス"
13372 "を I<in6_addr> 型の変数 I<in6addr_any> からコピーしてくる必要がある。 static "
13373 "な初期値 B<IN6ADDR_ANY_INIT> も用いることができ、これは定数式に展開される。 "
13374 "これらの両者はネットワークバイトオーダーである。"
13376 #. type: Plain text
13377 #: build/C/man7/ipv6.7:130
13379 "The IPv6 loopback address (::1) is available in the global "
13380 "I<in6addr_loopback> variable. For initializations, B<IN6ADDR_LOOPBACK_INIT> "
13383 "IPv6 のループバックアドレス (::1) は global 変数 I<in6addr_loopback> から取得"
13384 "できる。初期化には B<IN6ADDR_LOOPBACK_INIT> を用いるべきである。"
13386 #. type: Plain text
13387 #: build/C/man7/ipv6.7:137
13389 "IPv4 connections can be handled with the v6 API by using the v4-mapped-on-v6 "
13390 "address type; thus a program only needs to support this API type to support "
13391 "both protocols. This is handled transparently by the address handling "
13392 "functions in the C library."
13394 "v4-mapped-on-v6 アドレス型を用いることで、 IPv4 接続も v6 API で扱うことがで"
13395 "きる。 こうすれば、プログラムは v6 の API をサポートするだけで、 両方のプロト"
13396 "コルをサポートできる。 v4-mapped-on-v6 アドレス型は C ライブラリ内部のアドレ"
13397 "スを 扱う関数によって透過的に処理される。"
13399 #. type: Plain text
13400 #: build/C/man7/ipv6.7:142
13402 "IPv4 and IPv6 share the local port space. When you get an IPv4 connection "
13403 "or packet to a IPv6 socket, its source address will be mapped to v6 and it "
13404 "will be mapped to v6."
13406 "IPv4 と IPv6 はローカルポート空間を共有する。 IPv4 の接続 (またはパケット) "
13407 "を IPv6 ソケットが取得すると、 発信元アドレスが v6 にマップされ、その接続 (パ"
13408 "ケット) も v6 にマップされる。"
13410 #. type: Plain text
13411 #: build/C/man7/ipv6.7:152
13414 "struct sockaddr_in6 {\n"
13415 " sa_family_t sin6_family; /* AF_INET6 */\n"
13416 " in_port_t sin6_port; /* port number */\n"
13417 " uint32_t sin6_flowinfo; /* IPv6 flow information */\n"
13418 " struct in6_addr sin6_addr; /* IPv6 address */\n"
13419 " uint32_t sin6_scope_id; /* Scope ID (new in 2.4) */\n"
13422 "struct sockaddr_in6 {\n"
13423 " sa_family_t sin6_family; /* AF_INET6 */\n"
13424 " in_port_t sin6_port; /* port number */\n"
13425 " uint32_t sin6_flowinfo; /* IPv6 flow information */\n"
13426 " struct in6_addr sin6_addr; /* IPv6 address */\n"
13427 " uint32_t sin6_scope_id; /* Scope ID (new in 2.4) */\n"
13430 #. type: Plain text
13431 #: build/C/man7/ipv6.7:156
13434 "struct in6_addr {\n"
13435 " unsigned char s6_addr[16]; /* IPv6 address */\n"
13438 "struct in6_addr {\n"
13439 " unsigned char s6_addr[16]; /* IPv6 address */\n"
13442 #. type: Plain text
13443 #: build/C/man7/ipv6.7:178
13445 "I<sin6_family> is always set to B<AF_INET6>; I<sin6_port> is the protocol "
13446 "port (see I<sin_port> in B<ip>(7)); I<sin6_flowinfo> is the IPv6 flow "
13447 "identifier; I<sin6_addr> is the 128-bit IPv6 address. I<sin6_scope_id> is "
13448 "an ID depending on the scope of the address. It is new in Linux 2.4. Linux "
13449 "supports it only for link-local addresses, in that case I<sin6_scope_id> "
13450 "contains the interface index (see B<netdevice>(7))"
13452 "I<sin6_family> は常に B<AF_INET6> に設定される。\n"
13453 "I<sin6_port> はプロトコルポートである (B<ip>(7) の I<sin_port> を参照)。\n"
13454 "I<sin6_flowinfo> は IPv6 のフロー指定子 (flow identifier) である。\n"
13455 "I<sin6_addr> は 128 ビットの IPv6 アドレスである。 I<sin6_scope_id> は\n"
13456 "アドレスのスコープに依存した ID である (これは Linux 2.4 で導入された)。\n"
13457 "Linux の場合は、これはリンクローカルアドレスでのみサポートされている。\n"
13458 "この場合 I<sin6_scope_id> にはインターフェースのインデックスが含まれる\n"
13459 "ことになる (B<netdevice>(7) を参照)。"
13461 #. type: Plain text
13462 #: build/C/man7/ipv6.7:184
13464 "IPv6 supports several address types: unicast to address a single host, "
13465 "multicast to address a group of hosts, anycast to address the nearest member "
13466 "of a group of hosts (not implemented in Linux), IPv4-on-IPv6 to address a "
13467 "IPv4 host, and other reserved address types."
13469 "IPv6 は何種類かのアドレスタイプをサポートしている。 単一のホストをアドレスす"
13470 "るための unicast、 ホストのグループをアドレスするための multicast、 ホストの"
13471 "グループ中で最も近くにいるものをアドレスするための anycast (これは Linux では"
13472 "実装されていない)、 IPv4 ホストをアドレスするための IPv4-on-IPv6。 他にも予約"
13475 #. type: Plain text
13476 #: build/C/man7/ipv6.7:190
13478 "The address notation for IPv6 is a group of 8 4-digit hexadecimal numbers, "
13479 "separated with a \\(aq:\\(aq. \\&\"::\" stands for a string of 0 bits. "
13480 "Special addresses are ::1 for loopback and ::FFFF:E<lt>IPv4 addressE<gt> for "
13481 "IPv4-mapped-on-IPv6."
13483 "IPv6 でのアドレス表記は 4 桁の 16 進数 8 個からなり、 \\(aq:\\(aq は区切り文"
13484 "字はで、\"::\" は 0 ビットの文字列を表す。 特殊なアドレスとして、ループバック"
13485 "を表す ::1、 IPv4-mapped-on-IPv6 を表す ::FFFF::E<lt>IPv4 アドレスE<gt> があ"
13488 #. type: Plain text
13489 #: build/C/man7/ipv6.7:192
13490 msgid "The port space of IPv6 is shared with IPv4."
13491 msgstr "IPv6 のポート空間は IPv4 と共有されている。"
13493 #. type: Plain text
13494 #: build/C/man7/ipv6.7:200
13496 "IPv6 supports some protocol-specific socket options that can be set with "
13497 "B<setsockopt>(2) and read with B<getsockopt>(2). The socket option level "
13498 "for IPv6 is B<IPPROTO_IPV6>. A boolean integer flag is zero when it is "
13499 "false, otherwise true."
13501 "IPv6 はプロトコル固有のソケットオプションをいくつかサポートしている。 これら"
13502 "は B<setsockopt>(2) で設定でき、 B<getsockopt>(2) で取得できる。 IPv6 のソ"
13503 "ケットオプションレベルは B<IPPROTO_IPV6> である。 ブール整数のフラグは、0 が"
13507 #: build/C/man7/ipv6.7:200
13509 msgid "B<IPV6_ADDRFORM>"
13510 msgstr "B<IPV6_ADDRFORM>"
13512 #. type: Plain text
13513 #: build/C/man7/ipv6.7:214
13515 "Turn an B<AF_INET6> socket into a socket of a different address family. "
13516 "Only B<AF_INET> is currently supported for that. It is allowed only for "
13517 "IPv6 sockets that are connected and bound to a v4-mapped-on-v6 address. The "
13518 "argument is a pointer to an integer containing B<AF_INET>. This is useful "
13519 "to pass v4-mapped sockets as file descriptors to programs that don't know "
13520 "how to deal with the IPv6 API."
13522 "B<AF_INET6> ソケットを別のアドレスファミリーのソケットに変える。 現在は "
13523 "B<AF_INET> のみが変更先のアドレスファミリーとしてサポートされている。 これが"
13524 "許可されるのは、IPv6 が接続され、 v4-mapped-on-v6 アドレスにバインドされた場"
13525 "合に限られる。 引き数は B<AF_INET> が入っている整数へのポインタである。 v4-"
13526 "mapped ソケットを、IPv6 API を扱えないプログラムに対して ファイルディスクリプ"
13530 #: build/C/man7/ipv6.7:214
13532 msgid "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
13533 msgstr "B<IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP>"
13535 #. type: Plain text
13536 #: build/C/man7/ipv6.7:219
13538 "Control membership in multicast groups. Argument is a pointer to a I<struct "
13541 "multicast グループのメンバーを制御する。 引き数は I<struct ipv6_mreq> 構造体"
13545 #: build/C/man7/ipv6.7:219
13547 msgid "B<IPV6_MTU>"
13548 msgstr "B<IPV6_MTU>"
13550 #. type: Plain text
13551 #: build/C/man7/ipv6.7:225
13553 "B<getsockopt>(): Retrieve the current known path MTU of the current socket. "
13554 "Only valid when the socket has been connected. Returns an integer."
13556 "B<getsockopt>(): ソケットの、既知の path MTU を取得する。ソケットが接続してい"
13557 "る場合のみ有効である。整数を返す。"
13559 #. type: Plain text
13560 #: build/C/man7/ipv6.7:231
13562 "B<setsockopt>(): Set the MTU to be used for the socket. The MTU is limited "
13563 "by the device MTU or the path MTU when path MTU discovery is enabled. "
13564 "Argument is a pointer to integer."
13566 "B<setsockopt>(): そのソケットに対して用いる MTU の値を設定する。 MTU の大きさ"
13567 "は、 そのデバイスの MTU または (Path MTU Discovery が可能なら) その経路の "
13568 "MTU の大きさ以下でなければならない。 引き数は整数へのポインタ。"
13571 #: build/C/man7/ipv6.7:231
13573 msgid "B<IPV6_MTU_DISCOVER>"
13574 msgstr "B<IPV6_MTU_DISCOVER>"
13576 #. type: Plain text
13577 #: build/C/man7/ipv6.7:239
13579 "Control path-MTU discovery on the socket. See B<IP_MTU_DISCOVER> in B<ip>"
13582 "そのソケットでの Path MTU Discovery を制御する。 詳細は B<ip>(7) の "
13583 "B<IP_MTU_DISCOVER> を参照。"
13586 #: build/C/man7/ipv6.7:239
13588 msgid "B<IPV6_MULTICAST_HOPS>"
13589 msgstr "B<IPV6_MULTICAST_HOPS>"
13591 #. type: Plain text
13592 #: build/C/man7/ipv6.7:246
13594 "Set the multicast hop limit for the socket. Argument is a pointer to an "
13595 "integer. -1 in the value means use the route default, otherwise it should "
13596 "be between 0 and 255."
13598 "そのソケットでの multicast の hop 数の上限値を設定する。 引き数は整数へのポイ"
13599 "ンタである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以外"
13600 "の場合は 0 から 255 の範囲を指定する。"
13603 #: build/C/man7/ipv6.7:246
13605 msgid "B<IPV6_MULTICAST_IF>"
13606 msgstr "B<IPV6_MULTICAST_IF>"
13608 #. type: Plain text
13609 #: build/C/man7/ipv6.7:257
13611 "Set the device for outgoing multicast packets on the socket. This is "
13612 "allowed only for B<SOCK_DGRAM> and B<SOCK_RAW> socket. The argument is a "
13613 "pointer to an interface index (see B<netdevice>(7)) in an integer."
13615 "そのソケットでの、送信 multicast パケットに用いるデバイスを設定する。 これは "
13616 "B<SOCK_DGRAM> および B<SOCK_RAW> 各ソケットでのみ許される。 引き数はインター"
13617 "フェースのインデックスの整数値 (B<netdevice>(7) を参照) へのポインタである。"
13620 #: build/C/man7/ipv6.7:257
13622 msgid "B<IPV6_MULTICAST_LOOP>"
13623 msgstr "B<IPV6_MULTICAST_LOOP>"
13625 #. type: Plain text
13626 #: build/C/man7/ipv6.7:261
13628 "Control whether the socket sees multicast packets that it has send itself. "
13629 "Argument is a pointer to boolean."
13631 "ソケットが、自分自身の送信した multicast パケットを監視するかどうかを制御す"
13632 "る。 引き数はブール値へのポインタ。"
13635 #: build/C/man7/ipv6.7:261
13637 msgid "B<IPV6_RECVPKTINFO> (since Linux 2.6.14)"
13638 msgstr "B<IPV6_RECVPKTINFO> (Linux 2.6.14 以降)"
13640 #. type: Plain text
13641 #: build/C/man7/ipv6.7:275
13643 "Set delivery of the B<IPV6_PKTINFO> control message on incoming datagrams. "
13644 "Such control messages contain a I<struct in6_pktinfo>, as per RFC 3542. "
13645 "Only allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets. Argument is a "
13646 "pointer to a boolean value in an integer."
13648 "データグラムの到着時における B<IPV6_PKTINFO> 制御メッセージを配送するかどうか"
13649 "を設定する。 制御メッセージは RFC 3542 に基づき I<struct in6_pktinfo> に格納"
13650 "される。 B<SOCK_DGRAM> ソケットまたは B<SOCK_RAW> ソケットに対してのみ許可さ"
13651 "れる。 引き数はブール値の入った整数。"
13653 #. type: Plain text
13654 #: build/C/man7/ipv6.7:278
13656 msgid "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT>\n"
13657 msgstr "B<IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT>\n"
13659 #. type: Plain text
13660 #: build/C/man7/ipv6.7:303
13662 "Set delivery of control messages for incoming datagrams containing extension "
13663 "headers from the received packet. B<IPV6_RTHDR> delivers the routing "
13664 "header, B<IPV6_AUTHHDR> delivers the authentication header, B<IPV6_DSTOPTS> "
13665 "delivers the destination options, B<IPV6_HOPOPTS> delivers the hop options, "
13666 "B<IPV6_FLOWINFO> delivers an integer containing the flow ID, "
13667 "B<IPV6_HOPLIMIT> delivers an integer containing the hop count of the "
13668 "packet. The control messages have the same type as the socket option. All "
13669 "these header options can also be set for outgoing packets by putting the "
13670 "appropriate control message into the control buffer of B<sendmsg>(2). Only "
13671 "allowed for B<SOCK_DGRAM> or B<SOCK_RAW> sockets. Argument is a pointer to "
13674 "受信パケットのデータグラムに拡張ヘッダが含まれている場合の、 制御メッセージの"
13675 "配送を設定する。 B<IPV6_RTHDR>: routing ヘッダを配送するかどうか。 "
13676 "B<IPV6_AUTHHDR>: authentication ヘッダを配送するかどうか。 B<IPV6_DSTOPTS>: "
13677 "destination オプションを配送するかどうか。 B<IPV6_HOPOPTS>: hop オプションを"
13678 "配送するかどうか。 B<IPV6_FLOWINFO>: flow ID を含む整数を配送するかどうか。 "
13679 "B<IPV6_HOPLIMIT>: パケットの hop カウントを含む整数を配送するかどうか。 制御"
13680 "メッセージはソケットオプションのものと同じタイプを持つ。 これらのすべてのヘッ"
13681 "ダオプションは、 適切な制御メッセージを B<sendmsg>(2) の制御バッファーに書き"
13682 "こめば、 送信パケットにでも設定できる。 B<SOCK_DGRAM> ソケットまたは "
13683 "B<SOCK_RAW> ソケットでのみ許される。引き数はブール値へのポインタ。"
13686 #: build/C/man7/ipv6.7:303
13688 msgid "B<IPV6_RECVERR>"
13689 msgstr "B<IPV6_RECVERR>"
13691 #. type: Plain text
13692 #: build/C/man7/ipv6.7:312
13694 "Control receiving of asynchronous error options. See B<IP_RECVERR> in B<ip>"
13695 "(7) for details. Argument is a pointer to boolean."
13697 "非同期エラー (asynchronous error) オプションの受信を制御する。 詳細は B<ip>"
13698 "(7) の B<IP_RECVERR> を参照。 引き数はブール値へのポインタ。"
13701 #: build/C/man7/ipv6.7:312
13703 msgid "B<IPV6_ROUTER_ALERT>"
13704 msgstr "B<IPV6_ROUTER_ALERT>"
13706 #. type: Plain text
13707 #: build/C/man7/ipv6.7:327
13709 "Pass forwarded packets containing a router alert hop-by-hop option to this "
13710 "socket. Only allowed for B<SOCK_RAW> sockets. The tapped packets are not "
13711 "forwarded by the kernel, it is the user's responsibility to send them out "
13712 "again. Argument is a pointer to an integer. A positive integer indicates a "
13713 "router alert option value to intercept. Packets carrying a router alert "
13714 "option with a value field containing this integer will be delivered to the "
13715 "socket. A negative integer disables delivery of packets with router alert "
13716 "options to this socket."
13718 "このソケットで、router alert hop-by-hop オプションの付いた転送パケットを 通す"
13719 "かどうかを制御する。 B<SOCK_RAW> ソケットでのみ許可される。 tap されたパケッ"
13720 "トはカーネルによっては転送されない。そうしたパケットを 再度送信するのはユー"
13721 "ザーの責任である。 引き数は整数 (integer) へのポインタ。 正の整数は傍受を行"
13722 "う router alert オプション値を示す。 オプション値がこの整数である router "
13723 "alert オプションの付いたパケットは ソケットに配送される。負の整数を指定する"
13724 "と、このソケットへの router alert オプションの付いたパケットの配送が行われな"
13728 #: build/C/man7/ipv6.7:327
13730 msgid "B<IPV6_UNICAST_HOPS>"
13731 msgstr "B<IPV6_UNICAST_HOPS>"
13733 #. type: Plain text
13734 #: build/C/man7/ipv6.7:333
13736 "Set the unicast hop limit for the socket. Argument is a pointer to an "
13737 "integer. -1 in the value means use the route default, otherwise it should "
13738 "be between 0 and 255."
13740 "そのソケットでの unicast の hop 数の上限値を設定する。 引き数は整数へのポイン"
13741 "タである。 -1 を指定すると経路のデフォルトを用いることを意味する。 それ以外の"
13742 "場合は 0 から 255 の範囲を指定する。"
13745 #: build/C/man7/ipv6.7:333
13747 msgid "B<IPV6_V6ONLY> (since Linux 2.4.21 and 2.6)"
13748 msgstr "B<IPV6_V6ONLY> (Linux 2.4.21 以降および 2.6 以降)"
13751 #. type: Plain text
13752 #: build/C/man7/ipv6.7:340
13754 "If this flag is set to true (nonzero), then the socket is restricted to "
13755 "sending and receiving IPv6 packets only. In this case, an IPv4 and an IPv6 "
13756 "application can bind to a single port at the same time."
13758 "このフラグを真 (0 以外) に設定すると、そのソケットは IPv6 パケットだけを 送受"
13759 "信するように制限される。 この場合、IPv4 アプリケーションと IPv6 アプリケー"
13760 "ションが同時に 一つのポートをバインドできる。"
13762 #. type: Plain text
13763 #: build/C/man7/ipv6.7:344
13765 "If this flag is set to false (zero), then the socket can be used to send and "
13766 "receive packets to and from an IPv6 address or an IPv4-mapped IPv6 address."
13768 "このフラグを偽 (0) に設定すると、そのソケットはパケットの送受信に IPv6 アドレ"
13769 "スと IPv4-mapped IPv6 アドレスの両方を使用できる。"
13771 #. type: Plain text
13772 #: build/C/man7/ipv6.7:346
13773 msgid "The argument is a pointer to a boolean value in an integer."
13774 msgstr "引き数はブール値の入った整数へのポインタである。"
13776 #. FLOWLABEL_MGR, FLOWINFO_SEND
13777 #. type: Plain text
13778 #: build/C/man7/ipv6.7:351
13780 "The default value for this flag is defined by the contents of the file I</"
13781 "proc/sys/net/ipv6/bindv6only>. The default value for that file is 0 (false)."
13783 "このフラグのデフォルト値はファイル I</proc/sys/net/ipv6/bindv6only> の内容に"
13784 "より定義される。 このファイルのデフォルト値は 0 (偽) である。"
13786 #. type: Plain text
13787 #: build/C/man7/ipv6.7:363
13789 "The user tried to B<bind>(2) to a link-local IPv6 address, but the "
13790 "I<sin6_scope_id> in the supplied I<sockaddr_in6> structure is not a valid "
13793 "ユーザがリンクローカルの IPv6 アドレスを B<bind>(2) しようとしたが、\n"
13794 "指定された I<sockaddr_in6> 構造体の I<sin6_scope_id> が\n"
13795 "有効なインターフェースのインデックスでなかった。"
13797 #. type: Plain text
13798 #: build/C/man7/ipv6.7:368
13800 "The older I<libinet6> libc5 based IPv6 API implementation for Linux is not "
13801 "described here and may vary in details."
13803 "IPv6 API を libc5 ベースで Linux 向けに実装した、以前の I<libinet6> について"
13804 "はここでは記述していない。 おそらく細かいところには相違点があるだろう。"
13806 #. type: Plain text
13807 #: build/C/man7/ipv6.7:384
13809 "Linux 2.4 will break binary compatibility for the I<sockaddr_in6> for 64-bit "
13810 "hosts by changing the alignment of I<in6_addr> and adding an additional "
13811 "I<sin6_scope_id> field. The kernel interfaces stay compatible, but a "
13812 "program including I<sockaddr_in6> or I<in6_addr> into other structures may "
13813 "not be. This is not a problem for 32-bit hosts like i386."
13815 "Linux 2.4 では 64 ビットのホストに対して I<sockaddr_in6> のバイナリ互換性が保"
13816 "たれていない。 I<in6_addr> のアラインメントが変更され、また I<sin6_scope_id> "
13817 "フィールドが新たに追加されたからである。 カーネルインターフェースの互換性は保"
13818 "たれているが、 I<sockaddr_in6> や I<in6_addr> を他の構造体に含んでいるような"
13819 "プログラムでは 保たれないかもしれない。 これは i386 のような 32 ビットのホス"
13822 #. type: Plain text
13823 #: build/C/man7/ipv6.7:392
13825 "The I<sin6_flowinfo> field is new in Linux 2.4. It is transparently passed/"
13826 "read by the kernel when the passed address length contains it. Some "
13827 "programs that pass a longer address buffer and then check the outgoing "
13828 "address length may break."
13830 "I<sin6_flowinfo> フィールドは Linux 2.4 で登場した。 これが渡されたアドレス長"
13831 "に含まれていると、 カーネルに透過的に渡され、読まれる。 より長いアドレスバッ"
13832 "ファを渡し、 そして送信アドレスの長さをチェックするようなプログラムは うまく"
13835 #. type: Plain text
13836 #: build/C/man7/ipv6.7:402
13838 "The I<sockaddr_in6> structure is bigger than the generic I<sockaddr>. "
13839 "Programs that assume that all address types can be stored safely in a "
13840 "I<struct sockaddr> need to be changed to use I<struct sockaddr_storage> for "
13843 "I<sockaddr_in6> 構造体はジェネリックな I<sockaddr> よりも大きい。 すべてのア"
13844 "ドレスタイプが I<struct sockaddr> の中に安全に納められると仮定しているプログ"
13845 "ラムは、代わりに I<struct sockaddr_storage> を用いるように変更する必要があ"
13848 #. type: Plain text
13849 #: build/C/man7/ipv6.7:407
13851 "The IPv6 extended API as in RFC\\ 2292 is currently only partly implemented; "
13852 "although the 2.2 kernel has near complete support for receiving options, the "
13853 "macros for generating IPv6 options are missing in glibc 2.1."
13855 "IPv6 拡張 API は、現在まだ RFC\\ 2292 を完全には実装していない。 2.2 カーネル"
13856 "は受信オプションをほぼ完全にサポートサポートしているが、 glibc2.1 には IPv6 "
13857 "オプションを生成するマクロが存在していない。"
13859 #. type: Plain text
13860 #: build/C/man7/ipv6.7:409
13861 msgid "IPSec support for EH and AH headers is missing."
13862 msgstr "EH および AH ヘッダ での IPSec のサポートは存在しない。"
13864 #. type: Plain text
13865 #: build/C/man7/ipv6.7:411
13866 msgid "Flow label management is not complete and not documented here."
13867 msgstr "フローラベル管理はまだ完全でなく、ここにも記述されていない。"
13869 #. type: Plain text
13870 #: build/C/man7/ipv6.7:413
13871 msgid "This man page is not complete."
13872 msgstr "この man ページはまだ完成していない。"
13874 #. type: Plain text
13875 #: build/C/man7/ipv6.7:416
13876 msgid "B<cmsg>(3), B<ip>(7)"
13877 msgstr "B<cmsg>(3), B<ip>(7)"
13879 #. type: Plain text
13880 #: build/C/man7/ipv6.7:420
13882 "RFC\\ 2553: IPv6 BASIC API; Linux tries to be compliant to this. RFC\\ "
13883 "2460: IPv6 specification."
13885 "RFC\\ 2553: IPv6 BASIC API; Linux はこの RFC に準拠するようにしている。 RFC"
13886 "\\ 2460: IPv6 specification."
13889 #: build/C/man7/netdevice.7:18
13895 #: build/C/man7/netdevice.7:18
13898 msgstr "2014-01-24"
13900 #. type: Plain text
13901 #: build/C/man7/netdevice.7:21
13902 msgid "netdevice - low-level access to Linux network devices"
13903 msgstr "netdevice - Linux ネットワークデバイスへの低レベルアクセス"
13905 #. type: Plain text
13906 #: build/C/man7/netdevice.7:23
13907 msgid "B<#include E<lt>sys/ioctl.hE<gt>>"
13908 msgstr "B<#include E<lt>sys/ioctl.hE<gt>>"
13910 #. type: Plain text
13911 #: build/C/man7/netdevice.7:25
13912 msgid "B<#include E<lt>net/if.hE<gt>>"
13913 msgstr "B<#include E<lt>net/if.hE<gt>>"
13915 #. type: Plain text
13916 #: build/C/man7/netdevice.7:28
13918 "This man page describes the sockets interface which is used to configure "
13921 "この man ページでは、ネットワークデバイスを設定するために 用いるソケットイン"
13924 #. type: Plain text
13925 #: build/C/man7/netdevice.7:35
13927 "Linux supports some standard ioctls to configure network devices. They can "
13928 "be used on any socket's file descriptor regardless of the family or type. "
13929 "Most of them pass an I<ifreq> structure:"
13931 "Linux はネットワークデバイスを設定するための標準的な ioctl を いくつか備えて"
13932 "いる。これらはどんなソケットのファイルディスクリプタにも 用いることができる。"
13933 "ファミリーやタイプは何でもよい。 これらの ioctl のほとんどは I<ifreq> 構造体"
13936 #. type: Plain text
13937 #: build/C/man7/netdevice.7:56
13941 " char ifr_name[IFNAMSIZ]; /* Interface name */\n"
13943 " struct sockaddr ifr_addr;\n"
13944 " struct sockaddr ifr_dstaddr;\n"
13945 " struct sockaddr ifr_broadaddr;\n"
13946 " struct sockaddr ifr_netmask;\n"
13947 " struct sockaddr ifr_hwaddr;\n"
13948 " short ifr_flags;\n"
13949 " int ifr_ifindex;\n"
13950 " int ifr_metric;\n"
13952 " struct ifmap ifr_map;\n"
13953 " char ifr_slave[IFNAMSIZ];\n"
13954 " char ifr_newname[IFNAMSIZ];\n"
13955 " char *ifr_data;\n"
13960 " char ifr_name[IFNAMSIZ]; /* Interface name */\n"
13962 " struct sockaddr ifr_addr;\n"
13963 " struct sockaddr ifr_dstaddr;\n"
13964 " struct sockaddr ifr_broadaddr;\n"
13965 " struct sockaddr ifr_netmask;\n"
13966 " struct sockaddr ifr_hwaddr;\n"
13967 " short ifr_flags;\n"
13968 " int ifr_ifindex;\n"
13969 " int ifr_metric;\n"
13971 " struct ifmap ifr_map;\n"
13972 " char ifr_slave[IFNAMSIZ];\n"
13973 " char ifr_newname[IFNAMSIZ];\n"
13974 " char *ifr_data;\n"
13978 #. type: Plain text
13979 #: build/C/man7/netdevice.7:64
13981 "Normally, the user specifies which device to affect by setting I<ifr_name> "
13982 "to the name of the interface. All other members of the structure may share "
13985 "通常、ユーザーによる設定対象デバイスの指定は、 I<ifr_name> にインターフェース"
13986 "の名前をセットすることによって行う。 他の構造体の全てのメンバは、メモリを共有"
13989 #. type: Plain text
13990 #: build/C/man7/netdevice.7:72
13992 "If an ioctl is marked as privileged, then using it requires an effective "
13993 "user ID of 0 or the B<CAP_NET_ADMIN> capability. If this is not the case, "
13994 "B<EPERM> will be returned."
13996 "「特権が必要」と記述されている ioctl を実行するには、 実効ユーザー ID が 0 "
13997 "か、 B<CAP_NET_ADMIN> 権限が必要である。これが満たされていない場合は "
14001 #: build/C/man7/netdevice.7:72
14003 msgid "B<SIOCGIFNAME>"
14004 msgstr "B<SIOCGIFNAME>"
14006 #. type: Plain text
14007 #: build/C/man7/netdevice.7:80
14009 "Given the I<ifr_ifindex>, return the name of the interface in I<ifr_name>. "
14010 "This is the only ioctl which returns its result in I<ifr_name>."
14012 "I<ifr_ifindex> を受け取り、インターフェースの名前を I<ifr_name> に入れて返"
14013 "す。これは結果を I<ifr_name> として返す唯一の ioctl である。"
14016 #: build/C/man7/netdevice.7:80
14018 msgid "B<SIOCGIFINDEX>"
14019 msgstr "B<SIOCGIFINDEX>"
14021 #. type: Plain text
14022 #: build/C/man7/netdevice.7:84
14023 msgid "Retrieve the interface index of the interface into I<ifr_ifindex>."
14025 "インターフェースの interface index を取得し、 I<ifr_ifindex> に入れて返す。"
14028 #: build/C/man7/netdevice.7:84
14030 msgid "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
14031 msgstr "B<SIOCGIFFLAGS>, B<SIOCSIFFLAGS>"
14033 #. Do not right adjust text blocks in tables
14034 #. type: Plain text
14035 #: build/C/man7/netdevice.7:90
14037 "Get or set the active flag word of the device. I<ifr_flags> contains a bit "
14038 "mask of the following values:"
14040 "デバイスの active フラグワードを取得または設定する。 I<ifr_flags> には以下の"
14044 #: build/C/man7/netdevice.7:95
14046 msgid "Device flags\n"
14050 #: build/C/man7/netdevice.7:96
14052 msgid "IFF_UP:Interface is running.\n"
14053 msgstr "IFF_UP:インターフェースは動作中。\n"
14056 #: build/C/man7/netdevice.7:97
14058 msgid "IFF_BROADCAST:Valid broadcast address set.\n"
14059 msgstr "IFF_BROADCAST:有効なブロードキャストアドレスがセットされている。\n"
14062 #: build/C/man7/netdevice.7:98
14064 msgid "IFF_DEBUG:Internal debugging flag.\n"
14065 msgstr "IFF_DEBUG:内部のデバッグフラグ。\n"
14068 #: build/C/man7/netdevice.7:99
14070 msgid "IFF_LOOPBACK:Interface is a loopback interface.\n"
14071 msgstr "IFF_LOOPBACK:インターフェースはループバックである。\n"
14074 #: build/C/man7/netdevice.7:100
14076 msgid "IFF_POINTOPOINT:Interface is a point-to-point link.\n"
14077 msgstr "IFF_POINTOPOINT:インターフェースは point-to-point リンクである。\n"
14080 #: build/C/man7/netdevice.7:101
14082 msgid "IFF_RUNNING:Resources allocated.\n"
14083 msgstr "IFF_RUNNING:リソースが割り当て済み。\n"
14086 #: build/C/man7/netdevice.7:102
14088 msgid "IFF_NOARP:T{\n"
14089 msgstr "IFF_NOARP:T{\n"
14092 #: build/C/man7/netdevice.7:103
14094 msgid "No arp protocol, L2 destination address not set.\n"
14095 msgstr "arp プロトコルがない。 L2 宛先アドレスが設定されていない。\n"
14098 #: build/C/man7/netdevice.7:104 build/C/man7/netdevice.7:115
14104 #: build/C/man7/netdevice.7:105
14106 msgid "IFF_PROMISC:Interface is in promiscuous mode.\n"
14107 msgstr "IFF_PROMISC:インターフェースは promiscuous モードである。\n"
14110 #: build/C/man7/netdevice.7:106
14112 msgid "IFF_NOTRAILERS:Avoid use of trailers.\n"
14113 msgstr "IFF_NOTRAILERS:trailer の利用を避ける。\n"
14116 #: build/C/man7/netdevice.7:107
14118 msgid "IFF_ALLMULTI:Receive all multicast packets.\n"
14119 msgstr "IFF_ALLMULTI:全てのマルチキャストパケットを受信する。\n"
14122 #: build/C/man7/netdevice.7:108
14124 msgid "IFF_MASTER:Master of a load balancing bundle.\n"
14125 msgstr "IFF_MASTER:負荷分散グループのマスターである。\n"
14128 #: build/C/man7/netdevice.7:109
14130 msgid "IFF_SLAVE:Slave of a load balancing bundle.\n"
14131 msgstr "IFF_SLAVE:負荷分散グループのスレーブである。\n"
14134 #: build/C/man7/netdevice.7:110
14136 msgid "IFF_MULTICAST:Supports multicast\n"
14137 msgstr "IFF_MULTICAST:マルチキャストをサポートしている。\n"
14140 #: build/C/man7/netdevice.7:111
14142 msgid "IFF_PORTSEL:Is able to select media type via ifmap.\n"
14143 msgstr "IFF_PORTSEL:ifmap によってメディアタイプを選択できる。\n"
14146 #: build/C/man7/netdevice.7:112
14148 msgid "IFF_AUTOMEDIA:Auto media selection active.\n"
14149 msgstr "IFF_AUTOMEDIA:自動メディア選択が有効になっている。\n"
14152 #: build/C/man7/netdevice.7:113
14154 msgid "IFF_DYNAMIC:T{\n"
14155 msgstr "IFF_DYNAMIC:T{\n"
14158 #: build/C/man7/netdevice.7:114
14160 msgid "The addresses are lost when the interface goes down.\n"
14161 msgstr "このインターフェースが閉じると、アドレスは失われる。\n"
14164 #: build/C/man7/netdevice.7:116
14166 msgid "IFF_LOWER_UP:Driver signals L1 up (since Linux 2.6.17)\n"
14167 msgstr "IFF_LOWER_UP:ドライバからの L1 アップの通知 (Linux 2.6.17 以降)\n"
14170 #: build/C/man7/netdevice.7:117
14172 msgid "IFF_DORMANT:Driver signals dormant (since Linux 2.6.17)\n"
14173 msgstr "IFF_DORMANT:ドライバからの休止状態の通知 (Linux 2.6.17 以降)\n"
14176 #: build/C/man7/netdevice.7:118
14178 msgid "IFF_ECHO:Echo sent packets (since Linux 2.6.25)\n"
14179 msgstr "IFF_ECHO:送られたパケットをエコーする (Linux 2.6.25 以降)\n"
14181 #. type: Plain text
14182 #: build/C/man7/netdevice.7:124
14184 "Setting the active flag word is a privileged operation, but any process may "
14187 "active フラグワードの設定は特権が必要な操作である。\n"
14188 "読み出しはどんなプロセスからも可能である。"
14191 #: build/C/man7/netdevice.7:124
14193 msgid "B<SIOCGIFPFLAGS>, B<SIOCSIFPFLAGS>"
14194 msgstr "B<SIOCGIFPFLAGS>, B<SIOCSIFPFLAGS>"
14196 #. type: Plain text
14197 #: build/C/man7/netdevice.7:129
14199 "Get or set extended (private) flags for the device. I<ifr_flags> contains a "
14200 "bit mask of the following values:"
14202 "デバイスの拡張 (プライベート) フラグを取得または設定する。\n"
14203 "I<ifr_flags> には以下の値のビットマスクが入る。"
14206 #: build/C/man7/netdevice.7:133
14208 msgid "Private flags\n"
14209 msgstr "プライベートフラグ\n"
14212 #: build/C/man7/netdevice.7:134
14214 msgid "IFF_802_1Q_VLAN:Interface is 802.1Q VLAN device.\n"
14215 msgstr "IFF_802_1Q_VLAN:インターフェースは 802.1Q VLAN デバイスである。\n"
14218 #: build/C/man7/netdevice.7:135
14220 msgid "IFF_EBRIDGE:Interface is Ethernet bridging device.\n"
14221 msgstr "IFF_EBRIDGE:インターフェースは Ethernet ブリッジデバイスである。\n"
14224 #: build/C/man7/netdevice.7:136
14226 msgid "IFF_SLAVE_INACTIVE:Interface is inactive bonding slave.\n"
14227 msgstr "IFF_SLAVE_INACTIVE:インターフェースは非アクティブな bonding のスレーブである。\n"
14230 #: build/C/man7/netdevice.7:137
14232 msgid "IFF_MASTER_8023AD:Interface is 802.3ad bonding master.\n"
14233 msgstr "IFF_MASTER_8023AD:インターフェースは 802.3ad bonding のマスターである。\n"
14236 #: build/C/man7/netdevice.7:138
14238 msgid "IFF_MASTER_ALB:Interface is balanced-alb bonding master.\n"
14239 msgstr "IFF_MASTER_ALB:インターフェースは balanced-alb bonding のマスターである。\n"
14242 #: build/C/man7/netdevice.7:139
14244 msgid "IFF_BONDING:Interface is a bonding master or slave.\n"
14245 msgstr "IFF_BONDING:インターフェースは bonding のマスターかスレーブである。\n"
14248 #: build/C/man7/netdevice.7:140
14250 msgid "IFF_SLAVE_NEEDARP:Interface needs ARPs for validation.\n"
14251 msgstr "IFF_SLAVE_NEEDARP:インターフェースは検証に APR が必要である。\n"
14254 #: build/C/man7/netdevice.7:141
14256 msgid "IFF_ISATAP:Interface is RFC4214 ISATAP interface.\n"
14257 msgstr "IFF_ISATAP:インターフェースは RFC4214 ISATAP インターフェースである。\n"
14259 #. type: Plain text
14260 #: build/C/man7/netdevice.7:145
14262 "Setting the extended (private) interface flags is a privileged operation."
14263 msgstr "拡張 (プライベート) インターフェースフラグの設定には特権が必要である。"
14266 #: build/C/man7/netdevice.7:145
14268 msgid "B<SIOCGIFADDR>, B<SIOCSIFADDR>"
14269 msgstr "B<SIOCGIFADDR>, B<SIOCSIFADDR>"
14271 #. type: Plain text
14272 #: build/C/man7/netdevice.7:153
14274 "Get or set the address of the device using I<ifr_addr>. Setting the "
14275 "interface address is a privileged operation. For compatibility, only "
14276 "B<AF_INET> addresses are accepted or returned."
14278 "I<ifr_addr> を用いてデバイスのアドレスの設定/取得を行う。\n"
14279 "インターフェースのアドレスの設定は特権が必要な操作である。\n"
14280 "互換性確保のため、設定/取得ができるのは B<AF_INET> アドレスだけである。"
14283 #: build/C/man7/netdevice.7:153
14285 msgid "B<SIOCGIFDSTADDR>, B<SIOCSIFDSTADDR>"
14286 msgstr "B<SIOCGIFDSTADDR>, B<SIOCSIFDSTADDR>"
14288 #. type: Plain text
14289 #: build/C/man7/netdevice.7:161
14291 "Get or set the destination address of a point-to-point device using "
14292 "I<ifr_dstaddr>. For compatibility, only B<AF_INET> addresses are accepted "
14293 "or returned. Setting the destination address is a privileged operation."
14295 "point-to-point デバイスの宛先アドレスを I<ifr_dstaddr> を用いて\n"
14296 "設定/取得する。互換性確保のため、\n"
14297 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
14298 "宛先アドレスの設定は特権が必要な操作である。"
14301 #: build/C/man7/netdevice.7:161
14303 msgid "B<SIOCGIFBRDADDR>, B<SIOCSIFBRDADDR>"
14304 msgstr "B<SIOCGIFBRDADDR>, B<SIOCSIFBRDADDR>"
14306 #. type: Plain text
14307 #: build/C/man7/netdevice.7:169
14309 "Get or set the broadcast address for a device using I<ifr_brdaddr>. For "
14310 "compatibility, only B<AF_INET> addresses are accepted or returned. Setting "
14311 "the broadcast address is a privileged operation."
14313 "デバイスのブロードキャストアドレスを I<ifr_brdaddr> を用いて\n"
14314 "設定/取得する。互換性確保のため、\n"
14315 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
14316 "ブロードキャストアドレスの設定は特権が必要な操作である。"
14319 #: build/C/man7/netdevice.7:169
14321 msgid "B<SIOCGIFNETMASK>, B<SIOCSIFNETMASK>"
14322 msgstr "B<SIOCGIFNETMASK>, B<SIOCSIFNETMASK>"
14324 #. type: Plain text
14325 #: build/C/man7/netdevice.7:177
14327 "Get or set the network mask for a device using I<ifr_netmask>. For "
14328 "compatibility, only B<AF_INET> addresses are accepted or returned. Setting "
14329 "the network mask is a privileged operation."
14331 "デバイスのネットワークマスクを I<ifr_netmask> を用いて\n"
14332 "設定/取得する。互換性確保のため、\n"
14333 "設定/取得ができるのは B<AF_INET> アドレスだけである。\n"
14334 "ネットワークマスクの設定は特権が必要な操作である。"
14337 #: build/C/man7/netdevice.7:177
14339 msgid "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
14340 msgstr "B<SIOCGIFMETRIC>, B<SIOCSIFMETRIC>"
14342 #. type: Plain text
14343 #: build/C/man7/netdevice.7:186
14345 "Get or set the metric of the device using I<ifr_metric>. This is currently "
14346 "not implemented; it sets I<ifr_metric> to 0 if you attempt to read it and "
14347 "returns B<EOPNOTSUPP> if you attempt to set it."
14349 "デバイスのメトリックを I<ifr_metric> を用いて取得・設定する。 これはまだ実装"
14350 "されていない。読み出そうとすると I<ifr_metric> に 0 をセットして返り、設定し"
14351 "ようとすると B<EOPNOTSUPP> が返る。"
14354 #: build/C/man7/netdevice.7:186
14356 msgid "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
14357 msgstr "B<SIOCGIFMTU>, B<SIOCSIFMTU>"
14359 #. type: Plain text
14360 #: build/C/man7/netdevice.7:193
14362 "Get or set the MTU (Maximum Transfer Unit) of a device using I<ifr_mtu>. "
14363 "Setting the MTU is a privileged operation. Setting the MTU to too small "
14364 "values may cause kernel crashes."
14366 "デバイスの MTU (Maximum Transfer Unit) を I<ifr_mtu> を用いて取得・設定す"
14367 "る。 MTU の設定は特権が必要な操作である。 MTU の値を小さくしすぎるとカーネル"
14371 #: build/C/man7/netdevice.7:193
14373 msgid "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
14374 msgstr "B<SIOCGIFHWADDR>, B<SIOCSIFHWADDR>"
14376 #. type: Plain text
14377 #: build/C/man7/netdevice.7:204
14379 "Get or set the hardware address of a device using I<ifr_hwaddr>. The "
14380 "hardware address is specified in a struct I<sockaddr>. I<sa_family> "
14381 "contains the ARPHRD_* device type, I<sa_data> the L2 hardware address "
14382 "starting from byte 0. Setting the hardware address is a privileged "
14385 "デバイスのハードウェアアドレスを I<ifr_hwaddr> を用いて取得・設定する。 ハー"
14386 "ドウェアアドレスは I<sockaddr> 構造体に設定される。 I<sa_family> には "
14387 "ARPHRD_* デバイスタイプが入り、 I<sa_data> にはバイト 0 から始まる L2 ハード"
14388 "ウェアアドレスが入る。 ハードウェアアドレスの設定は特権が必要な操作である。"
14391 #: build/C/man7/netdevice.7:204
14393 msgid "B<SIOCSIFHWBROADCAST>"
14394 msgstr "B<SIOCSIFHWBROADCAST>"
14396 #. type: Plain text
14397 #: build/C/man7/netdevice.7:209
14399 "Set the hardware broadcast address of a device from I<ifr_hwaddr>. This is "
14400 "a privileged operation."
14402 "デバイスのハードウェアブロードキャストアドレスを I<ifr_hwaddr> の値に設定す"
14403 "る。この操作には特権が必要である。"
14406 #: build/C/man7/netdevice.7:209
14408 msgid "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
14409 msgstr "B<SIOCGIFMAP>, B<SIOCSIFMAP>"
14411 #. type: Plain text
14412 #: build/C/man7/netdevice.7:214
14414 "Get or set the interface's hardware parameters using I<ifr_map>. Setting "
14415 "the parameters is a privileged operation."
14417 "インターフェースのハードウェアのパラメータを I<ifr_map> を用いて取得・設定す"
14418 "る。 パラメータの設定は特権が必要な操作である。"
14420 #. type: Plain text
14421 #: build/C/man7/netdevice.7:225
14425 " unsigned long mem_start;\n"
14426 " unsigned long mem_end;\n"
14427 " unsigned short base_addr;\n"
14428 " unsigned char irq;\n"
14429 " unsigned char dma;\n"
14430 " unsigned char port;\n"
14434 " unsigned long mem_start;\n"
14435 " unsigned long mem_end;\n"
14436 " unsigned short base_addr;\n"
14437 " unsigned char irq;\n"
14438 " unsigned char dma;\n"
14439 " unsigned char port;\n"
14442 #. type: Plain text
14443 #: build/C/man7/netdevice.7:230
14445 "The interpretation of the ifmap structure depends on the device driver and "
14446 "the architecture."
14447 msgstr "ifmap 構造体の解釈はデバイスドライバとアーキテクチャに依存する。"
14450 #: build/C/man7/netdevice.7:230
14452 msgid "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
14453 msgstr "B<SIOCADDMULTI>, B<SIOCDELMULTI>"
14455 #. type: Plain text
14456 #: build/C/man7/netdevice.7:239
14458 "Add an address to or delete an address from the device's link layer "
14459 "multicast filters using I<ifr_hwaddr>. These are privileged operations. "
14460 "See also B<packet>(7) for an alternative."
14462 "デバイスのリンク層のマルチキャストフィルターから、 I<ifr_hwaddr> のアドレスを"
14463 "追加・削除する。これらの操作には特権が必要である。 別の方法が B<packet>(7) "
14467 #: build/C/man7/netdevice.7:239
14469 msgid "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
14470 msgstr "B<SIOCGIFTXQLEN>, B<SIOCSIFTXQLEN>"
14472 #. type: Plain text
14473 #: build/C/man7/netdevice.7:244
14475 "Get or set the transmit queue length of a device using I<ifr_qlen>. Setting "
14476 "the transmit queue length is a privileged operation."
14478 "デバイスの送信キューの長さを I<ifr_qlen> に取得・設定する。送信キューの長さの"
14482 #: build/C/man7/netdevice.7:244
14484 msgid "B<SIOCSIFNAME>"
14485 msgstr "B<SIOCSIFNAME>"
14487 #. type: Plain text
14488 #: build/C/man7/netdevice.7:253
14490 "Changes the name of the interface specified in I<ifr_name> to "
14491 "I<ifr_newname>. This is a privileged operation. It is allowed only when "
14492 "the interface is not up."
14494 "I<ifr_name> で指定したインターフェースの名前を I<ifr_newname> に変更する。こ"
14495 "の操作には特権が必要である。インターフェースが up していない 時にのみ使用でき"
14499 #: build/C/man7/netdevice.7:253
14501 msgid "B<SIOCGIFCONF>"
14502 msgstr "B<SIOCGIFCONF>"
14504 #. type: Plain text
14505 #: build/C/man7/netdevice.7:263
14507 "Return a list of interface (transport layer) addresses. This currently "
14508 "means only addresses of the B<AF_INET> (IPv4) family for compatibility. "
14509 "Unlike the others, this ioctl passes an I<ifconf> structure:"
14510 msgstr "インターフェースの (トランスポート層の) アドレスのリストを返す。 現在のところ、互換性のため返されるのは B<AF_INET> (IPv4) 系のアドレスだけである。 他の操作と違い、この ioctl では I<ifconf> 構造体を渡す。"
14512 #. type: Plain text
14513 #: build/C/man7/netdevice.7:273
14516 "struct ifconf {\n"
14517 " int ifc_len; /* size of buffer */\n"
14519 " char *ifc_buf; /* buffer address */\n"
14520 " struct ifreq *ifc_req; /* array of structures */\n"
14524 "struct ifconf {\n"
14525 " int ifc_len; /* バッファサイズ */\n"
14527 " char *ifc_buf; /* バッファアドレス */\n"
14528 " struct ifreq *ifc_req; /* 構造体の配列 */\n"
14532 #. type: Plain text
14533 #: build/C/man7/netdevice.7:299
14535 "If I<ifc_req> is NULL, B<SIOCGIFCONF> returns the necessary buffer size in "
14536 "bytes for receiving all available addresses in I<ifc_len>. Otherwise "
14537 "I<ifc_req> contains a pointer to an array of I<ifreq> structures to be "
14538 "filled with all currently active L3 interface addresses. I<ifc_len> "
14539 "contains the size of the array in bytes. Within each I<ifreq> structure, "
14540 "I<ifr_name> will receive the interface name, and I<ifr_addr> the address. "
14541 "The actual number of bytes transferred is returned in I<ifc_len>."
14542 msgstr "I<ifc_req> が NULL の場合、 B<SIOCGIFCONF> はすべての取得できるアドレスを受け取るのに必要なバッファサイズ (バイト数) を I<ifc_len> に格納して返す。 それ以外の場合は、I<ifc_req> には I<ifreq> 構造体の配列へのポインタを渡す。 この構造体の配列には現在アクティブな L3 インターフェースアドレスがすべて格納される。 I<ifc_len> はバイト単位の配列のサイズを渡す。 I<ifreq> 構造体内では、 I<ifr_name> にインターフェース名が、 I<ifr_addr> にそのアドレスが入る。 実際に格納されたバイト数は I<ifc_len> で返される。"
14544 #. type: Plain text
14545 #: build/C/man7/netdevice.7:315
14547 "If the size specified by I<ifc_len> is insufficient to store all the "
14548 "addresses, the kernel will skip the exceeding ones and return success. "
14549 "There is no reliable way of detecting this condition once it has occurred. "
14550 "It is therefore recommended to either determine the necessary buffer size "
14551 "beforehand by calling B<SIOCGIFCONF> with I<ifc_req> set to NULL, or to "
14552 "retry the call with a bigger buffer whenever I<ifc_len> upon return differs "
14553 "by less than I<sizeof(struct ifreq)> from its original value."
14554 msgstr "I<ifc_len> で指定されたサイズがすべてのアドレスを格納するのに不十分な場合、 カーネルは超過分をスキップし、成功を返す。 この状況になった場合、それを検出する信頼できる方法はない。 したがって、 前もって I<ifc_req> を NULL に設定して B<SIOCGIFCONF> を呼び出して必要なバッファサイズを決定するか、 返された I<ifc_len> と元の値の差分が I<sizeof(struct ifreq)> よりも小さい場合は必ずバッファを大きくして再度呼び出すか、 のいずれかを行うことが推奨される。 "
14556 #. Slaving isn't supported in 2.2
14559 #. .BR SIOCGIFSLAVE ", " SIOCSIFSLAVE
14560 #. Get or set the slave device using
14562 #. Setting the slave device is a privileged operation.
14564 #. FIXME add amateur radio stuff.
14565 #. type: Plain text
14566 #: build/C/man7/netdevice.7:332
14568 "If an error occurs accessing the I<ifconf> or I<ifreq> structures, B<EFAULT> "
14569 "will be returned."
14570 msgstr "I<ifconf> か I<ifreq> 構造体へのアクセスでエラーが置こった場合には B<EFAULT> が返される。"
14572 #. type: Plain text
14573 #: build/C/man7/netdevice.7:338
14575 "Most protocols support their own ioctls to configure protocol-specific "
14576 "interface options. See the protocol man pages for a description. For "
14577 "configuring IP addresses, see B<ip>(7)."
14579 "ほとんどのプロトコルには、専用のインターフェースオプションを 設定するための独"
14580 "自の ioctl が存在する。 説明は各プロトコルの man ページを見よ。 IP アドレスの"
14581 "設定に関しては B<ip>(7) を参照。"
14583 #. type: Plain text
14584 #: build/C/man7/netdevice.7:341
14586 "In addition, some devices support private ioctls. These are not described "
14589 "さらに、デバイスによってはプライベートな ioctl がある。 これらはここでは説明"
14592 #. type: Plain text
14593 #: build/C/man7/netdevice.7:349
14595 "Strictly speaking, B<SIOCGIFCONF> and the other ioctls that accept or return "
14596 "only B<AF_INET> socket addresses, are IP-specific and belong in B<ip>(7)."
14598 "厳密にいうと、 B<SIOCGIFCONF> や、 B<AF_INET> ソケットアドレスだけを\n"
14599 "引き数に取ったり返したりする他の ioctl は IP 固有であり、 B<ip>(7) \n"
14602 #. type: Plain text
14603 #: build/C/man7/netdevice.7:354
14605 "The names of interfaces with no addresses or that don't have the "
14606 "B<IFF_RUNNING> flag set can be found via I</proc/net/dev>."
14608 "アドレスがなかったり、 B<IFF_RUNNING> フラグがセットされていないインター"
14609 "フェースの名前は I</proc/net/dev> で知ることができる。"
14611 #. type: Plain text
14612 #: build/C/man7/netdevice.7:359
14614 "Local IPv6 IP addresses can be found via I</proc/net> or via B<rtnetlink>(7)."
14616 "ローカル IPV6 IP アドレスは I</proc/net> か B<rtnetlink>(7) で知ることができ"
14619 #. type: Plain text
14620 #: build/C/man7/netdevice.7:365
14622 "glibc 2.1 is missing the I<ifr_newname> macro in I<E<lt>net/if.hE<gt>>. Add "
14623 "the following to your program as a workaround:"
14625 "glibc 2.1 では I<E<lt>net/if.hE<gt>> に I<ifr_newname> マクロがない。 とりあ"
14626 "えずの対応策として、以下のコードを追加しておくこと。"
14628 #. type: Plain text
14629 #: build/C/man7/netdevice.7:371
14632 "#ifndef ifr_newname\n"
14633 "#define ifr_newname ifr_ifru.ifru_slave\n"
14636 "#ifndef ifr_newname\n"
14637 "#define ifr_newname ifr_ifru.ifru_slave\n"
14640 #. type: Plain text
14641 #: build/C/man7/netdevice.7:378
14642 msgid "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
14643 msgstr "B<proc>(5), B<capabilities>(7), B<ip>(7), B<rtnetlink>(7)"
14646 #: build/C/man5/networks.5:26
14652 #: build/C/man5/networks.5:26
14655 msgstr "2008-09-04"
14658 #: build/C/man5/networks.5:26
14663 #. type: Plain text
14664 #: build/C/man5/networks.5:29
14665 msgid "networks - network name information"
14666 msgstr "networks - ネットワーク名の情報"
14668 #. type: Plain text
14669 #: build/C/man5/networks.5:35
14671 "The file I</etc/networks> is a plain ASCII file that describes known DARPA "
14672 "networks and symbolic names for these networks. Each line represents a "
14673 "network and has the following structure:"
14675 "I</etc/networks> ファイルは、通常の ASCII ファイルで、よく使われる\n"
14676 "DARPA ネットワークとその分かりやすい名前を記載したファイルである。\n"
14677 "各行が一つのネットワークを表し、以下の構造となっている。"
14679 #. type: Plain text
14680 #: build/C/man5/networks.5:38
14681 msgid "I<name number aliases ...>"
14682 msgstr "I<name number aliases ...>"
14684 #. type: Plain text
14685 #: build/C/man5/networks.5:46
14687 "where the fields are delimited by spaces or tabs. Empty lines are ignored. "
14688 "The hash character (B<#>) indicates the start of a comment: this character, "
14689 "and the remaining characters up to the end of the current line, are ignored "
14690 "by library functions that process the file."
14692 "フィールドはスペースかタブで区切られる。空行は無視される。\n"
14693 "ハッシュ文字 (B<#>) はコメントの開始を示し、このファイルを処理する\n"
14694 "ライブラリ関数はこの文字とその行のそれ以降の文字を無視する。"
14696 #. type: Plain text
14697 #: build/C/man5/networks.5:48 build/C/man5/protocols.5:59
14698 msgid "The field descriptions are:"
14699 msgstr "フィールドの説明は以下のとおり。"
14702 #: build/C/man5/networks.5:48
14707 #. type: Plain text
14708 #: build/C/man5/networks.5:53
14710 "The symbolic name for the network. Network names can contain any printable "
14711 "characters execept white-space characters or the comment character."
14713 "ネットワークの分かりやすい名前 (symbolic name)。\n"
14714 "ネットワーク名には、ホワイトスペースとコメント文字以外の\n"
14715 "印字可能な文字を使うことができる。"
14718 #: build/C/man5/networks.5:53 build/C/man5/protocols.5:67
14723 #. type: Plain text
14724 #: build/C/man5/networks.5:58
14726 "The official number for this network in numbers-and-dots notation (see "
14727 "B<inet>(3)). The trailing \".0\" (for the host component of the network "
14728 "address) may be omitted."
14730 "このネットワークの正式な数字での値。\n"
14731 "ドット区切りの数字表記 (B<inet>(3) 参照) で記載する。\n"
14732 "末尾の \".0\" (ネットワークアドレスのホスト部分) は省略してもよい。"
14735 #: build/C/man5/networks.5:58 build/C/man5/protocols.5:71
14736 #: build/C/man5/services.5:120
14739 msgstr "I<aliases>"
14741 #. type: Plain text
14742 #: build/C/man5/networks.5:61
14743 msgid "Optional aliases for the network."
14744 msgstr "そのネットワークの別名 (省略可能)。"
14746 #. type: Plain text
14747 #: build/C/man5/networks.5:70
14749 "This file is read by the B<route>(8) and B<netstat>(8) utilities. Only "
14750 "Class A, B or C networks are supported, partitioned networks (i.e., "
14751 "network/26 or network/28) are not supported by this facility."
14753 "このファイルは、 B<route>(8) と B<netstat>(8) ユーティリティにより\n"
14754 "利用される。クラス A, B, C のネットワークだけがサポートされており、\n"
14755 "(network/26 や network/28 といった) 分割されたネットワークは\n"
14756 "このファイルではサポートされていない。"
14758 #. type: Plain text
14759 #: build/C/man5/networks.5:74
14760 msgid "The networks definition file."
14761 msgstr "ネットワーク定義ファイル。"
14763 #. type: Plain text
14764 #: build/C/man5/networks.5:80
14766 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
14769 "B<getnetbyaddr>(3), B<getnetbyname>(3), B<getnetent>(3), B<netstat>(8), "
14773 #: build/C/man8/nscd.8:23
14778 #. type: Plain text
14779 #: build/C/man8/nscd.8:26
14780 msgid "nscd - name service cache daemon"
14781 msgstr "nscd - ネームサービスキャッシュデーモン"
14783 #. type: Plain text
14784 #: build/C/man8/nscd.8:34
14786 "Nscd is a daemon that provides a cache for the most common name service "
14787 "requests. The default configuration file, I</etc/nscd.conf>, determines the "
14788 "behavior of the cache daemon. See B<nscd.conf>(5)."
14790 "nscd は一般的なネームサービスに必要な多くのものを キャッシュとして提供する"
14791 "デーモンである。 デフォルトの設定ファイル I</etc/nscd.conf> でキャッシュデー"
14792 "モンの動作を決定する。 B<nscd.conf>(5) を見よ。"
14794 #. type: Plain text
14795 #: build/C/man8/nscd.8:47
14797 "Nscd provides caching for accesses of the B<passwd>(5), B<group>(5), and "
14798 "B<hosts>(5) databases through standard libc interfaces, such as B<getpwnam>"
14799 "(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), B<gethostbyname>(3), "
14802 "nscd は B<passwd>(5), B<group>(5), B<hosts>(5) データベースへのアクセスの"
14803 "キャッシュを B<getpwnam>(3), B<getpwuid>(3), B<getgrnam>(3), B<getgrgid>(3), "
14804 "B<gethostbyname>(3) などの標準 libc インターフェースを通して提供する。"
14806 #. type: Plain text
14807 #: build/C/man8/nscd.8:56
14809 "There are two caches for each database: a positive one for items found, and "
14810 "a negative one for items not found. Each cache has a separate TTL (time-to-"
14811 "live) period for its data. Note that the shadow file is specifically not "
14812 "cached. B<getspnam>(3) calls remain uncached as a result."
14814 "各データベースには 2 つのキャッシュがある。 肯定的 (positive) なキャッシュは"
14815 "見つかったアイテムをキャッシュし、 否定的 (negative) なキャッシュは見つからな"
14816 "かったアイテムをキャッシュする。 各キャッシュはデータの TTL (time-to-live, 生"
14817 "存時間) を個別に持っている。 特例として shadow ファイルはキャッシュされない点"
14818 "に注意すること。 B<getspnam>(3) を呼び出しても結果としてキャッシュされないま"
14822 #: build/C/man8/nscd.8:56
14828 #: build/C/man8/nscd.8:57
14833 #. type: Plain text
14834 #: build/C/man8/nscd.8:60
14835 msgid "will give you a list with all options and what they do."
14836 msgstr "全てのオプションとその動作をリストして表示する。"
14838 #. type: Plain text
14839 #: build/C/man8/nscd.8:83
14841 "The daemon will try to watch for changes in configuration files appropriate "
14842 "for each database (e.g., I</etc/passwd> for the I<passwd> database or I</etc/"
14843 "hosts> and I</etc/resolv.conf> for the I<hosts> database), and flush the "
14844 "cache when these are changed. However, this will happen only after a short "
14845 "delay (unless the B<inotify>(7) mechanism is available and glibc 2.9 or "
14846 "later is available), and this auto-detection does not cover configuration "
14847 "files required by nonstandard NSS modules, if any are specified in I</etc/"
14848 "nsswitch.conf>. In that case, you need to run the following command after "
14849 "changing the configuration file of the database so that B<nscd> invalidates "
14852 "デーモンは( I<passwd> データベースについては I</etc/passwd>、 I<hosts> データ"
14853 "ベースについては I</etc/hosts> と I</etc/resolv.conf> というような)それぞれの"
14854 "データベースのための設定ファイルを見張って、 これらが変更されるとキャッシュを"
14855 "フラッシュする。 しかし、これは( B<inotify>(7) が利用可能で、glibc 2.9 以降"
14856 "が利用可能な場合を除いて) 短い遅延の後に起こり、またこの自動検出は非標準 "
14857 "NSS モジュールが I</etc/nsswitch.conf> で指定されている場合はその設定ファイル"
14858 "には対応しない。 この場合、データベースの設定ファイルを変更した後、 B<nscd> "
14859 "のキャッシュを無効にするために以下のコマンドを実行する必要がある:"
14861 #. type: Plain text
14862 #: build/C/man8/nscd.8:85
14864 msgid " $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
14865 msgstr " $ B<nscd -i> I<E<lt>databaseE<gt>>\n"
14869 #. was written by Thorsten Kukuk and Ulrich Drepper.
14870 #. type: Plain text
14871 #: build/C/man8/nscd.8:91
14872 msgid "B<nscd.conf>(5), B<nsswitch.conf>(5)"
14873 msgstr "B<nscd.conf>(5), B<nsswitch.conf>(5)"
14876 #: build/C/man5/nscd.conf.5:20
14882 #: build/C/man5/nscd.conf.5:20
14885 msgstr "2014-02-07"
14887 #. type: Plain text
14888 #: build/C/man5/nscd.conf.5:23
14889 msgid "/etc/nscd.conf - name service cache daemon configuration file"
14890 msgstr "/etc/nscd.conf - ネームサービスキャッシュデーモンの設定ファイル"
14892 #. type: Plain text
14893 #: build/C/man5/nscd.conf.5:36
14895 "The file I</etc/nscd.conf> is read from B<nscd>(8) at startup. Each line "
14896 "specifies either an attribute and a value, or an attribute, service, and a "
14897 "value. Fields are separated either by SPACE or TAB characters. A \\(aq#"
14898 "\\(aq (number sign) indicates the beginning of a comment; following "
14899 "characters, up to the end of the line, are not interpreted by nscd."
14901 "B<nscd>(8) は起動時にファイル I</etc/nscd.conf> を読み込む。 各行には「属"
14902 "性・値」または「属性・サービス・値」を指定する。 フィールドはスペース文字また"
14903 "はタブ文字で区切られる。 \\(aq#\\(aq (ナンバー記号) はコメントの始まりを表"
14904 "す。 この記号から行末までは nscd によって解釈されない。"
14906 #. type: Plain text
14907 #: build/C/man5/nscd.conf.5:39
14909 "Valid services are I<passwd>, I<group>, I<hosts>, I<services>, or "
14912 "指定可能なサービスは I<passwd>, I<group>, I<hosts>, I<services>, I<netgroup> "
14915 #. type: Plain text
14916 #: build/C/man5/nscd.conf.5:42
14917 msgid "B<logfile> I<debug-file-name>"
14918 msgstr "B<logfile> I<debug-file-name>"
14920 #. type: Plain text
14921 #: build/C/man5/nscd.conf.5:44
14922 msgid "Specifies name of the file to which debug info should be written."
14923 msgstr "デバッグ情報が書き込まれるファイルの名前を指定する。"
14925 #. type: Plain text
14926 #: build/C/man5/nscd.conf.5:48
14927 msgid "B<debug-level> I<value>"
14928 msgstr "B<debug-level> I<value>"
14930 #. type: Plain text
14931 #: build/C/man5/nscd.conf.5:51
14932 msgid "Sets the desired debug level. The default is 0."
14933 msgstr "希望するデバッグレベルを設定する。デフォルトは 0。"
14935 #. type: Plain text
14936 #: build/C/man5/nscd.conf.5:55
14937 msgid "B<threads> I<number>"
14938 msgstr "B<threads> I<number>"
14940 #. type: Plain text
14941 #: build/C/man5/nscd.conf.5:59
14943 "This is the number of threads that are started to wait for requests. At "
14944 "least five threads will always be created."
14946 "スレッドをいくつ起動してリクエストを待つのかを指定する。 少なくとも 5 つのス"
14949 #. type: Plain text
14950 #: build/C/man5/nscd.conf.5:63
14951 msgid "B<max-threads> I<number>"
14952 msgstr "B<max-threads> I<number>"
14954 #. type: Plain text
14955 #: build/C/man5/nscd.conf.5:66
14956 msgid "Specifies the maximum number of threads. The default is 32."
14957 msgstr "スレッドの最大数を指定する。デフォルトは 32。"
14959 #. type: Plain text
14960 #: build/C/man5/nscd.conf.5:70
14961 msgid "B<server-user> I<user>"
14962 msgstr "B<server-user> I<user>"
14964 #. type: Plain text
14965 #: build/C/man5/nscd.conf.5:74
14967 "If this option is set, nscd will run as this user and not as root. If a "
14968 "separate cache for every user is used (-S parameter), this option is ignored."
14970 "このオプションが設定されると、 nscd は root ではなく、この user として実行さ"
14971 "れる。 (-S パラメータにより) 各ユーザー毎に別々のキャッシュが使われる場合、 "
14974 #. type: Plain text
14975 #: build/C/man5/nscd.conf.5:78
14976 msgid "B<stat-user> I<user>"
14977 msgstr "B<stat-user> I<user>"
14979 #. type: Plain text
14980 #: build/C/man5/nscd.conf.5:80
14981 msgid "Specifies the user who is allowed to request statistics."
14982 msgstr "統計情報の参照を許可するユーザを指定する。"
14984 #. type: Plain text
14985 #: build/C/man5/nscd.conf.5:85
14986 msgid "B<reload-count> unlimited | I<number>"
14987 msgstr "B<reload-count> unlimited | I<number>"
14989 #. type: Plain text
14990 #: build/C/man5/nscd.conf.5:89
14992 "Limit on the number of times a cached entry gets reloaded without being used "
14993 "before it gets removed. The default is 5."
14995 "キャッシュされたエントリが使用されなかったときに、 削除される前に何回リロード"
14996 "されるかを設定する。デフォルトは 5。"
14998 #. type: Plain text
14999 #: build/C/man5/nscd.conf.5:93
15000 msgid "B<paranoia> I<E<lt>yes|noE<gt>>"
15001 msgstr "B<paranoia> I<E<lt>yes|noE<gt>>"
15003 #. type: Plain text
15004 #: build/C/man5/nscd.conf.5:96
15006 "Enabling paranoia mode causes nscd to restart itself periodically. The "
15009 "パラノイアモードを有効にする。 パラノイアモードでは nscd を定期的に再起動す"
15012 #. type: Plain text
15013 #: build/C/man5/nscd.conf.5:100
15014 msgid "B<restart-interval> I<time>"
15015 msgstr "B<restart-interval> I<time>"
15017 #. type: Plain text
15018 #: build/C/man5/nscd.conf.5:108
15020 "Sets the restart interval to I<time> seconds if periodic restart is enabled "
15021 "by enabling B<paranoia> mode. The default is 3600."
15023 "パラノイアモードが有効で定期的に再起動する場合の、 再起動間隔を I<time> 秒に"
15024 "設定する。デフォルトは 3600。"
15026 #. type: Plain text
15027 #: build/C/man5/nscd.conf.5:113
15028 msgid "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
15029 msgstr "B<enable-cache> I<service> I<E<lt>yes|noE<gt>>"
15031 #. type: Plain text
15032 #: build/C/man5/nscd.conf.5:118
15033 msgid "Enables or disables the specified I<service> cache. The default is no."
15035 "指定した I<service> のキャッシュを有効または無効にする。デフォルトは無効。"
15037 #. type: Plain text
15038 #: build/C/man5/nscd.conf.5:123
15039 msgid "B<positive-time-to-live> I<service> I<value>"
15040 msgstr "B<positive-time-to-live> I<service> I<value>"
15042 #. type: Plain text
15043 #: build/C/man5/nscd.conf.5:131
15045 "Sets the TTL (time-to-live) for positive entries (successful queries) in "
15046 "the specified cache for I<service>. I<Value> is in seconds. Larger values "
15047 "increase cache hit rates and reduce mean response times, but increase "
15048 "problems with cache coherence."
15050 "指定した I<service> のキャッシュにあるポジティブエントリ (成功した問い合わ"
15051 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 値を大きく"
15052 "すると、ヒット率が高くなり平均応答時間を短くできるが、 キャッシュのコヒーレン"
15053 "ス (coherence, キャッシュが実際のデータと一致していること) に問題が生じる。"
15055 #. type: Plain text
15056 #: build/C/man5/nscd.conf.5:136
15057 msgid "B<negative-time-to-live> I<service> I<value>"
15058 msgstr "B<negative-time-to-live> I<service> I<value>"
15060 #. type: Plain text
15061 #: build/C/man5/nscd.conf.5:146
15063 "Sets the TTL (time-to-live) for negative entries (unsuccessful queries) in "
15064 "the specified cache for I<service>. I<Value> is in seconds. Can result in "
15065 "significant performance improvements if there are several files owned by "
15066 "UIDs (user IDs) not in system databases (for example untarring the Linux "
15067 "kernel sources as root); should be kept small to reduce cache coherency "
15070 "指定した I<service> のキャッシュにあるネガティブエントリ (失敗した問い合わ"
15071 "せ) の TTL (time-to-live) を設定する。 I<value> の単位は秒である。 システム"
15072 "データベースにない UID (ユーザーID) で所有されるファイル (たとえば root で "
15073 "tar を展開した Linux カーネルのソース) が少ないと、 顕著な性能の向上が見られ"
15074 "る。 キャッシュのコヒーレンス問題を少なくするために小さな値にすべきである。"
15076 #. type: Plain text
15077 #: build/C/man5/nscd.conf.5:151
15078 msgid "B<suggested-size> I<service> I<value>"
15079 msgstr "B<suggested-size> I<service> I<value>"
15081 #. type: Plain text
15082 #: build/C/man5/nscd.conf.5:156
15084 "This is the internal hash table size, I<value> should remain a prime number "
15085 "for optimum efficiency. The default is 211."
15087 "内部ハッシュテーブルの大きさを指定する。 効率を最適にするために I<value> は素"
15088 "数にしておくべきである。デフォルトは 211 である。"
15090 #. type: Plain text
15091 #: build/C/man5/nscd.conf.5:161
15092 msgid "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
15093 msgstr "B<check-files> I<service> I<E<lt>yes|noE<gt>>"
15095 #. type: Plain text
15096 #: build/C/man5/nscd.conf.5:173
15098 "Enables or disables checking the file belonging to the specified I<service> "
15099 "for changes. The files are I</etc/passwd>, I</etc/group>, I</etc/hosts>, I</"
15100 "etc/services> and I</etc/netgroup>. The default is yes."
15102 "指定した I<service> に関連するファイルの変更のチェックを有効または無効にす"
15103 "る。 ファイルは I</etc/passwd>, I</etc/group>, I</etc/hosts> である。デフォル"
15106 #. type: Plain text
15107 #: build/C/man5/nscd.conf.5:178
15108 msgid "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
15109 msgstr "B<persistent> I<service> I<E<lt>yes|noE<gt>>"
15111 #. type: Plain text
15112 #: build/C/man5/nscd.conf.5:185
15114 "Keep the content of the cache for I<service> over server restarts; useful "
15115 "when B<paranoia> mode is set. The default is no."
15117 "サーバの再起動の前後で I<service> のキャッシュ内容を保持する。 B<paranoia> "
15118 "モードが有効の場合に便利である。デフォルトは保持しない。"
15120 #. type: Plain text
15121 #: build/C/man5/nscd.conf.5:190
15122 msgid "B<shared> I<service> I<E<lt>yes|noE<gt>>"
15123 msgstr "B<shared> I<service> I<E<lt>yes|noE<gt>>"
15125 #. type: Plain text
15126 #: build/C/man5/nscd.conf.5:197
15128 "The memory mapping of the nscd databases for I<service> is shared with the "
15129 "clients so that they can directly search in them instead of having to ask "
15130 "the daemon over the socket each time a lookup is performed. The default is "
15133 "I<service> の nscd データベースのメモリ・マッピングをクライアント間で共有す"
15134 "る。 これにより、検索を実行する度にソケット経由でデーモンに問い合わせを 行わ"
15135 "ずに、直接データベースを検索できるようになる。デフォルトは共有しない。"
15137 #. type: Plain text
15138 #: build/C/man5/nscd.conf.5:202
15139 msgid "B<max-db-size> I<service> I<bytes>"
15140 msgstr "B<max-db-size> I<service> I<bytes>"
15142 #. type: Plain text
15143 #: build/C/man5/nscd.conf.5:206
15145 "The maximum allowable size, in bytes, of the database files for the "
15146 "I<service>. The default is 33554432."
15148 "I<service> のデータベースファイルの最大許容サイズ (バイト単位)。 デフォルト値"
15151 #. type: Plain text
15152 #: build/C/man5/nscd.conf.5:211
15153 msgid "B<auto-propagate> I<service> I<E<lt>yes|noE<gt>>"
15154 msgstr "B<auto-propagate> I<service> I<E<lt>yes|noE<gt>>"
15156 #. type: Plain text
15157 #: build/C/man5/nscd.conf.5:231
15159 "When set to I<no> for I<passwd> or I<group> service, then the I<.byname> "
15160 "requests are not added to I<passwd.byuid> or I<group.bygid> cache. This can "
15161 "help with tables containing multiple records for the same ID. The default "
15162 "is yes. This option is valid only for services I<passwd> and I<group>."
15164 "サービス I<passwd> か I<group> で I<no> に設定すると、 I<.byname> 要求は "
15165 "I<passwd.byuid> や I<group.bygid> のキャッシュに追加されない。 このオプション"
15166 "は、 同じ ID を持つレコードが複数あるテーブルの場合に役に立つ。 デフォルトは "
15167 "yes である。 このオプションはサービス I<passwd> と I<group> でのみ有効であ"
15170 #. type: Plain text
15171 #: build/C/man5/nscd.conf.5:239
15173 "The default values stated in this manual page originate from the source code "
15174 "of B<nscd>(8) and are used if not overridden in the configuration file. "
15175 "The default values used in the configuration file of your distribution might "
15178 "このマニュアルページに書かれているデフォルト値は B<nscd>(8) のソースコードに"
15179 "書かれている値で、 設定ファイルで上書きされなかった場合に使用される。 あなた"
15180 "が利用しているディストリビューションの設定ファイルのデフォルト値は違っている"
15185 #. was written by Thorsten Kukuk and Ulrich Drepper.
15186 #. type: Plain text
15187 #: build/C/man5/nscd.conf.5:244
15189 msgstr "B<nscd>(8)"
15192 #: build/C/man5/nss.5:19
15197 #. type: Plain text
15198 #: build/C/man5/nss.5:22
15199 msgid "nss - Name Service Switch configuration file"
15200 msgstr "nss - 名前サービス切り替え (Name Service Switch) の設定ファイル"
15202 #. type: Plain text
15203 #: build/C/man5/nss.5:29
15205 "Each call to a function which retrieves data from a system database like the "
15206 "password or group database is handled by the Name Service Switch "
15207 "implementation in the GNU C library. The various services provided are "
15208 "implemented by independent modules, each of which naturally varies widely "
15212 #. type: Plain text
15213 #: build/C/man5/nss.5:38
15215 "The default implementations coming with the GNU C library are by default "
15216 "conservative and do not use unsafe data. This might be very costly in some "
15217 "situations, especially when the databases are large. Some modules allow the "
15218 "system administrator to request taking shortcuts if these are known to be "
15219 "safe. It is then the system administrator's responsibility to ensure the "
15220 "assumption is correct."
15223 #. type: Plain text
15224 #: build/C/man5/nss.5:42
15226 "There are other modules where the implementation changed over time. If an "
15227 "implementation used to sacrifice speed for memory consumption, it might "
15228 "create problems if the preference is switched."
15231 #. type: Plain text
15232 #: build/C/man5/nss.5:51
15234 "The I</etc/default/nss> file contains a number of variable assignments. "
15235 "Each variable controls the behavior of one or more NSS modules. White "
15236 "spaces are ignored. Lines beginning with \\(aq#\\(aq are treated as "
15240 #. type: Plain text
15241 #: build/C/man5/nss.5:53
15242 msgid "The variables currently recognized are:"
15243 msgstr "現在のところ認識される変数は次の通り。"
15246 #: build/C/man5/nss.5:53
15248 msgid "B<NETID_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15249 msgstr "B<NETID_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15251 #. type: Plain text
15252 #: build/C/man5/nss.5:68
15254 "If set to TRUE, the NIS backend for the B<initgroups>(3) function will "
15255 "accept the information from the I<netid.byname> NIS map as authoritative. "
15256 "This can speed up the function significantly if the I<group.byname> map is "
15257 "large. The content of the I<netid.byname> map is used B<as is>. The system "
15258 "administrator has to make sure it is correctly generated."
15262 #: build/C/man5/nss.5:68
15264 msgid "B<SERVICES_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15265 msgstr "B<SERVICES_AUTHORITATIVE => I<TRUE>|I<FALSE>"
15267 #. type: Plain text
15268 #: build/C/man5/nss.5:80
15270 "If set to TRUE, the NIS backend for the B<getservbyname>(3) and "
15271 "B<getservbyname_r>(3) functions will assume that the I<services."
15272 "byservicename> NIS map exists and is authoritative, particularly that it "
15273 "contains both keys with /proto and without /proto for both primary service "
15274 "names and service aliases. The system administrator has to make sure it is "
15275 "correctly generated."
15279 #: build/C/man5/nss.5:80
15281 msgid "B<SETENT_BATCH_READ => I<TRUE>|I<FALSE>"
15282 msgstr "B<SETENT_BATCH_READ => I<TRUE>|I<FALSE>"
15284 #. type: Plain text
15285 #: build/C/man5/nss.5:98
15287 "If set to TRUE, the NIS backend for the B<setpwent>(3) and B<setgrent>(3) "
15288 "functions will read the entire database at once and then hand out the "
15289 "requests one by one from memory with every corresponding B<getpwent>(3) or "
15290 "B<getgrent>(3) call respectively. Otherwise each B<getpwent>(3) or "
15291 "B<getgrent>(3) call might result in a network communication with the server "
15292 "to get the next entry."
15295 #. type: Plain text
15296 #: build/C/man5/nss.5:100
15297 msgid "I</etc/default/nss>"
15298 msgstr "I</etc/default/nss>"
15300 #. type: Plain text
15301 #: build/C/man5/nss.5:102
15303 "The default configuration corresponds to the following configuration file:"
15304 msgstr "デフォルト設定は、 以下の設定ファイルと同じである。"
15307 #. Ulrich Drepper <drepper@redhat.com>
15308 #. type: Plain text
15309 #: build/C/man5/nss.5:110
15312 "NETID_AUTHORITATIVE=FALSE\n"
15313 "SERVICES_AUTHORITATIVE=FALSE\n"
15314 "SETENT_BATCH_READ=FALSE\n"
15316 "NETID_AUTHORITATIVE=FALSE\n"
15317 "SERVICES_AUTHORITATIVE=FALSE\n"
15318 "SETENT_BATCH_READ=FALSE\n"
15320 #. type: Plain text
15321 #: build/C/man5/nss.5:112
15322 msgid "I<nsswitch.conf>"
15323 msgstr "I<nsswitch.conf>"
15326 #: build/C/man5/nsswitch.conf.5:25
15328 msgid "NSSWITCH.CONF"
15329 msgstr "NSSWITCH.CONF"
15331 #. type: Plain text
15332 #: build/C/man5/nsswitch.conf.5:28
15333 msgid "nsswitch.conf - Name Service Switch configuration file"
15334 msgstr "nsswitch.conf - ネームサービススイッチの設定ファイル"
15336 #. type: Plain text
15337 #: build/C/man5/nsswitch.conf.5:36
15339 "The Name Service Switch (NSS) configuration file, I</etc/nsswitch.conf>, is "
15340 "used by the GNU C Library to determine the sources from which to obtain name-"
15341 "service information in a range of categories, and in what order. Each "
15342 "category of information is identified by a database name."
15344 "ネームサービススイッチ (Name Service Switch; NSS) の設定ファイル\n"
15345 "I</etc/nsswitch.conf> は、 GNU C ライブラリが\n"
15346 "いろいろなカテゴリの名前サービス情報を、どの情報源から\n"
15347 "どの順序で取得するかを判断するのに使用される\n"
15348 "(情報の各カテゴリはデータベース名で識別される)。"
15350 #. type: Plain text
15351 #: build/C/man5/nsswitch.conf.5:42
15353 "The file is plain ASCII text, with columns separated by spaces or tab "
15354 "characters. The first column specifies the database name. The remaining "
15355 "columns describe the order of sources to query and a limited set of actions "
15356 "that can be performed by lookup result."
15358 "設定ファイルは通常の ASCII テキストで、列はスペースかタブ文字で\n"
15359 "区切られる。最初の列はデータベース名を示す。\n"
15360 "残りの列は、情報を問い合わせる情報源の順序と、\n"
15361 "検索結果に対して実行するアクションを規定する。"
15363 #. type: Plain text
15364 #: build/C/man5/nsswitch.conf.5:44
15365 msgid "The following databases are understood by the GNU C Library:"
15366 msgstr "GNU C ライブラリでは以下のデータベースを扱うことができる。"
15368 #. type: Plain text
15369 #: build/C/man5/nsswitch.conf.5:49
15370 msgid "Mail aliases, used by B<getaliasent>(3) and related functions."
15371 msgstr "メールのエイリアス。 B<getaliasent>(3) や関連する関数が使用する。"
15373 #. type: Plain text
15374 #: build/C/man5/nsswitch.conf.5:52
15375 msgid "Ethernet numbers."
15376 msgstr "イーサーネット番号。"
15378 #. type: Plain text
15379 #: build/C/man5/nsswitch.conf.5:57
15380 msgid "Groups of users, used by B<getgrent>(3) and related functions."
15381 msgstr "ユーザーのグループ。 B<getgrent>(3) や関連する関数が使用する。"
15383 #. type: Plain text
15384 #: build/C/man5/nsswitch.conf.5:62
15386 "Host names and numbers, used by B<gethostbyname>(3) and related functions."
15387 msgstr "ホスト名とホスト番号。 B<gethostbyname>(3) や関連する関数が使用する。"
15389 #. type: Plain text
15390 #: build/C/man5/nsswitch.conf.5:67
15391 msgid "Supplementary group access list, used by B<getgrouplist>(3) function."
15392 msgstr "補助グループアクセスリスト。 B<getgrouplist>(3) 関数が使用する。"
15394 #. type: Plain text
15395 #: build/C/man5/nsswitch.conf.5:71
15397 "Network-wide list of hosts and users, used for access rules. C libraries "
15398 "before glibc 2.1 supported netgroups only over NIS."
15400 "ネットワークワイドに用いられるホストやユーザーのリスト。アクセス制限に利用\n"
15401 "される。 glibc 2.1 より前の C ライブラリは、 NIS による netgroup のみを\n"
15404 #. type: Plain text
15405 #: build/C/man5/nsswitch.conf.5:76
15407 "Network names and numbers, used by B<getnetent>(3) and related functions."
15408 msgstr "ネットワーク名と番号。 B<getnetent>(3) と関連する関数が使用する。"
15410 #. type: Plain text
15411 #: build/C/man5/nsswitch.conf.5:81
15412 msgid "User passwords, used by B<getpwent>(3) and related functions."
15413 msgstr "ユーザーパスワード。 B<getpwent>(3) や関連する関数が使用する。"
15415 #. type: Plain text
15416 #: build/C/man5/nsswitch.conf.5:86
15417 msgid "Network protocols, used by B<getprotoent>(3) and related functions."
15418 msgstr "ネットワークプロトコル。 B<getprotoent>(3) や関連する関数が使用する。"
15421 #: build/C/man5/nsswitch.conf.5:86
15423 msgid "B<publickey>"
15424 msgstr "B<publickey>"
15426 #. type: Plain text
15427 #: build/C/man5/nsswitch.conf.5:89
15428 msgid "Public and secret keys for Secure_RPC used by NFS and NIS+."
15429 msgstr "NIS+ と NFS によって用いられる secure_rpc の公開鍵と秘密鍵。"
15431 #. type: Plain text
15432 #: build/C/man5/nsswitch.conf.5:94
15434 "Remote procedure call names and numbers, used by B<getrpcbyname>(3) and "
15435 "related functions."
15437 "リモート手続き呼び出し (remote procedure call) の名前と番号。 \n"
15438 "B<getrpcbyname>(3) と関連する関数が使用する。"
15440 #. type: Plain text
15441 #: build/C/man5/nsswitch.conf.5:99
15442 msgid "Network services, used by B<getservent>(3) and related functions."
15443 msgstr "ネットワークサービス。 B<getservent>(3) や関連する関数が使用する。"
15445 #. type: Plain text
15446 #: build/C/man5/nsswitch.conf.5:104
15447 msgid "Shadow user passwords, used by B<getspnam>(3) and related functions."
15448 msgstr "シャドウユーザーパスワード。 B<getspnam>(3) や関連する関数が使用する。"
15450 #. type: Plain text
15451 #: build/C/man5/nsswitch.conf.5:108
15452 msgid "Here is an example I</etc/nsswitch.conf> file:"
15453 msgstr "以下は I</etc/nsswitch.conf> ファイルの例である。"
15456 #: build/C/man5/nsswitch.conf.5:111
15461 #. type: Plain text
15462 #: build/C/man5/nsswitch.conf.5:114 build/C/man5/nsswitch.conf.5:117
15463 #: build/C/man5/nsswitch.conf.5:120
15468 #: build/C/man5/nsswitch.conf.5:114
15474 #: build/C/man5/nsswitch.conf.5:117
15480 #: build/C/man5/nsswitch.conf.5:121
15485 #. type: Plain text
15486 #: build/C/man5/nsswitch.conf.5:124
15487 msgid "dns [!UNAVAIL=return] files"
15488 msgstr "dns [!UNAVAIL=return] files"
15491 #: build/C/man5/nsswitch.conf.5:124
15496 #. type: Plain text
15497 #: build/C/man5/nsswitch.conf.5:127 build/C/man5/nsswitch.conf.5:130
15498 #: build/C/man5/nsswitch.conf.5:133 build/C/man5/nsswitch.conf.5:136
15499 #: build/C/man5/nsswitch.conf.5:139
15500 msgid "nis [NOTFOUND=return] files"
15501 msgstr "nis [NOTFOUND=return] files"
15504 #: build/C/man5/nsswitch.conf.5:127
15510 #: build/C/man5/nsswitch.conf.5:130
15513 msgstr "protocols:"
15516 #: build/C/man5/nsswitch.conf.5:133
15522 #: build/C/man5/nsswitch.conf.5:136
15527 #. type: Plain text
15528 #: build/C/man5/nsswitch.conf.5:144
15529 msgid "The first column is the database name. The remaining columns specify:"
15531 "最初の列はデータベース名である。\n"
15534 #. type: Plain text
15535 #: build/C/man5/nsswitch.conf.5:148
15537 "One or more service specifications, for example, \"files\", \"db\", or \"nis"
15538 "\". The order of the services on the line determines the order in which "
15539 "those services will be queried, in turn, until a result is found."
15541 "1 個以上のサービス指定 (例: \"files\", \"db\", \"nis\")。この行に記載された\n"
15542 "サービスの順序で、結果が得られるまで、指定されたサービスに対する\n"
15545 #. type: Plain text
15546 #: build/C/man5/nsswitch.conf.5:151
15548 "Optional actions to perform if a particular result is obtained from the "
15549 "preceding service, for example, \"[NOTFOUND=return]\"."
15551 "特定の結果が直前のサービスで得られた場合に実行されるアクション\n"
15552 "(例: \"[NOTFOUND=return]\")。アクションは省略可能である。"
15554 #. type: Plain text
15555 #: build/C/man5/nsswitch.conf.5:177
15557 "The service specifications supported on your system depend on the presence "
15558 "of shared libraries, and are therefore extensible. Libraries called I</lib/"
15559 "libnss_SERVICE.so.>B<X> will provide the named I<SERVICE>. On a standard "
15560 "installation, you can use \"files\", \"db\", \"nis\", and \"nisplus\". For "
15561 "the B<hosts> database, you can additionally specify \"dns\". For the "
15562 "B<passwd>, B<group>, and B<shadow> databases, you can additionally specify "
15563 "\"compat\" (see B<Compatibility mode> below). The version number B<X> may "
15564 "be 1 for glibc 2.0, or 2 for glibc 2.1 and later. On systems with "
15565 "additional libraries installed, you may have access to further services such "
15566 "as \"hesiod\", \"ldap\", \"winbind\" and \"wins\"."
15568 "利用しているシステムでどのサービス指定が利用できるかは、共有ライブラリ\n"
15569 "があるかどうかに依存しており、そのためサービス指定は拡張できるように\n"
15570 "なっている。I</lib/libnss_SERVICE.so.>B<X> という名前のライブラリが\n"
15571 "I<SERVICE> という名前のサービスを提供する。標準のインストールを行った\n"
15572 "場合、\"files\", \"db\", \"nis\", \"nisplus\" が利用できる。\n"
15573 "データベース B<hosts> の場合には、追加で \"dns\" も指定できる。\n"
15574 "データベース B<passwd>, B<group>, B<shadow> の場合には、追加で\n"
15575 "\"compat\" (下記の B<互換モード> を参照)。バージョン番号 B<X> は、\n"
15576 "glibc 2.0 の場合は 1、glibc 2.1 の場合は 2 で、それ以降も同様である。\n"
15577 "追加のライブラリがインストールされているシステムでは、\"hesiod\",\n"
15578 "\"ldap\", \"winbind\", \"wins\" などの追加のサービスが利用できる。"
15580 #. type: Plain text
15581 #: build/C/man5/nsswitch.conf.5:182
15583 "An action may also be specified following a service specification. The "
15584 "action modifies the behavior following a result obtained from the preceding "
15585 "data source. Action items take the general form:"
15587 "サービス指定の次にアクションを指定することもできる。アクションを\n"
15588 "使うと、直前のデータ源から結果が得られた後の動作を変更できる。\n"
15589 "アクション指定は、一般的には以下の形式となる。"
15591 #. type: Plain text
15592 #: build/C/man5/nsswitch.conf.5:185
15593 msgid "[I<STATUS>=I<ACTION>]"
15594 msgstr "[I<STATUS>=I<ACTION>]"
15596 #. type: Plain text
15597 #: build/C/man5/nsswitch.conf.5:187
15598 msgid "[!I<STATUS>=I<ACTION>]"
15599 msgstr "[!I<STATUS>=I<ACTION>]"
15601 #. type: Plain text
15602 #: build/C/man5/nsswitch.conf.5:190
15604 msgstr "STATUS と ACTION はそれぞれ以下の値を取る。"
15606 #. type: Plain text
15607 #: build/C/man5/nsswitch.conf.5:201
15608 msgid "I<STATUS> =E<gt> B<success> | B<notfound> | B<unavail> | B<tryagain>"
15609 msgstr "I<STATUS> =E<gt> B<success> | B<notfound> | B<unavail> | B<tryagain>"
15611 #. type: Plain text
15612 #: build/C/man5/nsswitch.conf.5:207
15613 msgid "I<ACTION> =E<gt> B<return> | B<continue>"
15614 msgstr "I<ACTION> =E<gt> B<return> | B<continue>"
15616 #. type: Plain text
15617 #: build/C/man5/nsswitch.conf.5:212
15619 "The ! negates the test, matching all possible results except the one "
15620 "specified. The case of the keywords is not significant."
15622 "! はテスト結果を反転させる。\n"
15623 "つまり、指定された以外の全ての結果にマッチする。\n"
15624 "キーワードの大文字、小文字は無視される。"
15626 #. type: Plain text
15627 #: build/C/man5/nsswitch.conf.5:217
15629 "The I<STATUS> value is matched against the result of the lookup function "
15630 "called by the preceding service specification, and can be one of:"
15632 "I<STATUS> は、直前のサービス指定で呼び出しされた検索処理の結果に\n"
15633 "対して照合が行われる。 I<STATUS> には以下のいずれかを指定できる。"
15636 #: build/C/man5/nsswitch.conf.5:218
15639 msgstr "B<success>"
15641 #. type: Plain text
15642 #: build/C/man5/nsswitch.conf.5:222
15644 "No error occurred and the requested entry is returned. The default action "
15645 "for this condition is \"return\"."
15647 "エラーは発生せず、要求されたエントリが返された。\n"
15648 "この場合のデフォルトのアクションは \"return\" である。"
15651 #: build/C/man5/nsswitch.conf.5:222
15653 msgid "B<notfound>"
15654 msgstr "B<notfound>"
15656 #. type: Plain text
15657 #: build/C/man5/nsswitch.conf.5:226
15659 "The lookup succeeded, but the requested entry was not found. The default "
15660 "action for this condition is \"continue\"."
15662 "検索は成功したが、要求されたエントリが見つからなかった。\n"
15663 "この場合のデフォルトのアクションは \"continue\" である。"
15666 #: build/C/man5/nsswitch.conf.5:226
15669 msgstr "B<unavail>"
15671 #. type: Plain text
15672 #: build/C/man5/nsswitch.conf.5:233
15674 "The service is permanently unavailable. This can mean either that the "
15675 "required file cannot be read, or, for network services, that the server is "
15676 "not available or does not allow queries. The default action for this "
15677 "condition is \"continue\"."
15679 "サービスが永続的に利用できない。\n"
15680 "必要なファイルを読み込むことができない、\n"
15681 "ネットワークサービスの場合には、サーバが利用できないとか、\n"
15682 "サーバが問い合わせを許可していない、などが考えられる。\n"
15683 "この場合のデフォルトのアクションは \"continue\" である。"
15686 #: build/C/man5/nsswitch.conf.5:233
15688 msgid "B<tryagain>"
15689 msgstr "B<tryagain>"
15691 #. type: Plain text
15692 #: build/C/man5/nsswitch.conf.5:239
15694 "The service is temporarily unavailable. This could mean a file is locked or "
15695 "a server currently cannot accept more connections. The default action for "
15696 "this condition is \"continue\"."
15698 "サービスが一時的に利用できない。\n"
15699 "ファイルがロックされている、サーバがこれ以上接続を受け付けることができな"
15701 "などが考えられる。デフォル トのアクションは \"continue\" である。"
15703 #. type: Plain text
15704 #: build/C/man5/nsswitch.conf.5:244
15705 msgid "The I<ACTION> value can be one of:"
15706 msgstr "I<ACTION> には以下のいずれかを指定できる。"
15709 #: build/C/man5/nsswitch.conf.5:245
15714 #. type: Plain text
15715 #: build/C/man5/nsswitch.conf.5:257
15717 "Return a result now. Do not call any further lookup functions. However, "
15718 "for compatibility reasons, if this is the selected action for the B<group> "
15719 "database and the B<notfound> status, and the configuration file does not "
15720 "contain the B<initgroups> line, the next lookup function is always called, "
15721 "without affecting the search result."
15723 "結果をすぐに返す。 これ以上検索処理は呼び出されない。 ただし、互換性のため、 "
15724 "選択されたアクションが B<group> データベースに対するもので、 ステータスが "
15725 "B<notfound> であった場合で、 設定ファイルに B<initgroups> の行が含まれていな"
15726 "い場合には、次の検索処理は常に呼び出される (検索結果への影響はない)。"
15729 #: build/C/man5/nsswitch.conf.5:257
15731 msgid "B<continue>"
15732 msgstr "B<continue>"
15734 #. type: Plain text
15735 #: build/C/man5/nsswitch.conf.5:260
15736 msgid "Call the next lookup function."
15737 msgstr "次の検索処理を呼び出す。"
15740 #: build/C/man5/nsswitch.conf.5:261
15742 msgid "Compatibility mode (compat)"
15743 msgstr "互換モード (compat)"
15745 #. type: Plain text
15746 #: build/C/man5/nsswitch.conf.5:267
15748 "The NSS \"compat\" service is similar to \"files\" except that it "
15749 "additionally permits special entries in I</etc/passwd> for granting users or "
15750 "members of netgroups access to the system. The following entries are valid "
15753 "NSS \"compat\" サービスは \"files\" と似ているが、システムにアクセスできる\n"
15754 "ユーザやネットグループ (netgroup) のメンバの指定に I</etc/passwd> で\n"
15755 "特別なエントリを追加で使うことができる点が異なる。\n"
15756 "このモードでは、以下のエントリを使うことができる。"
15759 #: build/C/man5/nsswitch.conf.5:268
15761 msgid "B<+>I<user>"
15762 msgstr "B<+>I<user>"
15764 #. type: Plain text
15765 #: build/C/man5/nsswitch.conf.5:273
15766 msgid "Include the specified I<user> from the NIS passwd map."
15767 msgstr "NIS パスワードマップの指定された I<user> を含める。"
15770 #: build/C/man5/nsswitch.conf.5:273
15772 msgid "B<+@>I<netgroup>"
15773 msgstr "B<+@>I<netgroup>"
15775 #. type: Plain text
15776 #: build/C/man5/nsswitch.conf.5:277
15777 msgid "Include all users in the given I<netgroup>."
15778 msgstr "指定された I<netgroup> の全ユーザを含める。"
15781 #: build/C/man5/nsswitch.conf.5:277
15783 msgid "B<->I<user>"
15784 msgstr "B<->I<user>"
15786 #. type: Plain text
15787 #: build/C/man5/nsswitch.conf.5:282
15788 msgid "Exclude the specified I<user> from the NIS passwd map."
15789 msgstr "NIS パスワードマップの指定された I<user> を除外する。"
15792 #: build/C/man5/nsswitch.conf.5:282
15794 msgid "B<-@>I<netgroup>"
15795 msgstr "B<-@>I<netgroup>"
15797 #. type: Plain text
15798 #: build/C/man5/nsswitch.conf.5:286
15799 msgid "Exclude all users in the given I<netgroup>."
15800 msgstr "指定された I<netgroup> の全ユーザを除外する。"
15803 #: build/C/man5/nsswitch.conf.5:286
15808 #. type: Plain text
15809 #: build/C/man5/nsswitch.conf.5:290
15811 "Include every user, except previously excluded ones, from the NIS passwd map."
15813 "NIS パスワードマップのユーザのうち、\n"
15814 "それまでに除外されていない全てのユーザを含める。"
15816 #. type: Plain text
15817 #: build/C/man5/nsswitch.conf.5:298
15819 "By default the source is \"nis\", but this may be overridden by specifying "
15820 "\"nisplus\" as the source for the pseudo-databases B<passwd_compat>, "
15821 "B<group_compat>, and B<shadow_compat>."
15823 "デフォルトでは、データ源は \"nis\" だが、\n"
15824 "擬似データベース B<passwd_compat>, B<group_compat>, B<shadow_compat>\n"
15825 "ではデータ源として \"nisplus\" を指定することもできる。"
15827 #. type: Plain text
15828 #: build/C/man5/nsswitch.conf.5:305
15830 "A service named I<SERVICE> is implemented by a shared object library named "
15831 "I<libnss_SERVICE.so.>B<X> that resides in I</lib>."
15833 "I<SERVICE> という名前のサービスは I<libnss_SERVICE.so.>B<X> という\n"
15834 "名前の共有オブジェクトライブラリで実装されている。\n"
15835 "これは I</lib> に置かれる。"
15837 #. type: Plain text
15838 #: build/C/man5/nsswitch.conf.5:310
15839 msgid "NSS configuration file."
15840 msgstr "NSS の設定ファイル。"
15843 #: build/C/man5/nsswitch.conf.5:310
15845 msgid "I</lib/libnss_compat.so.>B<X>"
15846 msgstr "I</lib/libnss_compat.so.>B<X>"
15848 #. type: Plain text
15849 #: build/C/man5/nsswitch.conf.5:313
15850 msgid "implements \"compat\" source."
15851 msgstr "\"compat\" ソースを実装したもの。"
15854 #: build/C/man5/nsswitch.conf.5:313
15856 msgid "I</lib/libnss_db.so.>B<X>"
15857 msgstr "I</lib/libnss_db.so.>B<X>"
15859 #. type: Plain text
15860 #: build/C/man5/nsswitch.conf.5:316
15861 msgid "implements \"db\" source."
15862 msgstr "\"db\" ソースを実装したもの。"
15865 #: build/C/man5/nsswitch.conf.5:316
15867 msgid "I</lib/libnss_dns.so.>B<X>"
15868 msgstr "I</lib/libnss_dns.so.>B<X>"
15870 #. type: Plain text
15871 #: build/C/man5/nsswitch.conf.5:319
15872 msgid "implements \"dns\" source."
15873 msgstr "\"dns\" ソースを実装したもの。"
15876 #: build/C/man5/nsswitch.conf.5:319
15878 msgid "I</lib/libnss_files.so.>B<X>"
15879 msgstr "I</lib/libnss_files.so.>B<X>"
15881 #. type: Plain text
15882 #: build/C/man5/nsswitch.conf.5:322
15883 msgid "implements \"files\" source."
15884 msgstr "\"files\" ソースを実装したもの。"
15887 #: build/C/man5/nsswitch.conf.5:322
15889 msgid "I</lib/libnss_hesiod.so.>B<X>"
15890 msgstr "I</lib/libnss_hesiod.so.>B<X>"
15892 #. type: Plain text
15893 #: build/C/man5/nsswitch.conf.5:325
15894 msgid "implements \"hesiod\" source."
15895 msgstr "\"hesoid\" ソースを実装したもの。"
15898 #: build/C/man5/nsswitch.conf.5:325
15900 msgid "I</lib/libnss_nis.so.>B<X>"
15901 msgstr "I</lib/libnss_nis.so.>B<X>"
15903 #. type: Plain text
15904 #: build/C/man5/nsswitch.conf.5:328
15905 msgid "implements \"nis\" source."
15906 msgstr "\"nis\" ソースを実装したもの。"
15909 #: build/C/man5/nsswitch.conf.5:328
15911 msgid "I</lib/libnss_nisplus.so.>B<X>"
15912 msgstr "I</lib/libnss_nisplus.so.>B<X>"
15914 #. type: Plain text
15915 #: build/C/man5/nsswitch.conf.5:331
15916 msgid "implements \"nisplus\" source."
15917 msgstr "\"nisplus\" ソースを実装したもの。"
15919 #. type: Plain text
15920 #: build/C/man5/nsswitch.conf.5:339
15922 "Within each process that uses B<nsswitch.conf>, the entire file is read only "
15923 "once. If the file is later changed, the process will continue using the old "
15926 "I<nsswitch.conf> を利用するプロセスは、ファイルは一度しか読み込まない。\n"
15927 "その後で nsswitch.conf が書き換えられても、そのプロセスは古い設定のままで\n"
15930 #. type: Plain text
15931 #: build/C/man5/nsswitch.conf.5:352
15933 "Traditionally, there was only a single source for service information, often "
15934 "in the form of a single configuration file (e.g., I</etc/passwd>). However, "
15935 "as other name services, such as the Network Information Service (NIS) and "
15936 "the Domain Name Service (DNS), became popular, a method was needed that "
15937 "would be more flexible than fixed search orders coded into the C library. "
15938 "The Name Service Switch mechanism, which was based on the mechanism used by "
15939 "Sun Microsystems in the Solaris 2 C library, introduced a cleaner solution "
15942 "伝統的には、サービス情報の情報源は一つだけであり、\n"
15943 "その設定ファイルの形式も一つであった (例えば I</etc/passwd>)。\n"
15944 "一方で、 Network Information Service (NIS) や Domain Name Service\n"
15945 "(DNS) などの他の名前サービスが一般的になるに連れて、C ライブラリに埋め\n"
15946 "込まれた固定順序ではなく、検索順序を柔軟に指定する方法が必要になった。\n"
15947 "ネームサービススイッチ機構は、この問題に対するよりきれいな解決方法と\n"
15948 "なっている。ネームサービススイッチ機構は、 Sun Microsystems が \n"
15949 "Solaris 2 の C ライブラリで使った機構が基になっている。"
15951 #. type: Plain text
15952 #: build/C/man5/nsswitch.conf.5:355
15953 msgid "B<getent>(1), B<nss>(5)"
15954 msgstr "B<getent>(1), B<nss>(5)"
15957 #: build/C/man7/packet.7:12
15963 #: build/C/man7/packet.7:12
15966 msgstr "2014-02-26"
15968 #. type: Plain text
15969 #: build/C/man7/packet.7:15
15970 msgid "packet - packet interface on device level"
15971 msgstr "packet - デバイスレベルのパケットインターフェース"
15973 #. type: Plain text
15974 #: build/C/man7/packet.7:18
15976 msgid "B<#include E<lt>sys/socket.hE<gt>>\n"
15977 msgstr "B<#include E<lt>sys/socket.hE<gt>>\n"
15979 #. type: Plain text
15980 #: build/C/man7/packet.7:20
15982 msgid "B<#include E<lt>netpacket/packet.hE<gt>>\n"
15983 msgstr "B<#include E<lt>netpacket/packet.hE<gt>>\n"
15985 #. type: Plain text
15986 #: build/C/man7/packet.7:22
15988 msgid "B<#include E<lt>net/ethernet.hE<gt> /* the L2 protocols */>\n"
15989 msgstr "B<#include E<lt>net/ethernet.hE<gt> /* L2 プロトコル */>\n"
15991 #. type: Plain text
15992 #: build/C/man7/packet.7:24
15994 msgid "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
15995 msgstr "B<packet_socket = socket(AF_PACKET, int >I<socket_type>B<, int >I<protocol>B<);>\n"
15997 #. type: Plain text
15998 #: build/C/man7/packet.7:30
16000 "Packet sockets are used to receive or send raw packets at the device driver "
16001 "(OSI Layer 2) level. They allow the user to implement protocol modules in "
16002 "user space on top of the physical layer."
16004 "packet ソケットは、デバイスドライバ (OSI レイヤ 2) レベルで 生のパケット "
16005 "(raw packet) を送受信するために用いられる。 packet ソケットを使うと、ユーザー"
16006 "空間で物理層の上に プロトコルモジュールを実装することができる。"
16008 #. type: Plain text
16009 #: build/C/man7/packet.7:51
16011 "The I<socket_type> is either B<SOCK_RAW> for raw packets including the link-"
16012 "level header or B<SOCK_DGRAM> for cooked packets with the link-level header "
16013 "removed. The link-level header information is available in a common format "
16014 "in a I<sockaddr_ll>. I<protocol> is the IEEE 802.3 protocol number in "
16015 "network byte order. See the I<E<lt>linux/if_ether.hE<gt>> include file for "
16016 "a list of allowed protocols. When protocol is set to B<htons(ETH_P_ALL)> "
16017 "then all protocols are received. All incoming packets of that protocol type "
16018 "will be passed to the packet socket before they are passed to the protocols "
16019 "implemented in the kernel."
16021 "I<socket_type> には B<SOCK_RAW> と B<SOCK_DGRAM> のいずれかを指定する。 "
16022 "B<SOCK_RAW> はリンクレベルヘッダを含む raw パケットを、 B<SOCK_DGRAM> はリン"
16023 "クレベルヘッダが削除された加工済みパケットを示す。 リンクレベルヘッダ情報は "
16024 "I<sockaddr_ll> で共通のフォーマットで入手できる。 I<protocol> には IEEE "
16025 "802.3 プロトコル番号を ネットワークバイトオーダーで指定する。 指定できるプロ"
16026 "トコルのリストは、インクルードファイル I<E<lt>linux/if_ether.hE<gt>> を参照。"
16027 "プロトコルを B<htons(ETH_P_ALL)> にすると、全てのプロトコルが受信される。 外"
16028 "部から来たパケットのうち指定したプロトコルのものは、 カーネルに実装されている"
16029 "プロトコルに渡される前の段階で、 packet ソケットに渡される。"
16031 #. type: Plain text
16032 #: build/C/man7/packet.7:55
16034 "Only processes with effective UID 0 or the B<CAP_NET_RAW> capability may "
16035 "open packet sockets."
16037 "packet ソケットをオープンできるのは、 実効ユーザーID が 0 のプロセスか、 "
16038 "B<CAP_NET_RAW> ケーパビリティを持つプロセスだけである。"
16040 #. type: Plain text
16041 #: build/C/man7/packet.7:73
16043 "B<SOCK_RAW> packets are passed to and from the device driver without any "
16044 "changes in the packet data. When receiving a packet, the address is still "
16045 "parsed and passed in a standard I<sockaddr_ll> address structure. When "
16046 "transmitting a packet, the user supplied buffer should contain the physical "
16047 "layer header. That packet is then queued unmodified to the network driver "
16048 "of the interface defined by the destination address. Some device drivers "
16049 "always add other headers. B<SOCK_RAW> is similar to but not compatible with "
16050 "the obsolete B<AF_INET/SOCK_PACKET> of Linux 2.0."
16052 "B<SOCK_RAW> パケットでは、パケットをデバイスドライバと受け渡しする際、 パケッ"
16053 "トデータに変更が行われることはない。 パケットの受信時には、アドレスの解析だけ"
16054 "は行われ、 標準的な I<sockaddr_ll> アドレス構造体に渡される。パケットの送信時"
16055 "には、ユーザが指定する バッファに物理層のヘッダが含まれている必要がある。 パ"
16056 "ケットはそのまま修正を受けずに、行き先アドレスから決定される インターフェース"
16057 "のネットワークドライバにキューイングされる。 デバイスドライバによっては、他の"
16058 "ヘッダを常に追加するものもある。 B<SOCK_RAW> は Linux 2.0 の obosolete な "
16059 "B<AF_INET/SOCK_PACKET> と似ているが、互換性があるわけではない。"
16061 #. type: Plain text
16062 #: build/C/man7/packet.7:83
16064 "B<SOCK_DGRAM> operates on a slightly higher level. The physical header is "
16065 "removed before the packet is passed to the user. Packets sent through a "
16066 "B<SOCK_DGRAM> packet socket get a suitable physical layer header based on "
16067 "the information in the I<sockaddr_ll> destination address before they are "
16070 "B<SOCK_DGRAM> はやや高位のレベルで動作する。物理ヘッダは、パケットがユーザー"
16071 "に 渡される前に削除される。 B<SOCK_DGRAM> の packet ソケットを通して送られる"
16072 "パケットは、 I<sockaddr_ll> の行き先アドレスの情報に基づき、適切な物理層の"
16073 "ヘッダが付加されてから、 キューに送られる。"
16075 #. type: Plain text
16076 #: build/C/man7/packet.7:96
16078 "By default all packets of the specified protocol type are passed to a packet "
16079 "socket. To get packets only from a specific interface use B<bind>(2) "
16080 "specifying an address in a I<struct sockaddr_ll> to bind the packet socket "
16081 "to an interface. Only the I<sll_protocol> and the I<sll_ifindex> address "
16082 "fields are used for purposes of binding."
16084 "デフォルトでは、指定したプロトコル型のパケットはすべて packet ソケットに送ら"
16085 "れる。特定のインターフェースからのパケットだけを 取得したい場合には、 "
16086 "I<struct sockaddr_ll> にアドレスを指定して B<bind>(2) を呼び、 packet ソケッ"
16087 "トをそのインターフェースに結び付ける (バインドする)。 バインドの際には、アド"
16088 "レスフィールドのうち I<sll_protocol> と I<sll_ifindex> だけが用いられる。"
16090 #. type: Plain text
16091 #: build/C/man7/packet.7:100
16092 msgid "The B<connect>(2) operation is not supported on packet sockets."
16093 msgstr "B<connect>(2) 操作は packet ソケットではサポートされていない。"
16095 #. type: Plain text
16096 #: build/C/man7/packet.7:109
16098 "When the B<MSG_TRUNC> flag is passed to B<recvmsg>(2), B<recv>(2), "
16099 "B<recvfrom>(2) the real length of the packet on the wire is always "
16100 "returned, even when it is longer than the buffer."
16102 "B<MSG_TRUNC> フラグが B<recvmsg>(2), B<recv>(2), B<recvfrom>(2) に渡される"
16103 "と、 (バッファサイズより大きかったとしても) 常に実際に通信された パケットの長"
16107 #: build/C/man7/packet.7:109
16109 msgid "Address types"
16112 #. type: Plain text
16113 #: build/C/man7/packet.7:113
16114 msgid "The I<sockaddr_ll> is a device independent physical layer address."
16115 msgstr "I<sockaddr_ll> はデバイスに依存しない物理層のアドレスである。"
16117 #. type: Plain text
16118 #: build/C/man7/packet.7:125
16121 "struct sockaddr_ll {\n"
16122 " unsigned short sll_family; /* Always AF_PACKET */\n"
16123 " unsigned short sll_protocol; /* Physical layer protocol */\n"
16124 " int sll_ifindex; /* Interface number */\n"
16125 " unsigned short sll_hatype; /* ARP hardware type */\n"
16126 " unsigned char sll_pkttype; /* Packet type */\n"
16127 " unsigned char sll_halen; /* Length of address */\n"
16128 " unsigned char sll_addr[8]; /* Physical layer address */\n"
16131 "struct sockaddr_ll {\n"
16132 " unsigned short sll_family; /* 常に AF_PACKET */\n"
16133 " unsigned short sll_protocol; /* 物理層のプロトコル */\n"
16134 " int sll_ifindex; /* インターフェース番号 */\n"
16135 " unsigned short sll_hatype; /* ARP ハードウェア種別 */\n"
16136 " unsigned char sll_pkttype; /* パケット種別 */\n"
16137 " unsigned char sll_halen; /* アドレスの長さ */\n"
16138 " unsigned char sll_addr[8]; /* 物理層のアドレス */\n"
16141 #. type: Plain text
16142 #: build/C/man7/packet.7:164
16144 "I<sll_protocol> is the standard ethernet protocol type in network byte order "
16145 "as defined in the I<E<lt>linux/if_ether.hE<gt>> include file. It defaults "
16146 "to the socket's protocol. I<sll_ifindex> is the interface index of the "
16147 "interface (see B<netdevice>(7)); 0 matches any interface (only permitted for "
16148 "binding). I<sll_hatype> is an ARP type as defined in the I<E<lt>linux/"
16149 "if_arp.hE<gt>> include file. I<sll_pkttype> contains the packet type. "
16150 "Valid types are B<PACKET_HOST> for a packet addressed to the local host, "
16151 "B<PACKET_BROADCAST> for a physical layer broadcast packet, "
16152 "B<PACKET_MULTICAST> for a packet sent to a physical layer multicast address, "
16153 "B<PACKET_OTHERHOST> for a packet to some other host that has been caught by "
16154 "a device driver in promiscuous mode, and B<PACKET_OUTGOING> for a packet "
16155 "originated from the local host that is looped back to a packet socket. "
16156 "These types make sense only for receiving. I<sll_addr> and I<sll_halen> "
16157 "contain the physical layer (e.g., IEEE 802.3) address and its length. The "
16158 "exact interpretation depends on the device."
16160 "I<sll_protocol> は標準的なイーサネットプロトコルのタイプで、 ネットワーク\n"
16161 "バイトオーダーで記述する。 インクルードファイル\n"
16162 "I<E<lt>linux/if_ether.hE<gt>> で定義されている。 これがこのソケットのプロト\n"
16163 "コルのデフォルトとなる。 I<sll_ifindex> はそのインターフェースの interface\n"
16164 "index である (B<netdevice>(7) を参照)。 0 は (バインドが許可されている) 任\n"
16165 "意のインターフェースにマッチする。 I<sll_hatype> は、インクルードファイル\n"
16166 "I<E<lt>linux/if_arp.hE<gt>> で定義されている ARP 種別である。\n"
16167 "I<sll_pkttype> はパケット種別である。指定できる種別は以下のいずれかである:\n"
16168 "B<PACKET_HOST> (ローカルホスト向けのパケット)、 B<PACKET_BORADCAST> (物理層\n"
16169 "のブロードキャストパケット)、 B<PACKET_MULTICAST> (物理層のマルチキャストア\n"
16170 "ドレスに送るパケット)、 B<PACKET_OTHERHOST> (他のホストに向けられたパケット\n"
16171 "のうち、 無差別モード (promiscuous mode: 後述) のデバイスドライバにより補足\n"
16172 "されたもの)、 B<PACKET_OUTGOING> (ローカルホストから発信され、 packet ソ"
16174 "トにループバックしてきたパケット)。 これらの種別が意味を持つのは受信時のみ\n"
16175 "である。 I<sll_addr> と I<sll_halen> は、物理層の (つまり IEEE 802.3 の) \n"
16176 "アドレスとその長さである。 厳密な解釈はデバイスに依存する。"
16178 #. type: Plain text
16179 #: build/C/man7/packet.7:180
16181 "When you send packets it is enough to specify I<sll_family>, I<sll_addr>, "
16182 "I<sll_halen>, I<sll_ifindex>. The other fields should be 0. I<sll_hatype> "
16183 "and I<sll_pkttype> are set on received packets for your information. For "
16184 "bind only I<sll_protocol> and I<sll_ifindex> are used."
16186 "パケットを送る場合は、 I<sll_family>, I<sll_addr>, I<sll_halen>, "
16187 "I<sll_ifindex> を指定すれば十分である。 その他のフィールドは 0 にしておくべき"
16188 "である。 I<sll_hatype> と I<sll_pkttype> には受信したパケットの情報が設定され"
16189 "る。 バインドの際には、 I<sll_protocol> と I<sll_ifindex> だけが使用される。"
16191 #. type: Plain text
16192 #: build/C/man7/packet.7:185
16194 "Packet socket options are configured by calling B<setsockopt>(2) with level "
16197 "パケットソケットのオプションは、レベル B<SOL_PACKET> を指定して B<setsockopt>"
16198 "(2) を呼び出すことで設定できる。"
16201 #: build/C/man7/packet.7:185
16203 msgid "B<PACKET_ADD_MEMBERSHIP>"
16204 msgstr "B<PACKET_ADD_MEMBERSHIP>"
16207 #: build/C/man7/packet.7:188
16209 msgid "B<PACKET_DROP_MEMBERSHIP>"
16210 msgstr "B<PACKET_DROP_MEMBERSHIP>"
16212 #. type: Plain text
16213 #: build/C/man7/packet.7:200
16215 "Packet sockets can be used to configure physical layer multicasting and "
16216 "promiscuous mode. B<PACKET_ADD_MEMBERSHIP> adds a binding and "
16217 "B<PACKET_DROP_MEMBERSHIP> drops it. They both expect a I<packet_mreq> "
16218 "structure as argument:"
16220 "packet ソケットは、物理層のマルチキャストや 無差別モード (promiscuous mode) "
16221 "を設定して使うことができる。 B<PACKET_ADD_MEMBERSHIP> はバインドを追加し、 "
16222 "B<PACKET_DROP_MEMBERSHIP> はバインドを削除する。これらはいずれも "
16223 "I<packet_mreq> 構造体を引き数に取る。"
16225 #. type: Plain text
16226 #: build/C/man7/packet.7:209
16229 "struct packet_mreq {\n"
16230 " int mr_ifindex; /* interface index */\n"
16231 " unsigned short mr_type; /* action */\n"
16232 " unsigned short mr_alen; /* address length */\n"
16233 " unsigned char mr_address[8]; /* physical layer address */\n"
16236 "struct packet_mreq {\n"
16237 " int mr_ifindex; /* インターフェース番号 */\n"
16238 " unsigned short mr_type; /* 動作 */\n"
16239 " unsigned short mr_alen; /* アドレスの長さ */\n"
16240 " unsigned char mr_address[8]; /* 物理層のアドレス */\n"
16243 #. type: Plain text
16244 #: build/C/man7/packet.7:230
16246 "B<mr_ifindex> contains the interface index for the interface whose status "
16247 "should be changed. The B<mr_type> parameter specifies which action to "
16248 "perform. B<PACKET_MR_PROMISC> enables receiving all packets on a shared "
16249 "medium (often known as \"promiscuous mode\"), B<PACKET_MR_MULTICAST> binds "
16250 "the socket to the physical layer multicast group specified in B<mr_address> "
16251 "and B<mr_alen>, and B<PACKET_MR_ALLMULTI> sets the socket up to receive all "
16252 "multicast packets arriving at the interface."
16254 "I<mr_ifindex> は、ステータスを変更したいインターフェースの インターフェース番"
16255 "号である。 I<mr_type> パラメータは実行する動作を指定する: "
16256 "B<PACKET_MR_PROMISC> は、共有している媒体からの全てのパケットを受信できるよう"
16257 "にする (しばしば \"無差別モード (promiscuous mode)\" と呼ばれる)。 "
16258 "B<PACKET_MR_MULTICAST> は、そのソケットを、 I<mr_address> と I<mr_alen> で指"
16259 "定される物理層のマルチキャストブループにバインドする。 B<PACKET_MR_ALLMULTI> "
16260 "は socket を up にして、そのインターフェースに到達したすべての マルチキャスト"
16263 #. type: Plain text
16264 #: build/C/man7/packet.7:236
16266 "In addition, the traditional ioctls B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
16267 "B<SIOCDELMULTI> can be used for the same purpose."
16269 "昔からある ioctl だけでなく、 B<SIOCSIFFLAGS>, B<SIOCADDMULTI>, "
16270 "B<SIOCDELMULTI> を同じ目的に用いることができる。"
16273 #: build/C/man7/packet.7:236
16275 msgid "B<PACKET_AUXDATA> (since Linux 2.6.21)"
16276 msgstr "B<PACKET_AUXDATA> (Linux 2.6.21 以降)"
16278 #. commit 8dc4194474159660d7f37c495e3fc3f10d0db8cc
16279 #. type: Plain text
16280 #: build/C/man7/packet.7:246
16282 "If this binary option is enabled, the packet socket passes a metadata "
16283 "structure along with each packet in the B<recvmsg>(2) control field. The "
16284 "structure can be read with B<cmsg>(3). It is defined as"
16285 msgstr "ブール値のオプションを有効すると、 パケットソケットは、パケットと一緒にメタデータ構造体を B<recvmsg>(2) コントロールフィールドで渡す。 この構造体は B<cmsg>(3) を使って読むことができる。 定義は以下の通りである。"
16287 #. type: Plain text
16288 #: build/C/man7/packet.7:258
16291 "struct tpacket_auxdata {\n"
16292 " __u32 tp_status;\n"
16293 " __u32 tp_len; /* packet length */\n"
16294 " __u32 tp_snaplen; /* captured length */\n"
16297 " __u16 tp_vlan_tci;\n"
16298 " __u16 tp_padding;\n"
16301 "struct tpacket_auxdata {\n"
16302 " __u32 tp_status;\n"
16303 " __u32 tp_len; /* パケット長 */\n"
16304 " __u32 tp_snaplen; /* キャプチャした長さ */\n"
16307 " __u16 tp_vlan_tci;\n"
16308 " __u16 tp_padding;\n"
16312 #: build/C/man7/packet.7:260
16314 msgid "B<PACKET_FANOUT> (since Linux 3.1)"
16315 msgstr "B<PACKET_FANOUT> (Linux 3.1 以降)"
16317 #. commit dc99f600698dcac69b8f56dda9a8a00d645c5ffc
16318 #. type: Plain text
16319 #: build/C/man7/packet.7:282
16321 "To scale processing across threads, packet sockets can form a fanout group. "
16322 "In this mode, each matching packet is enqueued onto only one socket in the "
16323 "group. A socket joins a fanout group by calling B<setsockopt>(2) with "
16324 "level B<SOL_PACKET> and option B<PACKET_FANOUT>. Each network namespace can "
16325 "have up to 65536 independent groups. A socket selects a group by encoding "
16326 "the ID in the first 16 bits of the integer option value. The first packet "
16327 "socket to join a group implicitly creates it. To successfully join an "
16328 "existing group, subsequent packet sockets must have the same protocol, "
16329 "device settings, fanout mode and flags (see below). Packet sockets can "
16330 "leave a fanout group only by closing the socket. The group is deleted when "
16331 "the last socket is closed."
16332 msgstr "スレッドにまたがって処理をスケールさせるため、 パケットソケットはファンアウトグループを構成することができる。 このモードでは、 マッチしたそれぞれのパケットはグループ内のいずれか一つのソケットにだけキューイングされる。 ソケットをファンアウトグループに参加させるには、 レベル B<SOL_PACKET> でオプション B<PACKET_FANOUT> を指定して B<setsockopt>(2) を呼び出す。 ネットワーク名前空間毎に最大 65536 個の独立したグループを持つことができる。 整数のオプション値の先頭 16 ビットに ID をエンコードすることで、 ソケットはグループを選択する。 あるグループへの最初のパケットソケットの参加があった時点で、 グループは暗黙のうちに作成される。 既存のグループへの参加が成功するためには、 それ以降にそのグループに参加しようとするパケットソケットは、 プロトコロ、 デバイス設定、ファンアウトモード、フラグが同じである必要がある (下記参照)。 パケットソケットがファンアウトグループから抜けるのは、 そのソケットをクローズした場合だけである。 ファンアウトグループは最後のソケットがクローズした場合に削除される。"
16334 #. commit 2d36097d26b5991d71a2cf4a20c1a158f0f1bfcd
16335 #. type: Plain text
16336 #: build/C/man7/packet.7:305
16338 "Fanout supports multiple algorithms to spread traffic between sockets. The "
16339 "default mode, B<PACKET_FANOUT_HASH>, sends packets from the same flow to the "
16340 "same socket to maintain per-flow ordering. For each packet, it chooses a "
16341 "socket by taking the packet flow hash modulo the number of sockets in the "
16342 "group, where a flow hash is a hash over network-layer address and optional "
16343 "transport-layer port fields. The load-balance mode B<PACKET_FANOUT_LB> "
16344 "implements a round-robin algorithm. B<PACKET_FANOUT_CPU> selects the socket "
16345 "based on the CPU that the packet arrived on. B<PACKET_FANOUT_ROLLOVER> "
16346 "processes all data on a single socket, moves to the next when one becomes "
16347 "backlogged. B<PACKET_FANOUT_RND> selects the socket using a pseudo-random "
16348 "number generator. B<PACKET_FANOUT_QM> (available since Linux 3.14) selects "
16349 "the socket using the recorded queue_mapping of the received skb."
16350 msgstr "ファンアウトでは、 複数のソケットにトラフィックを分散させるアルゴリズムを複数サポートしている。 デフォルトのモードである B<PACKET_FANOUT_HASH> では、同じフローのパケットは同じソケットに送信され、 フロー単位の順序が維持される。 パケットごとに、パケットフローのハッシュの、そのグループのソケット数に対する剰余が計算され、ソケットが選択される。 なお、フローハッシュはネットワーク層のアドレスとトランスポート層のポートフィールドに対するハッシュである (トランスポート層ポートは存在する場合のみ)。 負荷分散モード B<PACKET_FANOUT_LB> はラウンドロビンアルゴリズムが採用されている。 B<PACKET_FANOUT_CPU> では、 パケットが到着した CPU に基づいてソケットを選択する。 B<PACKET_FANOUT_ROLLOVER> はすべてのデータを一つのソケットで処理し、 そのソケットで処理待ち (backlog) が発生した場合に次のソケットに移る。 B<PACKET_FANOUT_RND> では擬似乱数発生器を使ってソケットが選択される。 B<PACKET_FANOUT_QM> (Linux 3.14 以降で利用可能) では受信 skb に記録された queue_mapping を使ってソケットが選択される。"
16352 #. type: Plain text
16353 #: build/C/man7/packet.7:320
16355 "Fanout modes can take additional options. IP fragmentation causes packets "
16356 "from the same flow to have different flow hashes. The flag "
16357 "B<PACKET_FANOUT_FLAG_DEFRAG>, if set, causes packet to be defragmented "
16358 "before fanout is applied, to preserve order even in this case. Fanout mode "
16359 "and options are communicated in the second 16 bits of the integer option "
16360 "value. The flag B<PACKET_FANOUT_FLAG_ROLLOVER> enables the roll over "
16361 "mechanism as a backup strategy: if the original fanout algorithm selects a "
16362 "backlogged socket, the packet rolls over to the next available one."
16363 msgstr "ファンアウトモードでは追加のオプションがある。 IP フラグメンテーションが起こると、 同じフローのパケットのフローハッシュが異なるハッシュを持つことになる。 フラグ B<PACKET_FANOUT_FLAG_DEFRAG> をセットすると、 パケットはファンアウトを行う前にフラグメント再構築が行われるようになり、 フラグメントがあった場合でも順序が維持される。 ファンアウトモードとオプションは、 整数のオプション値の下位 16 ビットで指定される。 フラグ B<PACKET_FANOUT_FLAG_ROLLOVER> を指定すると、 バックアップ戦略としてロールオーバー方式が有効になる。 元のファンアウトアルゴリズムが backlog ソケットを選択していれば、 パケットは次の利用可能なソケットにロールオーバーされる。"
16366 #: build/C/man7/packet.7:320
16368 msgid "B<PACKET_LOSS> (with B<PACKET_TX_RING>)"
16369 msgstr "B<PACKET_LOSS> (B<PACKET_TX_RING> で使用)"
16371 #. type: Plain text
16372 #: build/C/man7/packet.7:325
16374 "If set, do not silently drop a packet on transmission error, but return it "
16375 "with status set to B<TP_STATUS_WRONG_FORMAT>."
16376 msgstr "有効にすると、転送エラーの場合にパケットをエラーなしに黙って破棄せず、 ステータスを B<TP_STATUS_WRONG_FORMAT> にセットして返る。"
16379 #: build/C/man7/packet.7:325
16381 msgid "B<PACKET_RESERVE> (with B<PACKET_RX_RING>)"
16382 msgstr "B<PACKET_RESERVE> (B<PACKET_RX_RING> で使用)"
16384 #. type: Plain text
16385 #: build/C/man7/packet.7:330
16387 "By default, a packet receive ring writes packets immediately following the "
16388 "metadata structure and alignment padding. This integer option reserves "
16389 "additional headroom."
16390 msgstr "デフォルトでは、パケット受信リングはメタデータ構造体とアライメント用のパディングの直後にパケットを書き込む。 この整数オプションを設定すると、パケットの前に追加で領域が予約される。"
16393 #: build/C/man7/packet.7:330
16395 msgid "B<PACKET_RX_RING>"
16396 msgstr "B<PACKET_RX_RING>"
16398 #. type: Plain text
16399 #: build/C/man7/packet.7:370
16401 "Create a memory-mapped ring buffer for asynchronous packet reception. The "
16402 "packet socket reserves a contiguous region of application address space, "
16403 "lays it out into an array of packet slots and copies packets (up to "
16404 "I<tp_snaplen>) into subsequent slots. Each packet is preceded by a "
16405 "metadata structure similar to I<tpacket_auxdata>. The protocol fields "
16406 "encode the offset to the data from the start of the metadata header. "
16407 "I<tp_net> stores the offset to the network layer. If the packet socket is "
16408 "of type B<SOCK_DGRAM>, then I<tp_mac> is the same. If it is of type "
16409 "B<SOCK_RAW>, then that field stores the offset to the link-layer frame. "
16410 "Packet socket and application communicate the head and tail of the ring "
16411 "through the I<tp_status> field. The packet socket owns all slots with "
16412 "status B<TP_STATUS_KERNEL>. After filling a slot, it changes the status of "
16413 "the slot to transfer ownership to the application. During normal operation, "
16414 "the new status is B<TP_STATUS_USER>, to signal that a correctly received "
16415 "packet has been stored. When the application has finished processing a "
16416 "packet, it transfers ownership of the slot back to the socket by setting the "
16417 "status to B<TP_STATUS_KERNEL>. Packet sockets implement multiple variants "
16418 "of the packet ring. The implementation details are described in "
16419 "I<Documentation/networking/packet_mmap.txt> in the Linux kernel source tree."
16420 msgstr "非同期でのパケット受信用のメモリマップされたリングバッファを作成する。 パケットソケットはアプリケーションのアドレス空間に連続する領域を確保し、 そこにパケットスロットの配列を構成し、 (最大 I<tp_snaplen> 個の) パケットを順にスロットにコピーする。 各パケットの前には I<tpacket_auxdata> に似たメタデータ構造体が置かれる。 プロトコルフィールドには、データの、メタデータヘッダーの先頭からのオフセットが入る。 I<tp_net> にはネットワーク層へのオフセットが格納される。 パケットソケットが B<SOCK_DGRAM> 型の場合、 I<tp_mac> も同じである。 B<SOCK_RAW> 型の場合、 I<tp_net> にはリンク層のフレームへのオフセットが入る。 パケットソケットとアプリケーションは I<tp_status> フィールドを通してリングの先頭 (head) と末尾 (tail) の情報を受け渡す。 パケットソケットはすべてのスロットをステータス B<TP_STATUS_KERNEL> で所有しており、 スロットにデータが入ると、パケットソケットはそのスロットのステータスをアプリケーションに所有権を渡す状態に変更する。 通常の動作では、新しいステータスは B<TP_STATUS_USER> であり、これは正しく受信されたパケットが格納されたことを示している。 アプリケーションがパケットの処理を終えると、アプリケーションはそのスロットのステータスを B<TP_STATUS_KERNEL> に設定し、そのスロットの所有権をソケットに返す。 パケットソケットは、複数バージョンのパケットリングを実装している。 実装の詳細は Linux カーネルソースツリーの I<Documentation/networking/packet_mmap.txt> で説明されている。"
16423 #: build/C/man7/packet.7:370
16425 msgid "B<PACKET_STATISTICS>"
16426 msgstr "B<PACKET_STATISTICS>"
16428 #. type: Plain text
16429 #: build/C/man7/packet.7:373
16430 msgid "Retrieve packet socket statistics in the form of a structure"
16431 msgstr "パケットソケットの統計情報を次の構造体形式で取得する。"
16433 #. type: Plain text
16434 #: build/C/man7/packet.7:380
16437 "struct tpacket_stats {\n"
16438 " unsigned int tp_packets; /* Total packet count */\n"
16439 " unsigned int tp_drops; /* Dropped packet count */\n"
16442 "struct tpacket_stats {\n"
16443 " unsigned int tp_packets; /* 総パケット数 */\n"
16444 " unsigned int tp_drops; /* ドロップパケット数 */\n"
16447 #. type: Plain text
16448 #: build/C/man7/packet.7:386
16450 "Receiving statistics resets the internal counters. The statistics structure "
16451 "differs when using a ring of variant B<TPACKET_V3>."
16452 msgstr "統計情報を取得すると、内部カウンターはリセットされる。 B<TPACKET_V3> のリングを使う場合には、統計情報構造体は違うものになる。"
16455 #: build/C/man7/packet.7:386
16457 msgid "B<PACKET_TIMESTAMP> (with B<PACKET_RX_RING>; since Linux 2.6.36)"
16458 msgstr "B<PACKET_TIMESTAMP> (B<PACKET_RX_RING> で使用; Linux 2.6.36 以降)"
16460 #. commit 614f60fa9d73a9e8fdff3df83381907fea7c5649
16461 #. type: Plain text
16462 #: build/C/man7/packet.7:396
16464 "The packet receive ring always stores a timestamp in the metadata header. "
16465 "By default, this is a software generated timestamp generated when the packet "
16466 "is copied into the ring. This integer option selects the type of "
16467 "timestamp. Besides the default, it support the two hardware formats "
16468 "described in I<Documentation/networking/timestamping.txt> in the Linux "
16469 "kernel source tree."
16470 msgstr "パケット受信リングでは常にタイムスタンプがメタデータヘッダーに格納される。 デフォルトでは、タイムスタンプはパケットがリングにコピーされた時点で生成されるソフトウェアによるタイムスタンプである。 この整数オプションによりタイムスタンプの種類を選択できる。 デフォルト以外では、 Linux カーネルソースツリーの I<Documentation/networking/timestamping.txt> に説明がある 2 種類のハードウェアフォーマットがサポートされている。"
16473 #: build/C/man7/packet.7:396
16475 msgid "B<PACKET_TX_RING> (since Linux 2.6.31)"
16476 msgstr "B<PACKET_TX_RING> (Linux 2.6.31 以降)"
16478 #. commit 69e3c75f4d541a6eb151b3ef91f34033cb3ad6e1
16479 #. type: Plain text
16480 #: build/C/man7/packet.7:425
16482 "Create a memory-mapped ring buffer for packet transmission. This option is "
16483 "similar to B<PACKET_RX_RING> and takes the same arguments. The application "
16484 "writes packets into slots with status B<TP_STATUS_AVAILABLE> and schedules "
16485 "them for transmission by changing the status to B<TP_STATUS_SEND_REQUEST>. "
16486 "When packets are ready to be transmitted, the application calls B<send>(2) "
16487 "or a variant thereof. The I<buf> and I<len> fields of this call are "
16488 "ignored. If an address is passed using B<sendto>(2) or B<sendmsg>(2), then "
16489 "that overrides the socket default. On successful transmission, the socket "
16490 "resets the slot to B<TP_STATUS_AVAILABLE>. It discards packets silently on "
16491 "error unless B<PACKET_LOSS> is set."
16492 msgstr "パケット送信用のメモリマップされたリングバッファを作成する。 このオプションは B<PACKET_RX_RING> と同様で、同じ引き数を取る。 アプリケーションはステータスが B<TP_STATUS_AVAILABLE> のスロットにパケットを書き込み、 B<TP_STATUS_SEND_REQUEST> にステータスを変更することでそのパケットが送信できるようにする。 パケットの送信準備ができたら、アプリケーションは続けて B<send>(2) 系のシステムコールを呼び出す。 システムコールの引き数 I<buf> と I<len> は無視される。 B<sendto>(2) や B<sendmsg>(2) を使ってアドレスが渡された場合、 ソケットのデフォルト値ではなくそのアドレスが使用される。 送信に成功すると、ソケットはそのスロットを B<TP_STATUS_AVAILABLE> に戻す。 エラーの場合、 B<PACKET_LOSS> がセットされていなければエラーなしでパケットは廃棄される。"
16495 #: build/C/man7/packet.7:425
16497 msgid "B<PACKET_VERSION> (with B<PACKET_RX_RING>; since Linux 2.6.27)"
16498 msgstr "B<PACKET_VERSION> (B<PACKET_RX_RING> で使用; Linux 2.6.27 以降)"
16500 #. commit bbd6ef87c544d88c30e4b762b1b61ef267a7d279
16501 #. type: Plain text
16502 #: build/C/man7/packet.7:434
16504 "By default, B<PACKET_RX_RING> creates a packet receive ring of variant "
16505 "B<TPACKET_V1>. To create another variant, configure the desired variant by "
16506 "setting this integer option before creating the ring."
16507 msgstr "デフォルトでは、 B<PACKET_RX_RING> は B<TPACKET_V1> のパケット受信リングを作成する。別のバージョンのリングを作成するには、そのリングを作成する前に希望するバージョンが使われるようにこの整数オプションを設定すること。"
16510 #: build/C/man7/packet.7:434
16512 msgid "B<PACKET_QDISC_BYPASS> (since Linux 3.14)"
16513 msgstr "B<PACKET_QDISC_BYPASS> (Linux 3.14 以降)"
16515 #. commit d346a3fae3ff1d99f5d0c819bf86edf9094a26a1
16516 #. type: Plain text
16517 #: build/C/man7/packet.7:449
16519 "By default, packets sent through packet sockets pass through the kernel's "
16520 "qdisc (traffic control) layer, which is fine for the vast majority of use "
16521 "cases. For traffic generator appliances using packet sockets that intend to "
16522 "brute-force flood the network\\(emfor example, to test devices under load in "
16523 "a similar fashion to pktgen\\(emthis layer can be bypassed by setting this "
16524 "integer option to 1. A side effect is that packet buffering in the qdisc "
16525 "layer is avoided, which will lead to increased drops when network device "
16526 "transmit queues are busy; therefore, use at your own risk."
16527 msgstr "デフォルトでは、パケットはカーネルの qdisc (トラフィック制御) レイヤー経由で渡される。 これは大半のユースケースに合っている。 ネットワークに対して可能な限りパケットを送信する (例えば pkggen と同様の方法で負荷対象のデバイスを試験する) のにパケットソケットを使うトラフィック生成アプライアンスでは、この整数オプションを 1 に設定することで qdisc レイヤーを飛ばすことができる。 qdisc レイヤーでのパケットバッファが行われなくなるという副作用がある。 これにより、 ネットワークデバイスの送信キューの使用量が高い場合にパケット廃棄が起きやすくなる。"
16529 #. FIXME Document SIOCGSTAMPNS
16530 #. type: Plain text
16531 #: build/C/man7/packet.7:456
16533 "B<SIOCGSTAMP> can be used to receive the timestamp of the last received "
16534 "packet. Argument is a I<struct timeval> variable."
16536 "B<SIOCGSTAMP> を用いると、最後に受信したパケットのタイムスタンプを得ることが"
16537 "できる。 引き数は I<struct timeval> 型の変数である。"
16539 #. type: Plain text
16540 #: build/C/man7/packet.7:462
16542 "In addition, all standard ioctls defined in B<netdevice>(7) and B<socket>"
16543 "(7) are valid on packet sockets."
16545 "さらに、 B<netdevice>(7) および B<socket>(7) で定義されている標準の ioctl "
16546 "はいずれも packet ソケットに指定可能である。"
16549 #: build/C/man7/packet.7:462 build/C/man7/raw.7:131 build/C/man7/tcp.7:1209
16550 #: build/C/man7/udp.7:103
16552 msgid "Error handling"
16555 #. type: Plain text
16556 #: build/C/man7/packet.7:466
16558 "Packet sockets do no error handling other than errors occurred while passing "
16559 "the packet to the device driver. They don't have the concept of a pending "
16562 "packet ソケットは、パケットをデバイスドライバに渡すときに 起きたエラーしか処"
16563 "理しない。遅延エラー (pending error) に関する概念は持っていない。"
16565 #. type: Plain text
16566 #: build/C/man7/packet.7:470
16567 msgid "Unknown multicast group address passed."
16568 msgstr "不明なマルチキャストグループアドレスが渡された。"
16570 #. type: Plain text
16571 #: build/C/man7/packet.7:473
16572 msgid "User passed invalid memory address."
16573 msgstr "ユーザが渡したメモリアドレスが不正。"
16575 #. type: Plain text
16576 #: build/C/man7/packet.7:476 build/C/man7/raw.7:155
16577 msgid "Invalid argument."
16580 #. type: Plain text
16581 #: build/C/man7/packet.7:479
16582 msgid "Packet is bigger than interface MTU."
16583 msgstr "パケットがインターフェースの MTU より大きい。"
16586 #: build/C/man7/packet.7:479
16588 msgid "B<ENETDOWN>"
16589 msgstr "B<ENETDOWN>"
16591 #. type: Plain text
16592 #: build/C/man7/packet.7:482
16593 msgid "Interface is not up."
16594 msgstr "インターフェースが up でない。"
16596 #. type: Plain text
16597 #: build/C/man7/packet.7:485
16598 msgid "Not enough memory to allocate the packet."
16599 msgstr "パケットに割り当てるメモリが足りない。"
16601 #. type: Plain text
16602 #: build/C/man7/packet.7:488
16603 msgid "Unknown device name or interface index specified in interface address."
16605 "デバイス名が不明。あるいはインターフェースアドレスで指定された インターフェー"
16608 #. type: Plain text
16609 #: build/C/man7/packet.7:491
16610 msgid "No packet received."
16611 msgstr "パケットを一つも受信していない。"
16613 #. type: Plain text
16614 #: build/C/man7/packet.7:494
16615 msgid "No interface address passed."
16616 msgstr "インターフェースアドレスが渡されなかった。"
16619 #: build/C/man7/packet.7:494
16624 #. type: Plain text
16625 #: build/C/man7/packet.7:497
16626 msgid "Interface address contained an invalid interface index."
16628 "インターフェースアドレスに不正なインターフェースインデックスが含まれている。"
16630 #. type: Plain text
16631 #: build/C/man7/packet.7:500
16632 msgid "User has insufficient privileges to carry out this operation."
16633 msgstr "この操作を行うのに必要な権限をユーザが持っていない。"
16635 #. type: Plain text
16636 #: build/C/man7/packet.7:502
16637 msgid "In addition, other errors may be generated by the low-level driver."
16638 msgstr "上記以外のエラーが、低レベルのドライバで生成されることがある。"
16640 #. type: Plain text
16641 #: build/C/man7/packet.7:507
16643 "B<AF_PACKET> is a new feature in Linux 2.2. Earlier Linux versions "
16644 "supported only B<SOCK_PACKET>."
16646 "B<AF_PACKET> は Linux 2.2 の新機能である。これより古いバージョンの Linux で"
16647 "は B<SOCK_PACKET> のみをサポートしていた。"
16649 #. type: Plain text
16650 #: build/C/man7/packet.7:512
16652 "The include file I<E<lt>netpacket/packet.hE<gt>> is present since glibc "
16653 "2.1. Older systems need:"
16655 "インクルードファイル I<E<lt>netpacket/packet.hE<gt>> が存在するのは glibc "
16656 "2.1 以降である。 それ以前のシステムでは以下のようにする必要がある:"
16658 #. type: Plain text
16659 #: build/C/man7/packet.7:518
16662 "#include E<lt>asm/types.hE<gt>\n"
16663 "#include E<lt>linux/if_packet.hE<gt>\n"
16664 "#include E<lt>linux/if_ether.hE<gt> /* The L2 protocols */\n"
16666 "#include E<lt>asm/types.hE<gt>\n"
16667 "#include E<lt>linux/if_packet.hE<gt>\n"
16668 "#include E<lt>linux/if_ether.hE<gt> /* The L2 protocols */\n"
16670 #. type: Plain text
16671 #: build/C/man7/packet.7:528
16673 "For portable programs it is suggested to use B<AF_PACKET> via B<pcap>(3); "
16674 "although this covers only a subset of the B<AF_PACKET> features."
16676 "移植性の必要なプログラムでは、 B<pcap>(3) 経由で B<AF_PACKET> を用いることを"
16677 "お薦めする。ただし、この方法では B<AF_PACKET> の機能すべてを利用することはで"
16680 #. type: Plain text
16681 #: build/C/man7/packet.7:549
16683 "The B<SOCK_DGRAM> packet sockets make no attempt to create or parse the IEEE "
16684 "802.2 LLC header for a IEEE 802.3 frame. When B<ETH_P_802_3> is specified "
16685 "as protocol for sending the kernel creates the 802.3 frame and fills out the "
16686 "length field; the user has to supply the LLC header to get a fully "
16687 "conforming packet. Incoming 802.3 packets are not multiplexed on the DSAP/"
16688 "SSAP protocol fields; instead they are supplied to the user as protocol "
16689 "B<ETH_P_802_2> with the LLC header prefixed. It is thus not possible to "
16690 "bind to B<ETH_P_802_3>; bind to B<ETH_P_802_2> instead and do the protocol "
16691 "multiplex yourself. The default for sending is the standard Ethernet DIX "
16692 "encapsulation with the protocol filled in."
16694 "B<SOCK_DGRAM> packet ソケットは、IEEE 802.3 フレームの IEEE 802.2 LLC ヘッダ"
16695 "の 生成や解析を行おうとしない。 B<ETH_P_802_3> が送信プロトコルに指定される"
16696 "と、カーネルは 802.3 フレームを 生成して length フィールドに書き込む。 完全に"
16697 "準拠したパケットを得るためにはユーザーが LLC ヘッダを 与える必要がある。到着"
16698 "した 802.3 パケットでは、 DSAP/SSAP protocol の各フィールドは多重化 "
16699 "(multiplex) されていない。 代わりにこれらは LLC ヘッダが前置された "
16700 "B<ETH_P_802_2> プロトコルとして与えられる。したがって、 B<ETH_P_802_3> にバイ"
16701 "ンドすることはできない。かわりに B<ETH_P_802_2> にバインドし、自分自身でプロ"
16702 "トコルの多重化を行うこと。 送信のデフォルトは、プロトコルフィールドを持つ 標"
16703 "準の Ethernet DIX encapsulation である。"
16705 #. type: Plain text
16706 #: build/C/man7/packet.7:551
16707 msgid "Packet sockets are not subject to the input or output firewall chains."
16708 msgstr "packet ソケットは入出力の firewall chain に影響をうけない。"
16710 #. type: Plain text
16711 #: build/C/man7/packet.7:561
16713 "In Linux 2.0, the only way to get a packet socket was by calling B<socket"
16714 "(AF_INET, SOCK_PACKET, >I<protocol>B<)>. This is still supported but "
16715 "strongly deprecated. The main difference between the two methods is that "
16716 "B<SOCK_PACKET> uses the old I<struct sockaddr_pkt> to specify an interface, "
16717 "which doesn't provide physical layer independence."
16719 "Linux 2.0 では、 packet ソケットを得る方法は B<socket(AF_INET, SOCK_PACKET, "
16720 ">I<protocol>B<)> を呼ぶやり方しかなかった。この方法はまだサポートされている"
16721 "が、 用いないことを強く推奨する。現在の方法との主な違いは、 B<SOCK_PACKET> で"
16722 "はインターフェースの指定に古い I<struct sockaddr_pkt> を用いる点である。これ"
16725 #. type: Plain text
16726 #: build/C/man7/packet.7:569
16729 "struct sockaddr_pkt {\n"
16730 " unsigned short spkt_family;\n"
16731 " unsigned char spkt_device[14];\n"
16732 " unsigned short spkt_protocol;\n"
16735 "struct sockaddr_pkt {\n"
16736 " unsigned short spkt_family;\n"
16737 " unsigned char spkt_device[14];\n"
16738 " unsigned short spkt_protocol;\n"
16741 #. type: Plain text
16742 #: build/C/man7/packet.7:581
16744 "I<spkt_family> contains the device type, I<spkt_protocol> is the IEEE 802.3 "
16745 "protocol type as defined in I<E<lt>sys/if_ether.hE<gt>> and I<spkt_device> "
16746 "is the device name as a null-terminated string, for example, eth0."
16748 "I<spkt_family> はデバイスのタイプ、 I<spkt_protocol> は I<E<lt>sys/if_ether."
16749 "hE<gt>> で定義されている IEEE 802.3 プロトコルタイプ、 I<spkt_device> はデバ"
16750 "イスの名前を NULL 終端された文字列で与えたもの (例: eth0) である。"
16752 #. type: Plain text
16753 #: build/C/man7/packet.7:583
16754 msgid "This structure is obsolete and should not be used in new code."
16756 "この構造体は obsolete であり、 新しくコードを書く時には用いるべきでない。"
16758 #. type: Plain text
16759 #: build/C/man7/packet.7:587
16761 "glibc 2.1 does not have a define for B<SOL_PACKET>. The suggested "
16762 "workaround is to use:"
16764 "glibc 2.1 には B<SOL_PACKET> の定義がない。回避策としては、以下のようにすると"
16767 #. type: Plain text
16768 #: build/C/man7/packet.7:593
16771 "#ifndef SOL_PACKET\n"
16772 "#define SOL_PACKET 263\n"
16775 "#ifndef SOL_PACKET\n"
16776 "#define SOL_PACKET 263\n"
16779 #. type: Plain text
16780 #: build/C/man7/packet.7:598
16782 "This is fixed in later glibc versions and also does not occur on libc5 "
16785 "この問題は新しいバージョンの glibc では修正されている。 libc5 のシステムには"
16788 #. type: Plain text
16789 #: build/C/man7/packet.7:600
16790 msgid "The IEEE 802.2/803.3 LLC handling could be considered as a bug."
16791 msgstr "IEEE 802.2/803.3 の LLC の扱い方は、バグと考えても良いだろう。"
16793 #. type: Plain text
16794 #: build/C/man7/packet.7:602
16795 msgid "Socket filters are not documented."
16796 msgstr "ソケットフィルターについて記載されていない。"
16799 #. This man page was written by Andi Kleen with help from Matthew Wilcox.
16800 #. AF_PACKET in Linux 2.2 was implemented
16801 #. by Alexey Kuznetsov, based on code by Alan Cox and others.
16802 #. type: Plain text
16803 #: build/C/man7/packet.7:614
16805 "The B<MSG_TRUNC> B<recvmsg>(2) extension is an ugly hack and should be "
16806 "replaced by a control message. There is currently no way to get the "
16807 "original destination address of packets via B<SOCK_DGRAM>."
16809 "B<MSG_TRUNC> B<recvmsg>(2) 拡張は非常にまずい対処であり、制御メッセージで置"
16810 "き換えるべきである。 今のところ B<SOCK_DGRAM> 経由でパケットについていた宛先"
16813 #. type: Plain text
16814 #: build/C/man7/packet.7:621
16816 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), B<socket>"
16819 "B<socket>(2), B<pcap>(3), B<capabilities>(7), B<ip>(7), B<raw>(7), B<socket>"
16822 #. type: Plain text
16823 #: build/C/man7/packet.7:624
16825 "RFC\\ 894 for the standard IP Ethernet encapsulation. RFC\\ 1700 for the "
16826 "IEEE 802.3 IP encapsulation."
16828 "標準 IP Ethernet encapsulation に関しては RFC\\ 894 を、 IEEE 802.3 IP "
16829 "encapsulation に関しては RFC\\ 1700 を参照。"
16831 #. type: Plain text
16832 #: build/C/man7/packet.7:628
16834 "The I<E<lt>linux/if_ether.hE<gt>> include file for physical layer protocols."
16836 "物理層のプロトコルに関する記述は I<E<lt>linux/if_ether.hE<gt>> インクルード"
16840 #: build/C/man5/protocols.5:29
16846 #: build/C/man5/protocols.5:29 build/C/man7/x25.7:12
16849 msgstr "2012-08-05"
16851 #. type: Plain text
16852 #: build/C/man5/protocols.5:32
16853 msgid "protocols - protocols definition file"
16854 msgstr "protocols - プロトコル定義ファイル"
16856 #. type: Plain text
16857 #: build/C/man5/protocols.5:40
16859 "This file is a plain ASCII file, describing the various DARPA internet "
16860 "protocols that are available from the TCP/IP subsystem. It should be "
16861 "consulted instead of using the numbers in the ARPA include files, or, even "
16862 "worse, just guessing them. These numbers will occur in the protocol field "
16863 "of any IP header."
16865 "このファイルは ASCII ファイルで、TCP/IP サブシステムから利用できる いろいろ"
16866 "な DARPA インターネットプロトコルを記述している。 ARPA 関連のインクルードファ"
16867 "イル内の数値を使うべきではないし、 単に推測した値を使うのはさらに良くない。 "
16868 "代わりにこのファイルに問い合わせるべきである。 これらの数値は IP ヘッダのプロ"
16871 #. .. by the DDN Network Information Center.
16872 #. type: Plain text
16873 #: build/C/man5/protocols.5:46
16875 "Keep this file untouched since changes would result in incorrect IP "
16876 "packages. Protocol numbers and names are specified by the IANA (Internet "
16877 "Assigned Numbers Authority)."
16879 "このファイルは変更しないこと。変更すると IP パッケージが不正になる。 プロトコ"
16880 "ル番号とプロトコル名は IANA (Internet Assigned Numbers Authority) によって指"
16883 #. type: Plain text
16884 #: build/C/man5/protocols.5:48
16885 msgid "Each line is of the following format:"
16886 msgstr "それぞれの行は次のフォーマットである。"
16888 #. type: Plain text
16889 #: build/C/man5/protocols.5:51
16890 msgid "I<protocol number aliases ...>"
16891 msgstr "I<protocol number aliases ...>"
16893 #. type: Plain text
16894 #: build/C/man5/protocols.5:57
16896 "where the fields are delimited by spaces or tabs. Empty lines are ignored. "
16897 "If a line contains a hash mark (#), the hash mark and the part of the line "
16898 "following it are ignored."
16900 "各フィールドは空白かタブで区切られていて、空行は無視される。 行にハッシュ記号"
16901 "(#)が含まれる場合、 ハッシュ記号を含むその行の残りは無視される。"
16904 #: build/C/man5/protocols.5:59 build/C/man5/services.5:109
16906 msgid "I<protocol>"
16907 msgstr "I<protocol>"
16909 #. type: Plain text
16910 #: build/C/man5/protocols.5:67
16912 "the native name for the protocol. For example I<ip>, I<tcp>, or I<udp>."
16913 msgstr "プロトコルの固有名。たとえば I<ip>, I<tcp>, I<udp> など。"
16915 #. type: Plain text
16916 #: build/C/man5/protocols.5:71
16918 "the official number for this protocol as it will appear within the IP header."
16919 msgstr "プロトコルの公式番号、IP ヘッダに現れる。"
16921 #. type: Plain text
16922 #: build/C/man5/protocols.5:74
16923 msgid "optional aliases for the protocol."
16924 msgstr "プロトコルの別名、オプション。"
16926 #. The following is not true as at glibc 2.8 (a line with a comma is
16927 #. ignored by getservent()); it's not clear if/when it was ever true.
16928 #. As a backward compatibility feature, the slash (/) between the
16932 #. name can in fact be either a slash or a comma (,).
16933 #. Use of the comma in
16934 #. modern installations is deprecated.
16935 #. type: Plain text
16936 #: build/C/man5/protocols.5:77 build/C/man5/services.5:165
16938 "This file might be distributed over a network using a network-wide naming "
16939 "service like Yellow Pages/NIS or BIND/Hesiod."
16941 "このファイルは Yellow Pages/NIS や BIND/Hesiod のようなネットワーク上の名前"
16942 "サービスを用いて、ネットワークを通じて配布される可能性もある。"
16944 #. type: Plain text
16945 #: build/C/man5/protocols.5:81
16946 msgid "The protocols definition file."
16947 msgstr "プロトコル定義ファイル。"
16949 #. type: Plain text
16950 #: build/C/man5/protocols.5:83
16951 msgid "B<getprotoent>(3)"
16952 msgstr "B<getprotoent>(3)"
16954 #. type: Plain text
16955 #: build/C/man5/protocols.5:86
16956 msgid "E<.UR http://www.iana.org\\:/assignments\\:/protocol-numbers> E<.UE>"
16957 msgstr "E<.UR http://www.iana.org\\:/assignments\\:/protocol-numbers> E<.UE>"
16960 #: build/C/man7/raw.7:13
16965 #. type: Plain text
16966 #: build/C/man7/raw.7:16
16967 msgid "raw - Linux IPv4 raw sockets"
16968 msgstr "raw - Linux の IPv4 raw ソケット"
16970 #. type: Plain text
16971 #: build/C/man7/raw.7:22
16972 msgid "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
16973 msgstr "B<raw_socket = socket(AF_INET, SOCK_RAW, int >I<protocol>B<);>"
16975 #. type: Plain text
16976 #: build/C/man7/raw.7:26
16978 "Raw sockets allow new IPv4 protocols to be implemented in user space. A raw "
16979 "socket receives or sends the raw datagram not including link level headers."
16981 "raw ソケットを使うと、新しい IPv4 プロトコルをユーザ空間で 実装できるようにな"
16982 "る。 raw ソケットは、リンクレベルヘッダを 含まない raw データグラムの送受信が"
16985 #. type: Plain text
16986 #: build/C/man7/raw.7:32
16988 "The IPv4 layer generates an IP header when sending a packet unless the "
16989 "B<IP_HDRINCL> socket option is enabled on the socket. When it is enabled, "
16990 "the packet must contain an IP header. For receiving the IP header is always "
16991 "included in the packet."
16993 "IPv4 レイヤは、扱っているソケットで B<IP_HDRINCL> ソケットオプションが有効に"
16994 "なっていなければ、 パケットを送信するときに IP ヘッダを生成する。 "
16995 "B<IP_HDRINCL> オプションが有効になっているときは、パケットには IP ヘッダが含"
16996 "まれていなければならない。 受信時には、 IP ヘッダは常にパケットに含まれてい"
16999 #. type: Plain text
17000 #: build/C/man7/raw.7:36
17002 "Only processes with an effective user ID of 0 or the B<CAP_NET_RAW> "
17003 "capability are allowed to open raw sockets."
17005 "実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_RAW> 権限を持つプロセスだけが "
17006 "raw ソケットをオープンすることができる。"
17008 #. type: Plain text
17009 #: build/C/man7/raw.7:43
17011 "All packets or errors matching the I<protocol> number specified for the raw "
17012 "socket are passed to this socket. For a list of the allowed protocols see "
17013 "RFC\\ 1700 assigned numbers and B<getprotobyname>(3)."
17015 "この raw ソケットに指定された I<protocol> 番号にマッチする全てのパケットとエ"
17016 "ラーとが、このソケットに渡される。 許可されているプロトコルのリストは RFC\\ "
17017 "1700 の割り当て番号と B<getprotobyname>(3) を見よ。"
17019 #. type: Plain text
17020 #: build/C/man7/raw.7:53
17022 "A protocol of B<IPPROTO_RAW> implies enabled B<IP_HDRINCL> and is able to "
17023 "send any IP protocol that is specified in the passed header. Receiving of "
17024 "all IP protocols via B<IPPROTO_RAW> is not possible using raw sockets."
17026 "B<IPPROTO_RAW> のプロトコルは暗黙のうちに B<IP_HDRINCL> を有効にするので、 渡"
17027 "されたヘッダで指定された、あらゆる IP プロトコルを送信できる。 "
17028 "B<IPPROTO_RAW> 経由でのあらゆる IP プロトコルの受信は、 raw ソケットを用いて"
17032 #: build/C/man7/raw.7:58
17034 msgid "IP Header fields modified on sending by B<IP_HDRINCL>\n"
17035 msgstr "IP ヘッダフィールド。 B<IP_HDRINCL> によって送信時に変更される。\n"
17038 #: build/C/man7/raw.7:59
17040 msgid "IP Checksum:Always filled in.\n"
17041 msgstr "IP チェックサム:常に変更される。\n"
17044 #: build/C/man7/raw.7:60
17046 msgid "Source Address:Filled in when zero.\n"
17047 msgstr "ソースアドレス:元の値が 0 の時に変更される。\n"
17050 #: build/C/man7/raw.7:61
17052 msgid "Packet Id:Filled in when zero.\n"
17053 msgstr "パケット ID:元の値が 0 の時に変更される。\n"
17056 #: build/C/man7/raw.7:62
17058 msgid "Total Length:Always filled in.\n"
17059 msgstr "全体の長さ:常に埋められる。\n"
17061 #. type: Plain text
17062 #: build/C/man7/raw.7:76
17064 "If B<IP_HDRINCL> is specified and the IP header has a nonzero destination "
17065 "address, then the destination address of the socket is used to route the "
17066 "packet. When B<MSG_DONTROUTE> is specified, the destination address should "
17067 "refer to a local interface, otherwise a routing table lookup is done anyway "
17068 "but gatewayed routes are ignored."
17070 "B<IP_HERINCL> が指定されていて、 IP ヘッダに 0 でない送信先アドレスが記入され"
17071 "ていた場合は、 その送信先アドレスがパケットの経路を決めるのに用いられる。 "
17072 "B<MSG_DONTROUTE> が指定されている時には、 送信先アドレスはローカルなインター"
17073 "フェースを参照するものでなければならない。 さもないと、ルーティングテーブルの"
17074 "参照はいずれにせよ行われるが、 ゲートウェイが必要な経路は無視される。"
17076 #. type: Plain text
17077 #: build/C/man7/raw.7:84
17079 "If B<IP_HDRINCL> isn't set, then IP header options can be set on raw sockets "
17080 "with B<setsockopt>(2); see B<ip>(7) for more information."
17082 "B<IP_HDRINCL> がセットされていなければ、 raw ソケットの IP ヘッダオプション"
17083 "を B<setsockopt>(2) を用いて設定することができる。詳細な情報は B<ip>(7) を"
17086 #. type: Plain text
17087 #: build/C/man7/raw.7:89
17089 "In Linux 2.2, all IP header fields and options can be set using IP socket "
17090 "options. This means raw sockets are usually needed only for new protocols "
17091 "or protocols with no user interface (like ICMP)."
17093 "Linux 2.2 では、 IP ヘッダの全てのフィールドとオプションとを IP ソケットオプ"
17094 "ションによって設定できる。したがって raw ソケットが必要になるのは、新しいプロ"
17095 "トコルを設計する場合か、 ユーザーインターフェースを持たないプロトコル (ICMP "
17098 #. type: Plain text
17099 #: build/C/man7/raw.7:93
17101 "When a packet is received, it is passed to any raw sockets which have been "
17102 "bound to its protocol before it is passed to other protocol handlers (e.g., "
17103 "kernel protocol modules)."
17105 "パケットは、受信されるとまずプロトコルにバインドしている raw ソケットに渡さ"
17106 "れ、 その後で他のプロトコルハンドラ (カーネルのプロトコルモジュールなど) に"
17109 #. type: Plain text
17110 #: build/C/man7/raw.7:109
17112 "Raw sockets use the standard I<sockaddr_in> address structure defined in "
17113 "B<ip>(7). The I<sin_port> field could be used to specify the IP protocol "
17114 "number, but it is ignored for sending in Linux 2.2 and should be always set "
17115 "to 0 (see BUGS). For incoming packets, I<sin_port> is set to the protocol "
17116 "of the packet. See the I<E<lt>netinet/in.hE<gt>> include file for valid IP "
17119 "raw ソケットは標準の I<sockaddr_in> アドレス構造体を用いる。定義は B<ip>(7) "
17120 "でなされている。 I<sin_port> フィールドを IP プロトコル番号の指定に用いること"
17121 "ができるが、 Linux 2.2 ではこれは送信時には無視され、常に 0 にされる (バグ の"
17122 "項を参照)。 受信パケットに対しては、 I<sin_port> はそのパケットのプロトコルに"
17123 "セットされる。 用いることのできる IP プロトコルは、インクルードファイル "
17124 "I<E<lt>netinet/in.hE<gt>> を見よ。"
17126 #. Or SOL_RAW on Linux
17127 #. type: Plain text
17128 #: build/C/man7/raw.7:118
17130 "Raw socket options can be set with B<setsockopt>(2) and read with "
17131 "B<getsockopt>(2) by passing the B<IPPROTO_RAW> family flag."
17133 "raw ソケットのオプションは、 B<IPPROTO_RAW> ファミリーフラグを与えて "
17134 "B<setsockopt>(2) を呼べば設定でき、 B<getsockopt>(2) を呼べば取得できる。"
17137 #: build/C/man7/raw.7:118
17139 msgid "B<ICMP_FILTER>"
17140 msgstr "B<ICMP_FILTER>"
17142 #. type: Plain text
17143 #: build/C/man7/raw.7:126
17145 "Enable a special filter for raw sockets bound to the B<IPPROTO_ICMP> "
17146 "protocol. The value has a bit set for each ICMP message type which should "
17147 "be filtered out. The default is to filter no ICMP messages."
17149 "B<IPPROTO_ICMP> プロトコルにバインドされた raw ソケットのための特殊なフィルタ"
17150 "を有効にする。 この値は ICMP メッセージのタイプそれぞれに対して、どれをフィル"
17151 "ターアウト するかを表したビットセットである。デフォルトでは ICMP メッセージは"
17154 #. type: Plain text
17155 #: build/C/man7/raw.7:131
17157 "In addition, all B<ip>(7) B<IPPROTO_IP> socket options valid for datagram "
17158 "sockets are supported."
17160 "さらに、データグラムソケットに使える全ての B<ip>(7) B<SOL_IP> ソケットオプ"
17163 #. type: Plain text
17164 #: build/C/man7/raw.7:144
17166 "Errors originating from the network are passed to the user only when the "
17167 "socket is connected or the B<IP_RECVERR> flag is enabled. For connected "
17168 "sockets, only B<EMSGSIZE> and B<EPROTO> are passed for compatibility. With "
17169 "B<IP_RECVERR>, all network errors are saved in the error queue."
17171 "ネットワークで生じたエラーがユーザに渡されるのは、 ソケットが接続済みの場合"
17172 "か B<IP_RECVERR> フラグが有効になっている場合に限られる。 接続済みのソケット"
17173 "に対しては、 B<EMSGSIZE> および B<EPROTO> だけが渡される (互換性のため)。 "
17174 "B<IP_RECVERR> を設定すると、全てのネットワークエラーがエラーキューに保存され"
17177 #. type: Plain text
17178 #: build/C/man7/raw.7:149
17180 "User tried to send to a broadcast address without having the broadcast flag "
17181 "set on the socket."
17183 "ユーザーが broadcast フラグを設定していないソケットを用いて ブロードキャスト"
17186 #. type: Plain text
17187 #: build/C/man7/raw.7:152
17188 msgid "An invalid memory address was supplied."
17189 msgstr "不正なメモリアドレスが与えられた。"
17191 #. type: Plain text
17192 #: build/C/man7/raw.7:162
17194 "Packet too big. Either Path MTU Discovery is enabled (the "
17195 "B<IP_MTU_DISCOVER> socket flag) or the packet size exceeds the maximum "
17196 "allowed IPv4 packet size of 64KB."
17198 "パケットが大きすぎる。 Path MTU Discoverry が有効になっている "
17199 "(B<IP_MTU_DISCOVER> ソケットフラグ) か、パケットのサイズが IPv4 で許されてい"
17200 "る パケットサイズの最大値 64KB を越えている。"
17203 #: build/C/man7/raw.7:162 build/C/man7/unix.7:364
17205 msgid "B<EOPNOTSUPP>"
17206 msgstr "B<EOPNOTSUPP>"
17208 #. type: Plain text
17209 #: build/C/man7/raw.7:166
17210 msgid "Invalid flag has been passed to a socket call (like B<MSG_OOB>)."
17211 msgstr "ソケット呼び出しに不正なフラグ (B<MSG_OOB> など) が渡された。"
17213 #. type: Plain text
17214 #: build/C/man7/raw.7:172
17216 "The user doesn't have permission to open raw sockets. Only processes with "
17217 "an effective user ID of 0 or the B<CAP_NET_RAW> attribute may do that."
17219 "ユーザーは raw ソケットをオープンする権限を持っていない。 実行ユーザー ID が "
17220 "0 のプロセスか、 B<CAP_NET_RAW> 属性を持つプロセスだけがこれを行うことができ"
17224 #: build/C/man7/raw.7:172
17229 #. type: Plain text
17230 #: build/C/man7/raw.7:175
17231 msgid "An ICMP error has arrived reporting a parameter problem."
17232 msgstr "パラメータの問題を報告する ICMP エラーを受け取った。"
17234 #. type: Plain text
17235 #: build/C/man7/raw.7:181
17237 "B<IP_RECVERR> and B<ICMP_FILTER> are new in Linux 2.2. They are Linux "
17238 "extensions and should not be used in portable programs."
17240 "B<IP_RECVERR> と B<ICMP_FILTER> は Linux 2.2 で登場した。これらは Linux での"
17241 "拡張であり、 移植性の必要なプログラムでは用いるべきでない。"
17243 #. type: Plain text
17244 #: build/C/man7/raw.7:187
17246 "Linux 2.0 enabled some bug-to-bug compatibility with BSD in the raw socket "
17247 "code when the B<SO_BSDCOMPAT> socket option was set \\(em since Linux 2.2, "
17248 "this option no longer has that effect."
17250 "Linux 2.0 では B<SO_BSDCOMPAT> ソケットオプションをセットすると、 BSD の raw "
17251 "ソケットにあるバグに互換性を取ることができた \\(em Linux 2.2 以降では、このオ"
17254 #. type: Plain text
17255 #: build/C/man7/raw.7:205
17257 "By default, raw sockets do path MTU (Maximum Transmission Unit) discovery. "
17258 "This means the kernel will keep track of the MTU to a specific target IP "
17259 "address and return B<EMSGSIZE> when a raw packet write exceeds it. When "
17260 "this happens, the application should decrease the packet size. Path MTU "
17261 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
17262 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file, see B<ip>(7) for "
17263 "details. When turned off, raw sockets will fragment outgoing packets that "
17264 "exceed the interface MTU. However, disabling it is not recommended for "
17265 "performance and reliability reasons."
17267 "デフォルトでは、raw ソケットは Path MTU Discovery を行う。 つまり、カーネルは"
17268 "特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記録"
17269 "し、raw パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
17270 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
17271 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
17272 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
17273 "る (詳細は B<ip>(7) を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
17274 "トサイズが インタフェースの MTU よりも大きいと raw ソケットはそのパケットを "
17275 "フラグメント化して送出する。 しかしながら、性能と信頼性の理由から Path MTU "
17276 "Discovery を 無効にするのは推奨できない。"
17278 #. type: Plain text
17279 #: build/C/man7/raw.7:214
17281 "A raw socket can be bound to a specific local address using the B<bind>(2) "
17282 "call. If it isn't bound, all packets with the specified IP protocol are "
17283 "received. In addition, a RAW socket can be bound to a specific network "
17284 "device using B<SO_BINDTODEVICE>; see B<socket>(7)."
17286 "B<bind>(2) システムコールを用いると、 raw ソケットを 特定のローカルアドレス"
17287 "にバインドさせることができる。 このバインドがされていない場合は、指定した IP "
17288 "プロトコルの すべてのパケットが受信される。 さらに、 B<SO_BINDTODEVICE> を用"
17289 "いれば raw ソケットを特定のネットワークデバイスに バインドさせることもでき"
17290 "る。 B<socket>(7) を見よ。"
17292 #. type: Plain text
17293 #: build/C/man7/raw.7:225
17295 "An B<IPPROTO_RAW> socket is send only. If you really want to receive all IP "
17296 "packets, use a B<packet>(7) socket with the B<ETH_P_IP> protocol. Note "
17297 "that packet sockets don't reassemble IP fragments, unlike raw sockets."
17299 "B<IPPROTO_RAW> ソケットは送信専用である。もしどうしてもすべての IP パケット"
17300 "を 受信したい場合は、 B<packet>(7) ソケットを B<ETH_P_IP> プロトコルで用いる"
17301 "こと。 packet ソケットは raw ソケットのように IP フラグメントを再構成しないこ"
17304 #. type: Plain text
17305 #: build/C/man7/raw.7:231
17307 "If you want to receive all ICMP packets for a datagram socket, it is often "
17308 "better to use B<IP_RECVERR> on that particular socket; see B<ip>(7)."
17310 "datagram ソケットに対するすべての ICMP パケットを受信したい場合は、 特定のソ"
17311 "ケットに対して B<IP_RECVERR> を用いるほうが良い場合が多い。 B<ip>(7) を見"
17314 #. type: Plain text
17315 #: build/C/man7/raw.7:238
17317 "Raw sockets may tap all IP protocols in Linux, even protocols like ICMP or "
17318 "TCP which have a protocol module in the kernel. In this case, the packets "
17319 "are passed to both the kernel module and the raw socket(s). This should not "
17320 "be relied upon in portable programs, many other BSD socket implementation "
17321 "have limitations here."
17323 "raw ソケットは、 Linux のすべての IP プロトコルを受信することができる。 ICMP "
17324 "や TCP のように、カーネル内部にプロトコルモジュールを持つような ものも可能で"
17325 "ある。この場合には、パケットはカーネルモジュールと raw ソケットの両方に渡され"
17326 "る (raw ソケットが複数あればそれぞれに渡される)。 移植性の必要なプログラムで"
17327 "はこの機能に依存するべきではない。 他の多くの BSD におけるソケットの実装では"
17330 #. type: Plain text
17331 #: build/C/man7/raw.7:243
17333 "Linux never changes headers passed from the user (except for filling in some "
17334 "zeroed fields as described for B<IP_HDRINCL>). This differs from many other "
17335 "implementations of raw sockets."
17337 "Linux はユーザーから渡されたヘッダを決して変更しない (ただし B<IP_HDRINCL> の"
17338 "説明にあるように、 0 をいくつか埋める場合を除く)。 これは他の多くの raw ソ"
17341 #. type: Plain text
17342 #: build/C/man7/raw.7:246
17344 "RAW sockets are generally rather unportable and should be avoided in "
17345 "programs intended to be portable."
17347 "一般に raw ソケットは移植性がないことが多いので、 移植性が必要なプログラムで"
17350 #. type: Plain text
17351 #: build/C/man7/raw.7:252
17353 "Sending on raw sockets should take the IP protocol from I<sin_port>; this "
17354 "ability was lost in Linux 2.2. The workaround is to use B<IP_HDRINCL>."
17356 "raw ソケットへの送信では、 IP プロトコルを I<sin_port> から取得できなければな"
17357 "らない。この機能は Linux 2.2 では使えなくなった。 B<IP_HDRINCL> を用いれば同"
17360 #. type: Plain text
17361 #: build/C/man7/raw.7:254
17362 msgid "Transparent proxy extensions are not described."
17363 msgstr "透過プロクシ (transparent proxy) 拡張については記述していない。"
17365 #. type: Plain text
17366 #: build/C/man7/raw.7:259
17368 "When the B<IP_HDRINCL> option is set, datagrams will not be fragmented and "
17369 "are limited to the interface MTU."
17371 "B<IP_HDRINCL> オプションがセットされているとデータグラムはフラグメント化され"
17372 "ず、 インターフェースの MTU の大きさに制限される。"
17375 #. This man page was written by Andi Kleen.
17376 #. type: Plain text
17377 #: build/C/man7/raw.7:269
17379 "Setting the IP protocol for sending in I<sin_port> got lost in Linux 2.2. "
17380 "The protocol that the socket was bound to or that was specified in the "
17381 "initial B<socket>(2) call is always used."
17383 "送信用の IP プロトコルの設定を I<sin_port> にしておく機能は Linux 2.2 から使"
17384 "えなくなった。 ソケットにバインドされているプロトコルか、最初の B<socket>"
17385 "(2) コールによって指定されたプロトコルが常に用いられる。"
17387 #. type: Plain text
17388 #: build/C/man7/raw.7:275
17390 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
17392 "B<recvmsg>(2), B<sendmsg>(2), B<capabilities>(7), B<ip>(7), B<socket>(7)"
17394 #. type: Plain text
17395 #: build/C/man7/raw.7:282
17397 "B<RFC\\ 1191> for path MTU discovery. B<RFC\\ 791> and the I<E<lt>linux/ip."
17398 "hE<gt>> header file for the IP protocol."
17400 "Path MTU discovery に関しては B<RFC\\ 1191> を参照。 IP プロトコルに関しては "
17401 "B<RFC\\ 791> とインクルードファイル I<E<lt>linux/ip.hE<gt>> を参照。"
17404 #: build/C/man3/rcmd.3:43
17410 #: build/C/man3/rcmd.3:43
17413 msgstr "2012-04-23"
17415 #. type: Plain text
17416 #: build/C/man3/rcmd.3:48
17418 "rcmd, rresvport, iruserok, ruserok, rcmd_af, rresvport_af, iruserok_af, "
17419 "ruserok_af - routines for returning a stream to a remote command"
17421 "rcmd, rresvport, iruserok, ruserok, rcmd_af, rresvport_af, iruserok_af, \n"
17422 "ruserok_af - リモートコマンドにストリームを返す関数群"
17424 #. type: Plain text
17425 #: build/C/man3/rcmd.3:51
17427 msgid "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
17428 msgstr "B<#include E<lt>netdb.hE<gt> \\ \\ >/* Or E<lt>unistd.hE<gt> on some systems */\n"
17430 #. type: Plain text
17431 #: build/C/man3/rcmd.3:54
17434 "B<int rcmd(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
17435 "B< const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
17437 "B<int rcmd(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
17438 "B< const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
17440 #. type: Plain text
17441 #: build/C/man3/rcmd.3:56
17443 msgid "B<int rresvport(int *>I<port>B<);>\n"
17444 msgstr "B<int rresvport(int *>I<port>B<);>\n"
17446 #. type: Plain text
17447 #: build/C/man3/rcmd.3:59
17450 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
17451 "B< const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17453 "B<int iruserok(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
17454 "B< const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17456 #. type: Plain text
17457 #: build/C/man3/rcmd.3:62
17460 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17461 "B< const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17463 "B<int ruserok(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17464 "B< const char *>I<ruser>B<, const char *>I<luser>B<);>\n"
17466 #. type: Plain text
17467 #: build/C/man3/rcmd.3:66
17470 "B<int rcmd_af(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
17471 "B< const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
17472 "B< sa_family_t >I<af>B<);>\n"
17474 "B<int rcmd_af(char **>I<ahost>B<, int >I<inport>B<, const char *>I<locuser>B<, >\n"
17475 "B< const char *>I<remuser>B<, const char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
17476 "B< sa_family_t >I<af>B<);>\n"
17478 #. type: Plain text
17479 #: build/C/man3/rcmd.3:68
17481 msgid "B<int rresvport_af(int *>I<port>B<, sa_family_t >I<af>B<);>\n"
17482 msgstr "B<int rresvport_af(int *>I<port>B<, sa_family_t >I<af>B<);>\n"
17484 #. type: Plain text
17485 #: build/C/man3/rcmd.3:72
17488 "B<int iruserok_af(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
17489 "B< const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17491 "B<int iruserok_af(uint32_t >I<raddr>B<, int >I<superuser>B<, >\n"
17492 "B< const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17494 #. type: Plain text
17495 #: build/C/man3/rcmd.3:76
17498 "B<int ruserok_af(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17499 "B< const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17501 "B<int ruserok_af(const char *>I<rhost>B<, int >I<superuser>B<, >\n"
17502 "B< const char *>I<ruser>B<, const char *>I<luser>B<, sa_family_t >I<af>B<);>\n"
17504 #. type: Plain text
17505 #: build/C/man3/rcmd.3:92
17507 "B<rcmd>(), B<rcmd_af>(), B<rresvport>(), B<rresvport_af>(), B<iruserok>(), "
17508 "B<iruserok_af>(), B<ruserok>(), B<ruserok_af>(): _BSD_SOURCE"
17510 "B<rcmd>(), B<rcmd_af>(), B<rresvport>(), B<rresvport_af>(),\n"
17511 "B<iruserok>(), B<iruserok_af>(), B<ruserok>(), B<ruserok_af>():\n"
17514 #. type: Plain text
17515 #: build/C/man3/rcmd.3:113
17517 "The B<rcmd>() function is used by the superuser to execute a command on a "
17518 "remote machine using an authentication scheme based on privileged port "
17519 "numbers. The B<rresvport>() function returns a descriptor to a socket with "
17520 "an address in the privileged port space. The B<iruserok>() and B<ruserok>"
17521 "() functions are used by servers to authenticate clients requesting service "
17522 "with B<rcmd>(). All four functions are used by the B<rshd>(8) server "
17525 "B<rcmd>() 関数は、スーパーユーザーがリモートマシンでコマンドを実行する\n"
17526 "ために 用いられる。このとき特権ポート番号をもとにした認証スキームが 用\n"
17527 "いられる。 B<rresvport>() 関数は、特権ポート空間のアドレスを持つソケッ\n"
17528 "トの ディスクリプターを返す。 B<iruserok>() 関数と B<ruserok>() 関数は、\n"
17529 "B<rcmd>() でサービス要求を行ったクライアントの認証を行うために サーバー\n"
17530 "が用いる関数である。 以上の 4 つの関数は、 B<rshd>(8) サーバーによって\n"
17531 "(他の関数とともに) 利用される。"
17534 #: build/C/man3/rcmd.3:113
17539 #. type: Plain text
17540 #: build/C/man3/rcmd.3:129
17542 "The B<rcmd>() function looks up the host I<*ahost> using B<gethostbyname>"
17543 "(3), returning -1 if the host does not exist. Otherwise I<*ahost> is set to "
17544 "the standard name of the host and a connection is established to a server "
17545 "residing at the well-known Internet port I<inport>."
17547 "B<rcmd>() 関数は B<gethostbyname>(3) を用いて I<*ahost> の参照を行う。ホス"
17548 "トが存在しない場合は -1 を返す。 見つかった場合は I<*ahost> にホストの標準名 "
17549 "(standard name) をセットして、 予約されているインターネットポート I<inport> "
17550 "経由でサーバーへの接続を確立する。"
17552 #. type: Plain text
17553 #: build/C/man3/rcmd.3:158
17555 "If the connection succeeds, a socket in the Internet domain of type "
17556 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
17557 "I<stdin> and I<stdout>. If I<fd2p> is nonzero, then an auxiliary channel to "
17558 "a control process will be set up, and a descriptor for it will be placed in "
17559 "I<*fd2p>. The control process will return diagnostic output from the "
17560 "command (unit 2) on this channel, and will also accept bytes on this channel "
17561 "as being UNIX signal numbers, to be forwarded to the process group of the "
17562 "command. If I<fd2p> is 0, then the I<stderr> (unit 2 of the remote command) "
17563 "will be made the same as the I<stdout> and no provision is made for sending "
17564 "arbitrary signals to the remote process, although you may be able to get its "
17565 "attention by using out-of-band data."
17567 "接続に成功したら、インターネットドメインに存在するタイプ B<SOCK_STREAM> のソ"
17568 "ケットが呼び出しもとに返される。 このソケットの相手側はリモートコマンドの "
17569 "I<stdin> および I<stdout> に接続される。 I<fd2p> がゼロでない場合は、制御プロ"
17570 "セスへの接続がもう一つ用意され、 そのディスクリプターが I<*fd2p> にセットされ"
17571 "る。 制御プロセスはリモートコマンドからの標準エラー出力 (unit 2) を このチャ"
17572 "ンネルに返す。 また制御プロセスはこの接続から受け取ったバイトデータを UNIX シ"
17573 "グナルの番号として扱い、リモートコマンドのプロセス グループへとシグナルを送"
17574 "る。 I<fd2p> がゼロの場合は、 I<stderr> (リモートコマンドの unit 2) は "
17575 "I<stdout> と一緒にまとめられる。またこの場合はリモートプロセスへ 任意のシグナ"
17576 "ルを送ることはできなくなる。 ただし帯域外 (out-of-band) データを用いれば、 リ"
17577 "モートプロセスの注意を引くことはできるかもしれない。"
17579 #. type: Plain text
17580 #: build/C/man3/rcmd.3:161
17581 msgid "The protocol is described in detail in B<rshd>(8)."
17582 msgstr "プロトコルの詳細は B<rshd>(8) に記述されている。"
17585 #: build/C/man3/rcmd.3:161
17587 msgid "rresvport()"
17588 msgstr "rresvport()"
17590 #. type: Plain text
17591 #: build/C/man3/rcmd.3:183
17593 "The B<rresvport>() function is used to obtain a socket with a privileged "
17594 "port bound to it. This socket is suitable for use by B<rcmd>() and several "
17595 "other functions. Privileged ports are those in the range 0 to 1023. Only a "
17596 "privileged process (B<CAP_NET_BIND_SERVICE>) is allowed to bind to a "
17597 "privileged port. In the glibc implementation, this function restricts its "
17598 "search to the ports from 512 to 1023. The I<port> argument is value-result: "
17599 "the value it supplies to the call is used as the starting point for a "
17600 "circular search of the port range; on (successful) return, it contains the "
17601 "port number that was bound to."
17603 "B<rresvport>() 関数は特権ポートにバインドされたソケットを取得するために\n"
17604 "用いられる。 このソケットは B<rcmd>() などの関数での利用に適している。\n"
17605 "インターネットポートの特権ポートは、 0 から 1023 の範囲である。特権プロ\n"
17606 "セス (B<CAP_NET_BIND_SERVICE>) だけが特権ポートをバインドすることができ\n"
17607 "る。 glibc の実装では、この関数は特権ポートの検索範囲を 512 から 1023\n"
17608 "までの範囲に制限している。 I<port> 引き数は入出力両用で使用される。呼び\n"
17609 "出し時にこの引き数で渡された値は特権ポートを巡回検索する際の開始ポイン\n"
17610 "トとして使用され、(成功で) 返る際にはこの引き数にバインドされたポート\n"
17614 #: build/C/man3/rcmd.3:183
17616 msgid "iruserok() and ruserok()"
17617 msgstr "iruserok() と ruserok()"
17619 #. type: Plain text
17620 #: build/C/man3/rcmd.3:201
17622 "The B<iruserok>() and B<ruserok>() functions take a remote host's IP "
17623 "address or name, respectively, two usernames and a flag indicating whether "
17624 "the local user's name is that of the superuser. Then, if the user is I<not> "
17625 "the superuser, it checks the I</etc/hosts.equiv> file. If that lookup is "
17626 "not done, or is unsuccessful, the I<.rhosts> in the local user's home "
17627 "directory is checked to see if the request for service is allowed."
17629 "B<iruserok>() と B<ruserok>() 関数は、まず以下の引数を取る: リモートホスト "
17630 "(B<iruserok>() は IP アドレスで、 B<ruserok>() はホスト名で指定)、 2 つの"
17631 "ユーザー名、ローカルユーザーの名前が スーパーユーザーのものであるかどうかを示"
17632 "すフラグ、である。 もしユーザーがB<スーパーユーザーではない>場合は、これらの"
17633 "関数は I</etc/hosts.equiv> ファイルをチェックする。ファイルが見つからなかった"
17634 "り、 内容のチェックに失敗した場合には、 ローカルユーザーのホームディレクトリ"
17635 "にある I<.rhosts> ファイルをチェックして、サービス要求が許可されているかどう"
17638 #. type: Plain text
17639 #: build/C/man3/rcmd.3:217
17641 "If this file does not exist, is not a regular file, is owned by anyone other "
17642 "than the user or the superuser, or is writable by anyone other than the "
17643 "owner, the check automatically fails. Zero is returned if the machine name "
17644 "is listed in the I<hosts.equiv> file, or the host and remote username are "
17645 "found in the I<.rhosts> file; otherwise B<iruserok>() and B<ruserok>() "
17646 "return -1. If the local domain (as obtained from B<gethostname>(2)) is the "
17647 "same as the remote domain, only the machine name need be specified."
17649 "このファイルが存在しなかったり、 通常ファイル (regular file) ではなかった"
17650 "り、 指定ユーザーまたはスーパーユーザー以外の所有だったり、 所有者以外から書"
17651 "き込み可能だったりした場合には、 このチェックは自動的に失敗する。 マシンの名"
17652 "前が I<hosts.equiv> にリストされていたり、 ホストとリモートユーザーの名前が "
17653 "I<.rhosts> ファイルに書かれていた場合には 0 が返される。 それ以外の場合に"
17654 "は、 B<iruserok>() と B<ruserok>() は -1 を返す。 (B<gethostname>(2) に"
17655 "よって取得される) ローカルドメインがリモートのドメインと同じ場合は、 マシンの"
17658 #. type: Plain text
17659 #: build/C/man3/rcmd.3:223
17661 "If the IP address of the remote host is known, B<iruserok>() should be used "
17662 "in preference to B<ruserok>(), as it does not require trusting the DNS "
17663 "server for the remote host's domain."
17665 "リモートホストの IP アドレスがわかっている場合は、 B<ruserok>() よりも "
17666 "B<iruserok>()B<を用いる方が良いだろう。> B<ruserok>() はリモートホストの所属"
17667 "するドメインの DNS サーバーが信頼できなくても 使用できるからである。"
17670 #: build/C/man3/rcmd.3:223
17672 msgid "*_af() variants"
17675 #. type: Plain text
17676 #: build/C/man3/rcmd.3:239
17678 "All of the functions described above work with IPv4 (B<AF_INET>) sockets. "
17679 "The \"_af\" variants take an extra argument that allows the socket address "
17680 "family to be specified. For these functions, the I<af> argument can be "
17681 "specified as B<AF_INET> or B<AF_INET6>. In addition, B<rcmd_af>() supports "
17682 "the use of B<AF_UNSPEC>."
17684 "上記で述べた関数は全て IPv4 (B<AF_INET>) ソケットで動作する。\n"
17685 "\"_af\" 版では追加の引き数があり、この引き数でソケットアドレス\n"
17686 "ファミリーを指定できる。これらの関数では、 I<af> 引き数には \n"
17687 "B<AF_INET> か B<AF_INET6> が指定できる。\n"
17688 "B<rcmd_af>() では追加で B<AF_UNSPEC> も指定できる。"
17690 #. type: Plain text
17691 #: build/C/man3/rcmd.3:245
17693 "The B<rcmd>() function returns a valid socket descriptor on success. It "
17694 "returns -1 on error and prints a diagnostic message on the standard error."
17696 "B<rcmd>() 関数は成功すると有効なソケットディスクリプターを返す。 失敗すると "
17697 "-1 を返し、標準エラー出力に診断メッセージを 表示する。"
17699 #. type: Plain text
17700 #: build/C/man3/rcmd.3:256
17702 "The B<rresvport>() function returns a valid, bound socket descriptor on "
17703 "success. It returns -1 on error with the global value I<errno> set "
17704 "according to the reason for failure. The error code B<EAGAIN> is overloaded "
17705 "to mean \"All network ports in use.\""
17707 "B<rresvport>() 関数は、成功するとバインドされた有効なソケットディスクリプ"
17708 "ターを返す。 失敗すると -1 を返し、グローバル変数 I<errno> をエラーの原因に対"
17709 "応する値にセットする。 エラーコード B<EAGAIN> は、この関数においては「すべて"
17710 "のネットワークポートが使用中」 という意味を表す。"
17712 #. type: Plain text
17713 #: build/C/man3/rcmd.3:262
17715 "For information on the return from B<ruserok>() and B<iruserok>(), see "
17717 msgstr "B<ruserok>() と B<iruserok>() の返り値については、上述の説明を参照。"
17719 #. type: Plain text
17720 #: build/C/man3/rcmd.3:270
17722 "The functions B<iruserok_af>(), B<rcmd_af>(), B<rresvport_af>(), and "
17723 "B<ruserok_af>() functions are provide in glibc since version 2.2."
17725 "関数 B<iruserok_af>(), B<rcmd_af>(), B<rresvport_af>(),\n"
17726 "B<ruserok_af>() は glibc バージョン 2.2 以降で提供されている。"
17728 #. type: Plain text
17729 #: build/C/man3/rcmd.3:278
17731 "Not in POSIX.1-2001. Present on the BSDs, Solaris, and many other systems. "
17732 "These functions appeared in 4.2BSD. The \"_af\" variants are more recent "
17733 "additions, and are not present on as wide a range of systems."
17735 "POSIX.1-2001 にはない。 BSD 系、Solaris や他の多くのシステムに存在する。\n"
17736 "これらの関数は 4.2BSD で登場した。 \"_af\" が付くバージョンはより最近に\n"
17737 "追加されたもので、あまり多くのシステムには存在しない。"
17739 #. Bug filed 25 Nov 2007:
17740 #. http://sources.redhat.com/bugzilla/show_bug.cgi?id=5399
17741 #. type: Plain text
17742 #: build/C/man3/rcmd.3:285
17744 "B<iruserok>() and B<iruserok_af>() are declared in glibc headers only "
17745 "since version 2.12."
17747 "B<iruserok>() と B<iruserok_af>() は glibc バージョン 2.12 以降のヘッダ\n"
17750 #. type: Plain text
17751 #: build/C/man3/rcmd.3:293
17753 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), B<rlogind>"
17756 "B<rlogin>(1), B<rsh>(1), B<intro>(2), B<rexec>(3), B<rexecd>(8), B<rlogind>"
17760 #: build/C/man5/resolv.conf.5:23
17762 msgid "RESOLV.CONF"
17763 msgstr "RESOLV.CONF"
17766 #: build/C/man5/resolv.conf.5:23
17769 msgstr "2014-02-22"
17771 #. type: Plain text
17772 #: build/C/man5/resolv.conf.5:27
17773 msgid "resolv.conf - resolver configuration file"
17774 msgstr "resolv.conf - レゾルバ設定ファイル"
17776 #. type: Plain text
17777 #: build/C/man5/resolv.conf.5:29
17778 msgid "B</etc/resolv.conf>"
17779 msgstr "B</etc/resolv.conf>"
17781 #. type: Plain text
17782 #: build/C/man5/resolv.conf.5:41
17784 "The I<resolver> is a set of routines in the C library that provide access to "
17785 "the Internet Domain Name System (DNS). The resolver configuration file "
17786 "contains information that is read by the resolver routines the first time "
17787 "they are invoked by a process. The file is designed to be human readable "
17788 "and contains a list of keywords with values that provide various types of "
17789 "resolver information. The configuration file is considered a trusted source "
17790 "of DNS information (e.g., DNSSEC AD-bit information will be returned "
17791 "unmodified from this source)."
17793 "I<resolver> は、インターネットのドメインネームシステム (DNS) へのアクセスを提"
17794 "供する C ライブラリのルーチン群である。 レゾルバ設定ファイルには、レゾルバ"
17795 "ルーチンがプロセスによって最初に 起動されたときに読み込まれる情報が格納されて"
17796 "いる。 このファイルは人間に可読なように設計されている。 キーワードと値のリス"
17797 "トが含まれ、いろいろなタイプのレゾルバ情報を提供する。 設定ファイルは DNS 情"
17798 "報の信頼できる情報源とみなされる (例えば、このファイルからの DNSSEC AD ビット"
17799 "情報は変更されずにそのまま返される)。"
17801 #. type: Plain text
17802 #: build/C/man5/resolv.conf.5:46
17804 "If this file does not exist, only the name server on the local machine will "
17805 "be queried; the domain name is determined from the hostname and the domain "
17806 "search path is constructed from the domain name."
17808 "このファイルが存在しない場合、問い合わせはローカルマシン上の\n"
17809 "ネームサーバに対してのみ行われる。ドメイン名はホスト名から決定され、\n"
17810 "ドメインの検索パスはドメイン名から作成される。"
17812 #. type: Plain text
17813 #: build/C/man5/resolv.conf.5:48
17814 msgid "The different configuration options are:"
17815 msgstr "この状態を変更するための設定オプションには、以下のようなものがある。"
17818 #: build/C/man5/resolv.conf.5:48
17820 msgid "B<nameserver> Name server IP address"
17821 msgstr "B<nameserver> ネームサーバの IP アドレス"
17823 #. type: Plain text
17824 #: build/C/man5/resolv.conf.5:65
17826 "Internet address of a name server that the resolver should query, either an "
17827 "IPv4 address (in dot notation), or an IPv6 address in colon (and possibly "
17828 "dot) notation as per RFC 2373. Up to B<MAXNS> (currently 3, see "
17829 "I<E<lt>resolv.hE<gt>>) name servers may be listed, one per keyword. If "
17830 "there are multiple servers, the resolver library queries them in the order "
17831 "listed. If no B<nameserver> entries are present, the default is to use the "
17832 "name server on the local machine. (The algorithm used is to try a name "
17833 "server, and if the query times out, try the next, until out of name servers, "
17834 "then repeat trying all the name servers until a maximum number of retries "
17837 "レゾルバが問い合わせをするネームサーバのインターネットアドレス。 アドレスに"
17838 "は IPv4 アドレスか IPv6 アドレスを指定する。 IPv4 アドレスはドット表記で、 "
17839 "IPv6 アドレスは RFC 2373 で定められたコロン表記 (おそらくドット表記も可) で指"
17840 "定する。 このキーワード 1 つごとに 1 台づつ、 B<MAXNS> 台 (現状では 3 台、"
17841 "I<E<lt>resolv.hE<gt>> を参照) までのネームサーバをリストできる。 複数のサーバ"
17842 "が指定された場合、レゾルバライブラリは リストされた順に問い合わせを行う。 "
17843 "B<nameserver> エントリがない場合、 デフォルトではローカルマシン上のネームサー"
17844 "バが使われる。 (ここで使われるアルゴリズムは以下のようなものである。 はじめに"
17845 "ネームサーバに問い合わせを試みる。 この問い合わせがタイムアウトになった場"
17846 "合、 次のネームサーバに問い合わせを試みる。 これをネームサーバがなくなるまで"
17847 "続ける。 それでも応答がない場合は、リトライ最大回数に達するまで 全てのネーム"
17851 #: build/C/man5/resolv.conf.5:65
17853 msgid "B<domain> Local domain name."
17854 msgstr "B<domain> ローカルドメイン名"
17856 #. type: Plain text
17857 #: build/C/man5/resolv.conf.5:76
17859 "Most queries for names within this domain can use short names relative to "
17860 "the local domain. If set to \\(aq.\\(aq, the root domain is considered. If "
17861 "no B<domain> entry is present, the domain is determined from the local "
17862 "hostname returned by B<gethostname>(2); the domain part is taken to be "
17863 "everything after the first \\(aq.\\(aq. Finally, if the hostname does not "
17864 "contain a domain part, the root domain is assumed."
17866 "このドメインにある名前の問い合わせのほとんどに、 このローカルドメインに対する"
17867 "短い名前を使用することができる。 \\(aq.\\(aq が設定された場合、 ルートドメイ"
17868 "ンが指定されたとみなされる。 B<domain> エントリがない場合、ドメイン名は "
17869 "B<gethostname>(2) で返されるローカルホスト名から決定され、 最初の \\(aq."
17870 "\\(aq 以降の全ての部分がドメイン名とされる。 このホスト名にもドメイン部を含ん"
17871 "でいない場合、ルートドメインが仮定される。"
17874 #: build/C/man5/resolv.conf.5:76
17876 msgid "B<search> Search list for host-name lookup."
17877 msgstr "B<search> ホスト名ルックアップのための検索リスト"
17879 #. When having a resolv.conv with a line
17880 #. search subdomain.domain.tld domain.tld
17881 #. and doing a hostlookup, for example by
17882 #. ping host.anothersubdomain
17883 #. it sends dns-requests for
17884 #. host.anothersubdomain.
17885 #. host.anothersubdomain.subdomain.domain.tld.
17886 #. host.anothersubdomain.domain.tld.
17887 #. thus not only causing unnecessary traffic for the root-dns-servers
17888 #. but broadcasting information to the outside and making man-in-the-middle
17889 #. attacks possible.
17890 #. type: Plain text
17891 #: build/C/man5/resolv.conf.5:106
17893 "The search list is normally determined from the local domain name; by "
17894 "default, it contains only the local domain name. This may be changed by "
17895 "listing the desired domain search path following the I<search> keyword with "
17896 "spaces or tabs separating the names. Resolver queries having fewer than "
17897 "I<ndots> dots (default is 1) in them will be attempted using each component "
17898 "of the search path in turn until a match is found. For environments with "
17899 "multiple subdomains please read B<options ndots:>I<n> below to avoid man-in-"
17900 "the-middle attacks and unnecessary traffic for the root-dns-servers. Note "
17901 "that this process may be slow and will generate a lot of network traffic if "
17902 "the servers for the listed domains are not local, and that queries will time "
17903 "out if no server is available for one of the domains."
17905 "検索リストは通常ローカルドメイン名から決定される。 デフォルトでは、検索リスト"
17906 "はローカルドメイン名のみである。 これを変更するには、I<search> キーワードの後"
17907 "に 希望するドメイン検索パスをスペースまたはタブで区切ってリストすればよい。 "
17908 "ドットの数が I<ndots> (デフォルトでは 1) より少ないレゾルバの問い合わせは、 "
17909 "一致するものが見つかるまで検索パスの各要素を順に使って試す。 複数のサブドメイ"
17910 "ンを持つ環境では、 第三者による攻撃 (man-in-the-middle attack) と ルート DNS "
17911 "サーバへの不必要なトラフィックを避けるために、 以下の B<options ndots:>I<n> "
17912 "を読んでほしい。 このプロセスは遅く、リストされたドメインがローカルのものでな"
17913 "い場合、 多大なネットワークトラフィックを発生させることに注意すること。 さら"
17914 "に、これらのドメインのいずれかひとつにでも適切なサーバがない場合、 問い合わせ"
17915 "がタイムアウトになる点にも注意すること。"
17917 #. type: Plain text
17918 #: build/C/man5/resolv.conf.5:109
17920 "The search list is currently limited to six domains with a total of 256 "
17922 msgstr "現状では、検索リストは 6 ドメイン・計 256 文字に制限されている。"
17925 #: build/C/man5/resolv.conf.5:109
17927 msgid "B<sortlist>"
17928 msgstr "B<sortlist>"
17930 #. type: Plain text
17931 #: build/C/man5/resolv.conf.5:122
17933 "This option allows addresses returned by B<gethostbyname>(3) to be sorted. "
17934 "A sortlist is specified by IP-address-netmask pairs. The netmask is "
17935 "optional and defaults to the natural netmask of the net. The IP address and "
17936 "optional network pairs are separated by slashes. Up to 10 pairs may be "
17937 "specified. Here is an example:"
17939 "このオプションを使うと、 B<gethostbyname>(3) で返されるアドレスをソートさせ"
17940 "ることができる。 sortlist は IP アドレスとネットマスクのペアで指定される。 "
17941 "ネットマスクは省略可能であり、 デフォルトではネットに対するデフォルトのネット"
17942 "マスクである。 IP アドレスとオプションのネットマスクのペアはスラッシュで区切"
17943 "る。 最大 10 組のペアを指定できる。 以下に例を示す。"
17945 #. type: Plain text
17946 #: build/C/man5/resolv.conf.5:125
17947 msgid "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
17948 msgstr "sortlist 130.155.160.0/255.255.240.0 130.155.0.0"
17951 #: build/C/man5/resolv.conf.5:127
17954 msgstr "B<options>"
17956 #. type: Plain text
17957 #: build/C/man5/resolv.conf.5:131
17959 "Options allows certain internal resolver variables to be modified. The "
17962 "options により、レゾルバの内部変数を変更することができる。 書式は以下の通りで"
17965 #. type: Plain text
17966 #: build/C/man5/resolv.conf.5:134
17967 msgid "B<options> I<option> I<...>"
17968 msgstr "B<options> I<option> I<...>"
17970 #. type: Plain text
17971 #: build/C/man5/resolv.conf.5:136
17972 msgid "where I<option> is one of the following:"
17973 msgstr "ここで I<option> は次のうちのいずれかである。"
17976 #: build/C/man5/resolv.conf.5:136
17981 #. Since glibc 2.2?
17982 #. type: Plain text
17983 #: build/C/man5/resolv.conf.5:145
17985 "sets B<RES_DEBUG> in I<_res.options> (effective only if glibc was built with "
17986 "debug support; see B<resolver>(3))."
17988 "B<RES_DEBUG> を I<_res.options> にセットする (glibc がデバッグを有効にしてコ"
17989 "ンパイルされている場合にのみ有効である; B<resolver>(3) を参照)。"
17992 #: build/C/man5/resolv.conf.5:145
17994 msgid "B<ndots:>I<n>"
17995 msgstr "B<ndots:>I<n>"
17998 #. type: Plain text
17999 #: build/C/man5/resolv.conf.5:159
18001 "sets a threshold for the number of dots which must appear in a name given to "
18002 "B<res_query>(3) (see B<resolver>(3)) before an I<initial absolute query> "
18003 "will be made. The default for I<n> is 1, meaning that if there are any dots "
18004 "in a name, the name will be tried first as an absolute name before any "
18005 "I<search list> elements are appended to it. The value for this option is "
18006 "silently capped to 15."
18008 "「I<最初の完全な名前での問い合わせ>が実行される前に、 B<res_query>(3) "
18009 "(B<resolver>(3) を参照) に与えられる名前に含まれているべきドットの数の閾値」"
18010 "を設定する。 I<n> のデフォルトは 1 である。 これは、名前にドットがある場合、"
18011 "I<search list> の要素が付加される前に、 その名前が完全な名前として最初に試さ"
18012 "れるということを意味している。 このオプションの値の上限は 15 であり、黙ってこ"
18016 #: build/C/man5/resolv.conf.5:159
18018 msgid "B<timeout:>I<n>"
18019 msgstr "B<timeout:>I<n>"
18022 #. type: Plain text
18023 #: build/C/man5/resolv.conf.5:170
18025 "sets the amount of time the resolver will wait for a response from a remote "
18026 "name server before retrying the query via a different name server. Measured "
18027 "in seconds, the default is B<RES_TIMEOUT> (currently 5, see I<E<lt>resolv."
18028 "hE<gt>>). The value for this option is silently capped to 30."
18030 "「レゾルバが他のネームサーバで問い合わせをリトライする前に、 リモートネーム"
18031 "サーバからの応答を待つ時間」を設定する。 単位は秒で、デフォルトは "
18032 "B<RES_TIMEOUT> である (現状では 5 秒、I<E<lt>resolv.hE<gt>> を参照)。 このオ"
18033 "プションの値の上限は 30 であり、黙ってこの値まで切り詰められる。"
18036 #: build/C/man5/resolv.conf.5:170
18038 msgid "B<attempts:>I<n>"
18039 msgstr "B<attempts:>I<n>"
18041 #. type: Plain text
18042 #: build/C/man5/resolv.conf.5:179
18044 "sets the number of times the resolver will send a query to its name servers "
18045 "before giving up and returning an error to the calling application. The "
18046 "default is B<RES_DFLRETRY> (currently 2, see I<E<lt>resolv.hE<gt>>). The "
18047 "value for this option is silently capped to 5."
18049 "「レゾルバが諦めて呼び出し元のアプリケーションにエラーを返すまでに、 ネーム"
18050 "サーバに問い合わせを行う回数」を設定する。 デフォルトは B<RES_DFLRETRY> 回で"
18051 "ある (現状では 2 回、I<E<lt>resolv.hE<gt>> を参照)。 このオプションの値の上限"
18052 "は 5 であり、黙ってこの値まで切り詰められる。"
18055 #: build/C/man5/resolv.conf.5:179
18061 #. type: Plain text
18062 #: build/C/man5/resolv.conf.5:189
18064 "sets B<RES_ROTATE> in I<_res.options>, which causes round-robin selection of "
18065 "name servers from among those listed. This has the effect of spreading the "
18066 "query load among all listed servers, rather than having all clients try the "
18067 "first listed server first every time."
18069 "I<_res.options> に RES_ROTATE を設定する。リストされているネームサーバから選"
18070 "ぶときに、ラウンドロビン (round-robin) 選択を行わせる。リストされている全ての"
18071 "サーバで問い合わせの負荷を分散する効果があり、最初にリストされたサーバに全て"
18072 "のクライアントが毎回最初に問い合わせを行うわけではなくなる。"
18075 #: build/C/man5/resolv.conf.5:189
18077 msgid "B<no-check-names>"
18078 msgstr "B<no-check-names>"
18081 #. type: Plain text
18082 #: build/C/man5/resolv.conf.5:199
18084 "sets B<RES_NOCHECKNAME> in I<_res.options>, which disables the modern BIND "
18085 "checking of incoming hostnames and mail names for invalid characters such as "
18086 "underscore (_), non-ASCII, or control characters."
18088 "I<_res.options> に B<RES_NOCHECKNAME> を設定する。 入ってくるホスト名とメール"
18089 "アドレスに、 アンダースコア (_)・ASCII 以外の文字・制御文字といった 不正な文"
18090 "字が含まれていないかを調べる 最近の BIND のチェックを無効にする。"
18093 #: build/C/man5/resolv.conf.5:199
18099 #. type: Plain text
18100 #: build/C/man5/resolv.conf.5:210
18102 "sets B<RES_USE_INET6> in I<_res.options>. This has the effect of trying a "
18103 "AAAA query before an A query inside the B<gethostbyname>(3) function, and "
18104 "of mapping IPv4 responses in IPv6 \"tunneled form\" if no AAAA records are "
18105 "found but an A record set exists."
18107 "I<_res.options> に B<RES_USE_INET6> を設定する。このオプションが設定される"
18108 "と、 B<gethostbyname>(3) 関数の内部で A レコードの問い合わせを行う前に AAAA "
18109 "レコードの問い合わせを行うようになる。 また、AAAA レコードは見つからないが A "
18110 "レコードセットが存在する場合に、 IPv4 の応答を IPv6「トンネル形式」にマップす"
18114 #: build/C/man5/resolv.conf.5:210
18116 msgid "B<ip6-bytestring> (since glibc 2.3.4)"
18117 msgstr "B<ip6-bytestring> (glibc 2.3.4 以降)"
18119 #. type: Plain text
18120 #: build/C/man5/resolv.conf.5:219
18122 "sets B<RES_USE_BSTRING> in I<_res.options>. This causes reverse IPv6 "
18123 "lookups to be made using the bit-label format described in RFC\\ 2673; if "
18124 "this option is not set, then nibble format is used."
18126 "I<_res.options> に B<RES_USE_BSTRING> を設定する。このオプションが設定される"
18127 "と、IPv6 アドレスの逆引きで RFC\\ 2673 で規定された bit-label 形式が使用され"
18128 "るようになる。 このオプションが設定されない場合、nibble 形式が使用される。"
18131 #: build/C/man5/resolv.conf.5:219
18133 msgid "B<ip6-dotint>/B<no-ip6-dotint> (since glibc 2.3.4)"
18134 msgstr "B<ip6-dotint>/B<no-ip6-dotint> (glibc 2.3.4 以降)"
18136 #. type: Plain text
18137 #: build/C/man5/resolv.conf.5:236
18139 "Clear/set B<RES_NOIP6DOTINT> in I<_res.options>. When this option is clear "
18140 "(B<ip6-dotint>), reverse IPv6 lookups are made in the (deprecated) I<ip6."
18141 "int> zone; when this option is set (B<no-ip6-dotint>), reverse IPv6 lookups "
18142 "are made in the I<ip6.arpa> zone by default. This option is set by default."
18144 "I<_res.options> への B<RES_NOIP6DOTINT> のセット/クリアを行う。 このオプショ"
18145 "ンがクリアされると (B<ip6-dotint>)、 IPv6 アドレスの逆引きが (非推奨の) "
18146 "I<ip6.int> ゾーンで行われるようになり、 このオプションがセットされると (B<no-"
18147 "ip6-dotint>)、 IPv6 アドレスの逆引きがデフォルトの I<ip6.arpa> ゾーンで行われ"
18148 "るようになる。 このオプションはデフォルトでセットされる。"
18151 #: build/C/man5/resolv.conf.5:236
18153 msgid "B<edns0> (since glibc 2.6)"
18154 msgstr "B<edns0> (glibc 2.6 以降)"
18156 #. type: Plain text
18157 #: build/C/man5/resolv.conf.5:243
18159 "sets B<RES_USE_EDNSO> in I<_res.options>. This enables support for the DNS "
18160 "extensions described in RFC\\ 2671."
18162 "I<_res.options> に B<RES_USE_EDNSO> をセットする。これにより、RFC\\ 2671 で規"
18163 "定されている DNS 拡張のサポートが有効になる。"
18166 #: build/C/man5/resolv.conf.5:243
18168 msgid "B<single-request> (since glibc 2.10)"
18169 msgstr "B<single-request> (glibc 2.10 以降)"
18171 #. type: Plain text
18172 #: build/C/man5/resolv.conf.5:256
18174 "sets B<RES_SNGLKUP> in I<_res.options>. By default, glibc performs IPv4 and "
18175 "IPv6 lookups in parallel since version 2.9. Some appliance DNS servers "
18176 "cannot handle these queries properly and make the requests time out. This "
18177 "option disables the behavior and makes glibc perform the IPv6 and IPv4 "
18178 "requests sequentially (at the cost of some slowdown of the resolving "
18181 "I<_res.options> に B<RES_SNGLKUP> をセットする。\n"
18182 "glibc バージョン 2.9 以降では、 glibc はデフォルトでは\n"
18183 "IPv4 と IPv6 の検索を並行して実行する。\n"
18184 "アプライアンス DNS サーバの中には、このような問い合わせを\n"
18185 "適切に処理できず、検索要求がタイムアウトになってしまう。\n"
18186 "このオプションをセットすると、このデフォルトの動作が無効になり、\n"
18187 "glibc は IPv6 と IPv4 の検索を順番に実行するようになる\n"
18188 "(名前解決処理が若干遅くなるというデメリットがある)。"
18191 #: build/C/man5/resolv.conf.5:256
18193 msgid "B<single-request-reopen> (since glibc 2.9)"
18194 msgstr "B<single-request-reopen> (glibc 2.9 以降)"
18196 #. type: Plain text
18197 #: build/C/man5/resolv.conf.5:264
18199 "The resolver uses the same socket for the A and AAAA requests. Some "
18200 "hardware mistakenly sends back only one reply. When that happens the client "
18201 "system will sit and wait for the second reply. Turning this option on "
18202 "changes this behavior so that if two requests from the same port are not "
18203 "handled correctly it will close the socket and open a new one before sending "
18204 "the second request."
18206 "リゾルバは同じソケットを使って A レコードと AAAA レコードの検索要求を行う。 "
18207 "いくつかのハードウェアは実装が間違っており、応答を一つしか返さない。 この状況"
18208 "になると、クライアントシステムは 2 番目の応答を待ち続けてしまう。 このオプ"
18209 "ションを有効にすると、この動作が変更され、 同じポートからの 2 つの検索要求が"
18210 "正しく処理されなかった場合、 2 番目の検索要求を送信する前にソケットをクローズ"
18211 "し 新しいソケットをオープンするようになる。"
18213 #. type: Plain text
18214 #: build/C/man5/resolv.conf.5:269
18216 "The I<domain> and I<search> keywords are mutually exclusive. If more than "
18217 "one instance of these keywords is present, the last instance wins."
18219 "I<domain> と I<search> キーワードは、互いに排他的である。 これらのキーワード"
18220 "が 2 つ以上記述されている場合、 最後に記述されているものが有効になる。"
18222 #. type: Plain text
18223 #: build/C/man5/resolv.conf.5:274
18225 "The I<search> keyword of a system's I<resolv.conf> file can be overridden on "
18226 "a per-process basis by setting the environment variable B<LOCALDOMAIN> to a "
18227 "space-separated list of search domains."
18229 "システムの I<resolv.conf> ファイルにある I<search> キーワードは、 スペースで"
18230 "区切った検索ドメインのリストを 環境変数 B<LOCALDOMAIN> に設定することにより、"
18231 "各プロセス毎に上書きすることができる。"
18233 #. type: Plain text
18234 #: build/C/man5/resolv.conf.5:280
18236 "The I<options> keyword of a system's I<resolv.conf> file can be amended on a "
18237 "per-process basis by setting the environment variable B<RES_OPTIONS> to a "
18238 "space-separated list of resolver options as explained above under B<options>."
18240 "システムの I<resolv.conf> ファイルにある I<options> キーワードは、 上の "
18241 "B<options> セクションで説明したように、 スペースで区切ったレゾルバオプション"
18242 "のリストを 環境変数 B<RES_OPTIONS> に設定することにより、各プロセス毎に修正す"
18245 #. type: Plain text
18246 #: build/C/man5/resolv.conf.5:284
18248 "The keyword and value must appear on a single line, and the keyword (e.g., "
18249 "B<nameserver>) must start the line. The value follows the keyword, "
18250 "separated by white space."
18252 "キーワードと値は同じ行に書かなければならない。 また、(B<nameserver> のよう"
18253 "な) キーワードが行の先頭になければならない。 値はキーワードの後にスペースで区"
18256 #. type: Plain text
18257 #: build/C/man5/resolv.conf.5:287
18259 "Lines that contain a semicolon (;) or hash character (#) in the first "
18260 "column are treated as comments."
18261 msgstr "セミコロン (;) かハッシュ文字 (#) で始まる行はコメントとして扱われる。"
18263 #. type: Plain text
18264 #: build/C/man5/resolv.conf.5:290
18265 msgid "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
18266 msgstr "I</etc/resolv.conf>, I<E<lt>resolv.hE<gt>>"
18268 #. type: Plain text
18269 #: build/C/man5/resolv.conf.5:295
18270 msgid "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
18271 msgstr "B<gethostbyname>(3), B<resolver>(3), B<hostname>(7), B<named>(8)"
18273 #. type: Plain text
18274 #: build/C/man5/resolv.conf.5:297
18275 msgid "Name Server Operations Guide for BIND"
18276 msgstr "BIND のネームサーバオペレーションガイド"
18279 #: build/C/man3/resolver.3:32
18285 #: build/C/man3/resolver.3:32
18288 msgstr "2013-03-05"
18290 #. type: Plain text
18291 #: build/C/man3/resolver.3:36
18293 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
18294 "dn_comp, dn_expand - resolver routines"
18296 "res_init, res_query, res_search, res_querydomain, res_mkquery, res_send, "
18297 "dn_comp, dn_expand - レゾルバ・ルーチン"
18299 #. type: Plain text
18300 #: build/C/man3/resolver.3:42
18303 "B<#include E<lt>netinet/in.hE<gt>>\n"
18304 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
18305 "B<#include E<lt>resolv.hE<gt>>\n"
18306 "B<extern struct state _res;>\n"
18308 "B<#include E<lt>netinet/in.hE<gt>>\n"
18309 "B<#include E<lt>arpa/nameser.hE<gt>>\n"
18310 "B<#include E<lt>resolv.hE<gt>>\n"
18311 "B<extern struct state _res;>\n"
18313 #. type: Plain text
18314 #: build/C/man3/resolver.3:44
18316 msgid "B<int res_init(void);>\n"
18317 msgstr "B<int res_init(void);>\n"
18319 #. type: Plain text
18320 #: build/C/man3/resolver.3:46
18322 msgid "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18323 msgstr "B<int res_query(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18325 #. type: Plain text
18326 #: build/C/man3/resolver.3:48 build/C/man3/resolver.3:53
18328 msgid "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
18329 msgstr "B<unsigned char *>I<answer>B<, int >I<anslen>B<);>\n"
18331 #. type: Plain text
18332 #: build/C/man3/resolver.3:51
18334 msgid "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18335 msgstr "B<int res_search(const char *>I<dname>B<, int >I<class>B<, int >I<type>B<,>\n"
18337 #. type: Plain text
18338 #: build/C/man3/resolver.3:56
18340 msgid "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
18341 msgstr "B<int res_querydomain(const char *>I<name>B<, const char *>I<domain>B<,>\n"
18343 #. type: Plain text
18344 #: build/C/man3/resolver.3:59
18347 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
18348 "B<int >I<anslen>B<);>\n"
18350 "B<int >I<class>B<, int >I<type>B<, unsigned char *>I<answer>B<,>\n"
18351 "B<int >I<anslen>B<);>\n"
18353 #. type: Plain text
18354 #: build/C/man3/resolver.3:62
18356 msgid "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
18357 msgstr "B<int res_mkquery(int >I<op>B<, const char *>I<dname>B<, int >I<class>B<,>\n"
18359 #. type: Plain text
18360 #: build/C/man3/resolver.3:65
18363 "B<int >I<type>B<, char *>I<data>B<, int >I<datalen>B<, struct rrec *>I<newrr>B<,>\n"
18364 "B<char *>I<buf>B<, int >I<buflen>B<);>\n"
18366 "B<int >I<type>B<, char *>I<data>B<, int >I<datalen>B<, struct rrec *>I<newrr>B<,>\n"
18367 "B<char *>I<buf>B<, int >I<buflen>B<);>\n"
18369 #. type: Plain text
18370 #: build/C/man3/resolver.3:68
18372 msgid "B<int res_send(const char *>I<msg>B<, int >I<msglen>B<, char *>I<answer>B<,>\n"
18373 msgstr "B<int res_send(const char *>I<msg>B<, int >I<msglen>B<, char *>I<answer>B<,>\n"
18375 #. type: Plain text
18376 #: build/C/man3/resolver.3:70
18378 msgid "B<int >I<anslen>B<);>\n"
18379 msgstr "B<int >I<anslen>B<);>\n"
18381 #. type: Plain text
18382 #: build/C/man3/resolver.3:73
18384 msgid "B<int dn_comp(unsigned char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
18385 msgstr "B<int dn_comp(unsigned char *>I<exp_dn>B<, unsigned char *>I<comp_dn>B<,>\n"
18387 #. type: Plain text
18388 #: build/C/man3/resolver.3:75
18390 msgid "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
18391 msgstr "B<int >I<length>B<, unsigned char **>I<dnptrs>B<, unsigned char **>I<lastdnptr>B<);>\n"
18393 #. type: Plain text
18394 #: build/C/man3/resolver.3:78
18396 msgid "B<int dn_expand(unsigned char *>I<msg>B<, unsigned char *>I<eomorig>B<,>\n"
18397 msgstr "B<int dn_expand(unsigned char *>I<msg>B<, unsigned char *>I<eomorig>B<,>\n"
18399 #. type: Plain text
18400 #: build/C/man3/resolver.3:81
18403 "B<unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
18404 "B<int >I<length>B<);>\n"
18406 "B<unsigned char *>I<comp_dn>B<, char *>I<exp_dn>B<,>\n"
18407 "B<int >I<length>B<);>\n"
18409 #. type: Plain text
18410 #: build/C/man3/resolver.3:88
18412 "These functions make queries to and interpret the responses from Internet "
18413 "domain name servers."
18415 "これらの関数はインターネットのドメインネームサーバーに問い合わせ、 その応答を"
18418 #. type: Plain text
18419 #: build/C/man3/resolver.3:102
18421 "The B<res_init>() function reads the configuration files (see B<resolv.conf>"
18422 "(5)) to get the default domain name, search order and name server address"
18423 "(es). If no server is given, the local host is tried. If no domain is "
18424 "given, that associated with the local host is used. It can be overridden "
18425 "with the environment variable B<LOCALDOMAIN>. B<res_init>() is normally "
18426 "executed by the first call to one of the other functions."
18428 "B<res_init>() 関数は、デフォルトのドメイン名、検索順、ネームサーバー アドレ"
18429 "スを得るために設定ファイル (B<resolv.conf>(5) 参照) を読む。 もしサーバーが示"
18430 "されていなければローカルホストを試す。 ドメインが示されていなければローカルホ"
18431 "ストに付けられたドメインを用いる。 環境変数 B<LOCALDOMAIN> でオーバーライドで"
18432 "きる。 B<res_init>() は、後述する関数のどれかが最初に呼び出された時、その関"
18435 #. type: Plain text
18436 #: build/C/man3/resolver.3:110
18438 "The B<res_query>() function queries the name server for the fully qualified "
18439 "domain name I<name> of specified I<type> and I<class>. The reply is left in "
18440 "the buffer I<answer> of length I<anslen> supplied by the caller."
18442 "B<res_query>() 関数は、指定された I<type> と I<class> の 完全修飾ドメイン名 "
18443 "(FQDN) I<name> を、ネームサーバーへ問い合わせる。 応答は、呼び出した側によっ"
18444 "て用意される長さ I<anslen> の I<answer> バッファーに残される。"
18446 #. type: Plain text
18447 #: build/C/man3/resolver.3:123
18449 "The B<res_search>() function makes a query and waits for the response like "
18450 "B<res_query>(), but in addition implements the default and search rules "
18451 "controlled by B<RES_DEFNAMES> and B<RES_DNSRCH> (see description of I<_res> "
18454 "B<res_search>() 関数は、問い合わせを行い B<res_query>() 同様その応答を 待つ"
18455 "が、さらにデフォルトを実装しており B<RES_DEFNAMES> と B<RES_DNSRCH> によって"
18456 "規定される検索ルールを適用する。 (下記 I<_res> オプションの説明を参照)"
18458 #. type: Plain text
18459 #: build/C/man3/resolver.3:129
18461 "The B<res_querydomain>() function makes a query using B<res_query>() on "
18462 "the concatenation of I<name> and I<domain>."
18464 "B<res_querydomain>() 関数は I<name> と I<domain> の結合に B<res_query>() を"
18467 #. type: Plain text
18468 #: build/C/man3/resolver.3:132
18470 "The following functions are lower-level routines used by B<res_query>()."
18471 msgstr "次の関数は、 B<res_query>() で使われる下位ルーチンである。"
18473 #. type: Plain text
18474 #: build/C/man3/resolver.3:143
18476 "The B<res_mkquery>() function constructs a query message in I<buf> of "
18477 "length I<buflen> for the domain name I<dname>. The query type I<op> is "
18478 "usually B<QUERY>, but can be any of the types defined in I<E<lt>arpa/nameser."
18479 "hE<gt>>. I<newrr> is currently unused."
18481 "B<res_mkquery>() 関数は、ドメイン名 I<dname> の為に、長さ I<buflen> の "
18482 "I<buf> に問い合わせるメッセージを作成する。 問い合わせの型 I<op> は通常 "
18483 "B<QUERY> だが、 I<E<lt>arpa/nameser.hE<gt>> で定義された型のどれでも良い。 "
18484 "I<newrr> は現在使用されていない。"
18486 #. type: Plain text
18487 #: build/C/man3/resolver.3:153
18489 "The B<res_send>() function sends a preformatted query given in I<msg> of "
18490 "length I<msglen> and returns the answer in I<answer> which is of length "
18491 "I<anslen>. It will call B<res_init>(), if it has not already been called."
18493 "B<res_send>() 関数は、長さ I<msglen> の I<msg> に決められた書式 で問い合わ"
18494 "せ、I<answer> に長さ I<anslen> の回答を返す。 まだ呼び出されていなければ "
18495 "B<res_init>() を呼び出す。"
18497 #. type: Plain text
18498 #: build/C/man3/resolver.3:166
18500 "The B<dn_comp>() function compresses the domain name I<exp_dn> and stores "
18501 "it in the buffer I<comp_dn> of length I<length>. The compression uses an "
18502 "array of pointers I<dnptrs> to previously compressed names in the current "
18503 "message. The first pointer points to the beginning of the message and the "
18504 "list ends with NULL. The limit of the array is specified by I<lastdnptr>. "
18505 "If I<dnptr> is NULL, domain names are not compressed. If I<lastdnptr> is "
18506 "NULL, the list of labels is not updated."
18508 "B<dn_comp>() 関数はドメイン名 I<exp_dn> を圧縮して、長さ I<length> のバッ"
18509 "ファー I<comp_dn> に保存する。 圧縮にはポインター配列 I<dnptrs> を用いる。 こ"
18510 "れらのポインターは、現在のメッセージの中にある以前に圧縮された名前を指す。 最"
18511 "初のポインターはメッセージの冒頭を指し、そのリストは NULL で終わる。 配列の範"
18512 "囲は I<lastdnptr> で決められる。 I<dnptr> が NULL ならばドメイン名は圧縮され"
18513 "ない。 I<lastdnptr> が NULL ならば、そのラベルのリストはアップデートされな"
18516 #. type: Plain text
18517 #: build/C/man3/resolver.3:175
18519 "The B<dn_expand>() function expands the compressed domain name I<comp_dn> "
18520 "to a full domain name, which is placed in the buffer I<exp_dn> of size "
18521 "I<length>. The compressed name is contained in a query or reply message, "
18522 "and I<msg> points to the beginning of the message."
18524 "B<dn_expand>() 関数は、圧縮されたドメイン名 I<comp_dn> からサイズ が "
18525 "I<length> の I<exp_dn> バッファーに正式なドメイン名を展開する。 その圧縮され"
18526 "た名前は、問い合わせ、または応答メッセージに含まれていて、 I<msg> がメッセー"
18529 #. type: Plain text
18530 #: build/C/man3/resolver.3:183
18532 "The resolver routines use global configuration and state information "
18533 "contained in the structure I<_res>, which is defined in I<E<lt>resolv."
18534 "hE<gt>>. The only field that is normally manipulated by the user is I<_res."
18535 "options>. This field can contain the bitwise \"OR\" of the following "
18538 "レゾルバ・ルーチンは、I<E<lt>resolv.hE<gt>> に定義された I<_res> 構造体に 含"
18539 "まれている全体的な設定と状態の情報を使用する。 通常ユーザーに操作できる項目"
18540 "は I<_res.options> だけである。 この項目は以下のオプションのビット単位の論理"
18544 #: build/C/man3/resolver.3:183
18546 msgid "B<RES_INIT>"
18547 msgstr "B<RES_INIT>"
18549 #. type: Plain text
18550 #: build/C/man3/resolver.3:188
18551 msgid "True if B<res_init>() has been called."
18552 msgstr "B<res_init>() が呼び出されていれば真。"
18555 #: build/C/man3/resolver.3:188
18557 msgid "B<RES_DEBUG>"
18558 msgstr "B<RES_DEBUG>"
18560 #. See resolv/README.
18561 #. Support for RES_DEBUG was made conditional in glibc 2.2.
18562 #. type: Plain text
18563 #: build/C/man3/resolver.3:195
18565 "Print debugging messages. This option is available only if glibc was built "
18566 "with debugging enabled, which is not the default."
18568 "デバッグ情報を表示する。このオプションは、 glibc がデバッグを有効にしてコンパ"
18569 "イルされている場合にのみ利用できる。 デフォルトでは glibc のデバッグは有効に"
18573 #: build/C/man3/resolver.3:195
18575 msgid "B<RES_AAONLY>"
18576 msgstr "B<RES_AAONLY>"
18578 #. type: Plain text
18579 #: build/C/man3/resolver.3:202
18581 "Accept authoritative answers only. B<res_send>() continues until it finds "
18582 "an authoritative answer or returns an error. [Not currently implemented]."
18584 "権威付けされた (authoritative) 回答のみ受け入れる。 B<res_send>() は、最終的"
18585 "に権威付けされた回答を得られるか、エラーが返される まで続行する。 [現在実装さ"
18589 #: build/C/man3/resolver.3:202
18591 msgid "B<RES_USEVC>"
18592 msgstr "B<RES_USEVC>"
18594 #. type: Plain text
18595 #: build/C/man3/resolver.3:205
18596 msgid "Use TCP connections for queries rather than UDP datagrams."
18597 msgstr "問い合わせに UDP データグラムではなく TCP 接続を用いる。"
18600 #: build/C/man3/resolver.3:205
18602 msgid "B<RES_PRIMARY>"
18603 msgstr "B<RES_PRIMARY>"
18605 #. type: Plain text
18606 #: build/C/man3/resolver.3:208
18607 msgid "Query primary domain name server only."
18608 msgstr "プライマリ・ドメインネームサーバーのみ問い合わせる。"
18611 #: build/C/man3/resolver.3:208
18613 msgid "B<RES_IGNTC>"
18614 msgstr "B<RES_IGNTC>"
18616 #. type: Plain text
18617 #: build/C/man3/resolver.3:213
18619 "Ignore truncation errors. Don't retry with TCP. [Not currently "
18622 "切り詰めエラー (truncation error) を無視する。TCP でリトライしない。 [現在実"
18626 #: build/C/man3/resolver.3:213
18628 msgid "B<RES_RECURSE>"
18629 msgstr "B<RES_RECURSE>"
18631 #. type: Plain text
18632 #: build/C/man3/resolver.3:220
18634 "Set the recursion desired bit in queries. Recursion is carried out by the "
18635 "domain name server, not by B<res_send>(). [Enabled by default]."
18637 "再帰要求 (recursion desired) ビットを問い合わせに設定する。 再帰は "
18638 "B<res_send>() ではなくドメインネームサーバーによって行われる。 [デフォルトで"
18642 #: build/C/man3/resolver.3:220
18644 msgid "B<RES_DEFNAMES>"
18645 msgstr "B<RES_DEFNAMES>"
18647 #. type: Plain text
18648 #: build/C/man3/resolver.3:227
18650 "If set, B<res_search>() will append the default domain name to single "
18651 "component names\\(emthat is, those that do not contain a dot. [Enabled by "
18654 "設定されていれば、 B<res_search>() はデフォルトのドメイン名を一部分 のみから"
18655 "なる名前、すなわちドットを含まない名前に付け加える。 [デフォルトで有効]"
18658 #: build/C/man3/resolver.3:227
18660 msgid "B<RES_STAYOPEN>"
18661 msgstr "B<RES_STAYOPEN>"
18663 #. type: Plain text
18664 #: build/C/man3/resolver.3:232
18665 msgid "Used with B<RES_USEVC> to keep the TCP connection open between queries."
18666 msgstr "問い合わせ中に TCP 接続を保つため B<RES_USEVC> と共に用いられる。"
18669 #: build/C/man3/resolver.3:232
18671 msgid "B<RES_DNSRCH>"
18672 msgstr "B<RES_DNSRCH>"
18674 #. type: Plain text
18675 #: build/C/man3/resolver.3:241
18677 "If set, B<res_search>() will search for hostnames in the current domain and "
18678 "in parent domains. This option is used by B<gethostbyname>(3). [Enabled by "
18681 "設定されていれば、 B<res_search>() は現在のドメインおよび親ドメインの ホスト"
18682 "名を探す。このオプションは B<gethostbyname>(3) で用いられる。 [デフォルトで"
18685 #. type: Plain text
18686 #: build/C/man3/resolver.3:245
18688 "This list is not complete. You can find some other flags described in "
18689 "B<resolv.conf>(5)."
18691 "このリストは完全なものではない。\n"
18692 "B<resolv.conf>(5) には他にいくつかのフラグが記載されている。"
18694 #. type: Plain text
18695 #: build/C/man3/resolver.3:250
18697 "The B<res_init>() function returns 0 on success, or -1 if an error occurs."
18698 msgstr "B<res_init>() 関数は成功すれば 0 を、エラーが発生すれば -1 を返す。"
18700 #. type: Plain text
18701 #: build/C/man3/resolver.3:260
18703 "The B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>() "
18704 "and B<res_send>() functions return the length of the response, or -1 if an "
18707 "B<res_query>(), B<res_search>(), B<res_querydomain>(), B<res_mkquery>(), "
18708 "B<res_send>() 関数は応答の長さを返す。 また、エラーが発生すれば -1 を返す。"
18710 #. type: Plain text
18711 #: build/C/man3/resolver.3:267
18713 "The B<dn_comp>() and B<dn_expand>() functions return the length of the "
18714 "compressed name, or -1 if an error occurs."
18716 "B<dn_comp>() と B<dn_expand>() 関数は圧縮されたドメイン名の長さを返す。 ま"
18717 "た、エラーが発生すれば -1 を返す。"
18719 #. type: Plain text
18720 #: build/C/man3/resolver.3:271
18723 "/etc/resolv.conf resolver configuration file\n"
18724 "/etc/host.conf resolver configuration file\n"
18726 "/etc/resolv.conf レゾルバ設定ファイル\n"
18727 "/etc/host.conf レゾルバ設定ファイル\n"
18729 #. type: Plain text
18730 #: build/C/man3/resolver.3:274
18734 #. type: Plain text
18735 #: build/C/man3/resolver.3:280
18737 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
18740 "B<gethostbyname>(3), B<resolv.conf>(5), B<resolver>(5), B<hostname>(7), "
18744 #: build/C/man3/rexec.3:41
18750 #: build/C/man3/rexec.3:41
18753 msgstr "2013-09-26"
18755 #. type: Plain text
18756 #: build/C/man3/rexec.3:44
18757 msgid "rexec, rexec_af - return stream to a remote command"
18758 msgstr "rexec, rexec_af - リモートコマンドへのストリームを返す"
18760 #. type: Plain text
18761 #: build/C/man3/rexec.3:48
18764 "B<#define _BSD_SOURCE> /* See feature_test_macros(7) */\n"
18765 "B<#include E<lt>netdb.hE<gt>>\n"
18767 "B<#define _BSD_SOURCE> /* feature_test_macros(7) 参照 */\n"
18768 "B<#include E<lt>netdb.hE<gt>>\n"
18770 #. type: Plain text
18771 #: build/C/man3/rexec.3:51
18774 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
18775 "B< char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
18777 "B<int rexec(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
18778 "B< char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<);>\n"
18780 #. type: Plain text
18781 #: build/C/man3/rexec.3:55
18784 "B<int rexec_af(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
18785 "B< char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
18786 "B< sa_family_t >I<af>B<);>\n"
18788 "B<int rexec_af(char **>I<ahost>B<, int >I<inport>B<, char *>I<user>B<, >\n"
18789 "B< char *>I<passwd>B<, char *>I<cmd>B<, int *>I<fd2p>B<,>\n"
18790 "B< sa_family_t >I<af>B<);>\n"
18792 #. type: Plain text
18793 #: build/C/man3/rexec.3:59
18794 msgid "This interface is obsoleted by B<rcmd>(3)."
18795 msgstr "このインタフェースは B<rcmd>(3) によって置き換えられた。"
18797 #. type: Plain text
18798 #: build/C/man3/rexec.3:78
18800 "The B<rexec>() function looks up the host I<*ahost> using B<gethostbyname>"
18801 "(3), returning -1 if the host does not exist. Otherwise I<*ahost> is set to "
18802 "the standard name of the host. If a username and password are both "
18803 "specified, then these are used to authenticate to the foreign host; "
18804 "otherwise the environment and then the I<.netrc> file in user's home "
18805 "directory are searched for appropriate information. If all this fails, the "
18806 "user is prompted for the information."
18808 "B<rexec>() 関数は B<gethostbyname>(3) を使ってホスト I<*ahost> を探す。ホス"
18809 "トが存在しない場合は -1 を返し、それ以外の場合には I<*ahost> にそのホストの標"
18810 "準的な名前を設定する。 ユーザ名とパスワードの両方が指定された場合には、これら"
18811 "は 接続先のホストへの認証に利用される。そうでない場合には、 適切な情報を入手"
18812 "するために、環境変数と、そのユーザの ホームディレクトリの I<.netrc> ファイル"
18813 "が検索される。情報が見つからなかった時には、 ユーザに対して情報を入力するプロ"
18816 #. type: Plain text
18817 #: build/C/man3/rexec.3:89
18819 "The port I<inport> specifies which well-known DARPA Internet port to use for "
18820 "the connection; the call I<getservbyname(\"exec\", \"tcp\")> (see "
18821 "B<getservent>(3)) will return a pointer to a structure that contains the "
18822 "necessary port. The protocol for connection is described in detail in "
18825 "ポート I<inport> には、接続に使用する DARPA Internet の well-known ポートを指"
18826 "定する。 I<getservbyname(\"exec\", \"tcp\")> を呼び出すと構造体へのポインタが"
18827 "返され (B<getservent>(3) 参照)、この構造体には必要なポートが入っている。 接"
18828 "続に使用されるプロトコルについての詳細は B<rexecd>(8) に書かれている (訳注: "
18831 #. type: Plain text
18832 #: build/C/man3/rexec.3:122
18834 "If the connection succeeds, a socket in the Internet domain of type "
18835 "B<SOCK_STREAM> is returned to the caller, and given to the remote command as "
18836 "I<stdin> and I<stdout>. If I<fd2p> is nonzero, then an auxiliary channel to "
18837 "a control process will be setup, and a descriptor for it will be placed in "
18838 "I<*fd2p>. The control process will return diagnostic output from the "
18839 "command (unit 2) on this channel, and will also accept bytes on this channel "
18840 "as being UNIX signal numbers, to be forwarded to the process group of the "
18841 "command. The diagnostic information returned does not include remote "
18842 "authorization failure, as the secondary connection is set up after "
18843 "authorization has been verified. If I<fd2p> is 0, then the I<stderr> (unit "
18844 "2 of the remote command) will be made the same as the I<stdout> and no "
18845 "provision is made for sending arbitrary signals to the remote process, "
18846 "although you may be able to get its attention by using out-of-band data."
18848 "接続に成功すると、インターネットドメインの B<SOCK_STREAM> 型のソケットが返さ"
18849 "れ、そのソケットはリモートコマンドの 標準入力および標準出力となる。 I<fd2p> "
18850 "が 0 以外の場合、制御プロセスへの補助チャンネルがセットアップされ、 補助チャ"
18851 "ンネルのディスクリプタが I<*fd2p> に書かれる。 制御プロセスはコマンドからの診"
18852 "断メッセージ出力 (ファイルディスクリプタ 2) をこのチャンネルで返す。また、こ"
18853 "のチャンネル経由で UNIX のシグナル番号を示すバイトを受信する。受信したシグナ"
18854 "ルは コマンドが属すプロセスグループに転送される。 診断情報にはリモートの認証"
18855 "失敗は含まれない。なぜなら、認証の確認が行われた 後で補助チャンネルの接続は"
18856 "セットアップされるからである。 I<fd2p> が 0 の場合、標準エラー (リモートコマ"
18857 "ンドのファイルディスクリプタ 2) は 標準出力と同様に扱われ、リモートプロセスに"
18858 "任意のシグナルを送るための 手段は提供されない。但し、リモートプロセスに対して"
18859 "トリガをかけるために、 帯域外データ (out-of-band data) を使うことはできる。"
18862 #: build/C/man3/rexec.3:122
18865 msgstr "rexec_af()"
18867 #. type: Plain text
18868 #: build/C/man3/rexec.3:138
18870 "The B<rexec>() function works over IPv4 (B<AF_INET>). By contrast, the "
18871 "B<rexec_af>() function provides an extra argument, I<af>, that allows the "
18872 "caller to select the protocol. This argument can be specified as "
18873 "B<AF_INET>, B<AF_INET6>, or B<AF_UNSPEC> (to allow the implementation to "
18874 "select the protocol)."
18876 "B<rexec>() 関数は IPv4 (B<AF_INET>) 上で動作する。\n"
18877 "これに対して、 B<rexec_af>() 関数は追加の引き数 I<af> があり、\n"
18878 "この引き数で呼び出し側がプロトコルを選択できる。\n"
18879 "この引き数には B<AF_INET>, B<AF_INET6>, B<AF_UNSPEC> を指定できる\n"
18880 "(B<AF_UNSPEC> は実装側がプロトコルを選択することを意味する)。"
18882 #. type: Plain text
18883 #: build/C/man3/rexec.3:142
18884 msgid "The B<rexec_af>() function was added to glibc in version 2.2."
18885 msgstr "B<rexec_af>() 関数は glibc バージョン 2.9 で追加された。"
18887 #. type: Plain text
18888 #: build/C/man3/rexec.3:149
18889 msgid "The B<rexec>() and B<rexec_af>() functions are not thread-safe."
18890 msgstr "関数 B<rexec>() と B<rexec_af>() はスレッドセーフではない。"
18892 #. type: Plain text
18893 #: build/C/man3/rexec.3:158
18895 "These functions are not in POSIX.1-2001. The B<rexec>() function first "
18896 "appeared in 4.2BSD, and is present on the BSDs, Solaris, and many other "
18897 "systems. The B<rexec_af>() function is more recent, and less widespread."
18899 "これらの関数は POSIX.1-2001 にはない。B<rexec>() 関数は 4.2BSD で始めて\n"
18900 "登場し、BSD 系、Solaris や他の多くのシステムに存在する。B<rexec_af>()\n"
18901 "関数はもっと新しく、それほど広く使われているわけではない。"
18903 #. type: Plain text
18904 #: build/C/man3/rexec.3:162
18906 "The B<rexec>() function sends the unencrypted password across the network."
18908 "B<rexec>() 関数はネットワークに暗号化されていないパスワードを送信する。"
18910 #. type: Plain text
18911 #: build/C/man3/rexec.3:167
18913 "The underlying service is considered a big security hole and therefore not "
18914 "enabled on many sites; see B<rexecd>(8) for explanations."
18916 "基礎的なサービスにおいては大きなセキュリティホールと考えられるため、 \n"
18917 "多くのサイトで無効になっている。詳細は B<rexecd>(8) を参照。"
18919 #. type: Plain text
18920 #: build/C/man3/rexec.3:170
18921 msgid "B<rcmd>(3), B<rexecd>(8)"
18922 msgstr "B<rcmd>(3), B<rexecd>(8)"
18925 #: build/C/man5/services.5:34
18931 #: build/C/man5/services.5:34
18934 msgstr "2010-05-22"
18936 #. type: Plain text
18937 #: build/C/man5/services.5:37
18938 msgid "services - Internet network services list"
18939 msgstr "services - インターネット ネットワークサービス リスト"
18941 #. type: Plain text
18942 #: build/C/man5/services.5:52
18944 "B<services> is a plain ASCII file providing a mapping between human-friendly "
18945 "textual names for internet services, and their underlying assigned port "
18946 "numbers and protocol types. Every networking program should look into this "
18947 "file to get the port number (and protocol) for its service. The C library "
18948 "routines B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
18949 "B<setservent>(3), and B<endservent>(3) support querying this file from "
18952 "B<services> は、人が分かりやすい形のインターネットサービスの名前と、 それらの"
18953 "サービスに割り当てられたポート番号や プロトコル種別の対応関係が書かれているテ"
18954 "キストファイルである。 ネットワーク上で動作するプログラムはすべて、 そのサー"
18955 "ビスに対応するポート番号 (とプロトコル) を得るために、 このファイルを調べる必"
18956 "要がある。 C ライブラリ関数である B<getservent>(3), B<getservbyname>(3), "
18957 "B<getservbyport>(3), B<setservent>(3), B<endservent>(3) を利用することで、プ"
18958 "ログラムはこのファイルを調べることができる。"
18960 #. type: Plain text
18961 #: build/C/man5/services.5:58
18963 "Port numbers are assigned by the IANA (Internet Assigned Numbers Authority), "
18964 "and their current policy is to assign both TCP and UDP protocols when "
18965 "assigning a port number. Therefore, most entries will have two entries, "
18966 "even for TCP-only services."
18968 "ポート番号は、IANA (Internet Assigned Numbers Authority) によって 割り当てら"
18969 "れており、現在はポート番号を割り当てる際に TCP と UDP の両方のプロトコルを割"
18970 "り当てることになっている。 そのため、ほとんどのサービスに対して、 たとえ TCP "
18971 "だけのサービスの場合であっても、対応する項目が二つあることになる。"
18973 #. type: Plain text
18974 #: build/C/man5/services.5:70
18976 "Port numbers below 1024 (so-called \"low numbered\" ports) can be bound to "
18977 "only by root (see B<bind>(2), B<tcp>(7), and B<udp>(7)). This is so clients "
18978 "connecting to low numbered ports can trust that the service running on the "
18979 "port is the standard implementation, and not a rogue service run by a user "
18980 "of the machine. Well-known port numbers specified by the IANA are normally "
18981 "located in this root-only space."
18983 "1024 より小さいポート番号 (いわゆる \"low numbered\" ポート) は 管理者 "
18984 "(root) 権限によってのみ使用することができる (B<bind>(2), B<tcp>(7), B<udp>"
18985 "(7) 参照)。 これは、これらのポートに接続するクライアントに対して、 そのポー"
18986 "トで動いているサービスが標準的な実装であり、 その計算機のユーザーが動かしてい"
18987 "る 不正なサービスではないことを保証するためである。 IANA に明記されているよく"
18988 "使用されるポート番号は、 通常このような管理者だけが使用できる範囲に配置され"
18991 #. type: Plain text
18992 #: build/C/man5/services.5:85
18994 "The presence of an entry for a service in the B<services> file does not "
18995 "necessarily mean that the service is currently running on the machine. See "
18996 "B<inetd.conf>(5) for the configuration of Internet services offered. Note "
18997 "that not all networking services are started by B<inetd>(8), and so won't "
18998 "appear in B<inetd.conf>(5). In particular, news (NNTP) and mail (SMTP) "
18999 "servers are often initialized from the system boot scripts."
19001 "B<services> ファイルにあるサービスに対する項目があっても、必ずしもそのサービ"
19002 "スが現 在その計算機で動いている訳ではない。利用可能なインターネットサービスの"
19003 "設定に ついては B<inetd.conf>(5) に記述されている。ただし、すべてのサービス"
19004 "が B<inetd>(8) によって起動されるわけではないので、 B<inetd.conf>(5) には書"
19005 "かれていないサービスもあることに注意する必要がある。 特に、ネットニュース "
19006 "(NNTP) や メール (SMTP) のサーバーは、システム起動時の スクリプトから起動され"
19009 #. type: Plain text
19010 #: build/C/man5/services.5:94
19012 "The location of the B<services> file is defined by B<_PATH_SERVICES> in "
19013 "I<E<lt>netdb.hE<gt>>. This is usually set to I</etc/services>."
19015 "B<services> ファイルの場所は、 I<E<lt>netdb.hE<gt>> 中の B<_PATH_SERVICES> に"
19016 "よって定義されている。 この値は通常 I</etc/services> に設定されている。"
19018 #. type: Plain text
19019 #: build/C/man5/services.5:96
19020 msgid "Each line describes one service, and is of the form:"
19021 msgstr "1 行につき 1 サービスが記述されており、以下の形式である。"
19023 #. type: Plain text
19024 #: build/C/man5/services.5:98
19025 msgid "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
19026 msgstr "I<service-name\\ \\ \\ port>B</>I<protocol\\ \\ \\ >[I<aliases ...>]"
19029 #: build/C/man5/services.5:98
19032 msgstr "各項目は以下の通り。"
19035 #: build/C/man5/services.5:100
19037 msgid "I<service-name>"
19038 msgstr "I<service-name>"
19040 #. type: Plain text
19041 #: build/C/man5/services.5:106
19043 "is the friendly name the service is known by and looked up under. It is "
19044 "case sensitive. Often, the client program is named after the I<service-"
19047 "サービスを表す分かりやすい名前であり、検索の際にも使用される。 大文字と小文字"
19048 "は区別される。 クライアントプログラムは I<service-name> にちなんで名付けられ"
19052 #: build/C/man5/services.5:106
19057 #. type: Plain text
19058 #: build/C/man5/services.5:109
19059 msgid "is the port number (in decimal) to use for this service."
19060 msgstr "サービスに対して使用されるポート番号。10 進数で指定する。"
19062 #. type: Plain text
19063 #: build/C/man5/services.5:120
19065 "is the type of protocol to be used. This field should match an entry in the "
19066 "B<protocols>(5) file. Typical values include B<tcp> and B<udp>."
19068 "使用されるプロトコルの種類。この欄は、 B<protocols>(5) ファイルの中の項目と"
19069 "一致している必要がある。 通常使用される値は、 B<tcp> と B<udp> である。"
19071 #. type: Plain text
19072 #: build/C/man5/services.5:126
19074 "is an optional space or tab separated list of other names for this service. "
19075 "Again, the names are case sensitive."
19077 "サービスに対する別名のリスト (区切はスペースまたはタブ) で、この欄は 必要にな"
19078 "らば書くことができる。 また、別名は大文字と小文字は区別される。"
19080 #. type: Plain text
19081 #: build/C/man5/services.5:128
19082 msgid "Either spaces or tabs may be used to separate the fields."
19083 msgstr "それぞれの欄の区切りには、スペースまたはタブが使用される。"
19085 #. type: Plain text
19086 #: build/C/man5/services.5:132
19088 "Comments are started by the hash sign (#) and continue until the end of the "
19089 "line. Blank lines are skipped."
19091 "コメントはシャープ (#) で始まり、その行の終わりまでがコメントとみなされる。 "
19094 #. type: Plain text
19095 #: build/C/man5/services.5:143
19097 "The I<service-name> should begin in the first column of the file, since "
19098 "leading spaces are not stripped. I<service-names> can be any printable "
19099 "characters excluding space and tab. However, a conservative choice of "
19100 "characters should be used to minimize compatibility problems. E.g., a-z, "
19101 "0-9, and hyphen (-) would seem a sensible choice."
19103 "行の始めのスペースは無視されないので、 I<service-name> は、行頭から書かなけれ"
19104 "ばならない。 I<service-names> は、スペースとタブ以外の印字可能な文字なら何で"
19105 "もよいが、しかしながら 互換性の問題を少なくするような文字を選択すべきであ"
19106 "る。 例えば、a-z 、0-9 、ハイフォン (-) を使用するのが無難と思われる。"
19108 #. type: Plain text
19109 #: build/C/man5/services.5:152
19111 "Lines not matching this format should not be present in the file. "
19112 "(Currently, they are silently skipped by B<getservent>(3), B<getservbyname>"
19113 "(3), and B<getservbyport>(3). However, this behavior should not be relied "
19116 "指定された形式に合わない行はあってはならない (現在は、そのような行は "
19117 "B<getservent>(3), B<getservbyname>(3), B<getservbyport>(3) によって無視され"
19118 "る。しかし、その場合の挙動は信頼できない)。"
19120 #. type: Plain text
19121 #: build/C/man5/services.5:169
19122 msgid "A sample B<services> file might look like this:"
19123 msgstr "B<services> ファイルの見本を以下に示す。"
19125 #. type: Plain text
19126 #: build/C/man5/services.5:182
19129 "CW<netstat 15/tcp\n"
19130 "qotd 17/tcp quote\n"
19131 "msp 18/tcp # message send protocol\n"
19132 "msp 18/udp # message send protocol\n"
19133 "chargen 19/tcp ttytst source\n"
19134 "chargen 19/udp ttytst source\n"
19136 "# 22 - unassigned\n"
19139 "CW<netstat 15/tcp\n"
19140 "qotd 17/tcp quote\n"
19141 "msp 18/tcp # message send protocol\n"
19142 "msp 18/udp # message send protocol\n"
19143 "chargen 19/tcp ttytst source\n"
19144 "chargen 19/udp ttytst source\n"
19146 "# 22 - unassigned\n"
19149 #. type: Plain text
19150 #: build/C/man5/services.5:189
19151 msgid "The Internet network services list"
19152 msgstr "インターネット ネットワークサービスのリスト"
19155 #: build/C/man5/services.5:189
19157 msgid "I<E<lt>netdb.hE<gt>>"
19158 msgstr "I<E<lt>netdb.hE<gt>>"
19161 #. It's not clear when/if the following was ever true;
19162 #. it isn't true for glibc 2.8:
19163 #. There is a maximum of 35 aliases, due to the way the
19164 #. .BR getservent (3)
19165 #. code is written.
19166 #. It's not clear when/if the following was ever true;
19167 #. it isn't true for glibc 2.8:
19168 #. Lines longer than
19170 #. (currently 1024) characters will be ignored by
19171 #. .BR getservent (3),
19172 #. .BR getservbyname (3),
19174 #. .BR getservbyport (3).
19175 #. However, this will also cause the next line to be mis-parsed.
19176 #. type: Plain text
19177 #: build/C/man5/services.5:210
19178 msgid "Definition of B<_PATH_SERVICES>"
19179 msgstr "B<_PATH_SERVICES> の定義"
19181 #. type: Plain text
19182 #: build/C/man5/services.5:220
19184 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
19185 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
19188 "B<listen>(2), B<endservent>(3), B<getservbyname>(3), B<getservbyport>(3), "
19189 "B<getservent>(3), B<setservent>(3), B<inetd.conf>(5), B<protocols>(5), "
19192 #. type: Plain text
19193 #: build/C/man5/services.5:222
19194 msgid "Assigned Numbers RFC, most recently RFC\\ 1700, (AKA STD0002)."
19196 "ポート番号の割り当てを定めている RFC (最新版は RFC\\ 1700、別名 STD0002)"
19199 #: build/C/man3/setnetgrent.3:10
19201 msgid "SETNETGRENT"
19202 msgstr "SETNETGRENT"
19205 #: build/C/man3/setnetgrent.3:10
19208 msgstr "2007-07-26"
19210 #. type: Plain text
19211 #: build/C/man3/setnetgrent.3:14
19213 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - handle "
19214 "network group entries"
19216 "setnetgrent, endnetgrent, getnetgrent, getnetgrent_r, innetgr - ネットワー"
19219 #. type: Plain text
19220 #: build/C/man3/setnetgrent.3:19
19222 msgid "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
19223 msgstr "B<int setnetgrent(const char *>I<netgroup>B<);>\n"
19225 #. type: Plain text
19226 #: build/C/man3/setnetgrent.3:21
19228 msgid "B<void endnetgrent(void);>\n"
19229 msgstr "B<void endnetgrent(void);>\n"
19231 #. type: Plain text
19232 #: build/C/man3/setnetgrent.3:23
19234 msgid "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
19235 msgstr "B<int getnetgrent(char **>I<host>B<, char **>I<user>B<, char **>I<domain>B<);>\n"
19237 #. type: Plain text
19238 #: build/C/man3/setnetgrent.3:26
19241 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
19242 "B< char **>I<domain>B<, char *>I<buf>B<, int >I<buflen>B<);>\n"
19244 "B<int getnetgrent_r(char **>I<host>B<, char **>I<user>B<,>\n"
19245 "B< char **>I<domain>B<, char *>I<buf>B<, int >I<buflen>B<);>\n"
19247 #. type: Plain text
19248 #: build/C/man3/setnetgrent.3:29
19251 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
19252 "B< const char *>I<user>B<, const char *>I<domain>B<);>\n"
19254 "B<int innetgr(const char *>I<netgroup>B<, const char *>I<host>B<,>\n"
19255 "B< const char *>I<user>B<, const char *>I<domain>B<);>\n"
19257 #. type: Plain text
19258 #: build/C/man3/setnetgrent.3:43
19260 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
19261 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
19263 "B<setnetgrent>(), B<endnetgrent>(), B<getnetgrent>(), B<getnetgrent_r>(), "
19264 "B<innetgr>(): _BSD_SOURCE || _SVID_SOURCE"
19266 #. type: Plain text
19267 #: build/C/man3/setnetgrent.3:57
19269 "The I<netgroup> is a SunOS invention. A netgroup database is a list of "
19270 "string triples (I<hostname>, I<username>, I<domainname>) or other netgroup "
19271 "names. Any of the elements in a triple can be empty, which means that "
19272 "anything matches. The functions described here allow access to the netgroup "
19273 "databases. The file I</etc/nsswitch.conf> defines what database is searched."
19275 "I<netgroup> は SunOS で考案されたものである。ネットグループのデータベースの "
19276 "エントリは、 3 つの文字列のリスト (I<hostname>, I<username>, I<domainname>) "
19277 "もしくはネットグループ名である。 前記のリストの各要素は空であってもよい。 空"
19278 "は何とでも一致することを意味する。 本ページで説明する関数を使うことで、ネット"
19279 "グループのデータベースに アクセスすることができる。どのデータベースが検索され"
19280 "るかは I</etc/nsswitch.conf> ファイルで定義されている。"
19282 #. type: Plain text
19283 #: build/C/man3/setnetgrent.3:77
19285 "The B<setnetgrent>() call defines the netgroup that will be searched by "
19286 "subsequent B<getnetgrent>() calls. The B<getnetgrent>() function "
19287 "retrieves the next netgroup entry, and returns pointers in I<host>, I<user>, "
19288 "I<domain>. A null pointer means that the corresponding entry matches any "
19289 "string. The pointers are valid only as long as there is no call to other "
19290 "netgroup-related functions. To avoid this problem you can use the GNU "
19291 "function B<getnetgrent_r>() that stores the strings in the supplied "
19292 "buffer. To free all allocated buffers use B<endnetgrent>()."
19294 "B<setnetgrent>() コールは、この後で呼ばれる B<getnetgrent>() コールが検索す"
19295 "るネットグループを定める。 B<getnetgrent>() 関数はネットグループの次のエント"
19296 "リを取得し、 I<host>, I<user>, I<domain> にポインタを入れて返る。 NULL ポイン"
19297 "タは、対応するエントリがどんな文字列とも一致することを意味する。 得られたポイ"
19298 "ンタは、ネットグループ関係の関数のいずれかが呼ばれるまでの 間だけ有効である。"
19299 "この問題を避けるためには GNU 拡張の関数 B<getnetgrent_r>() を使うとよい。こ"
19300 "の関数は呼び出し側が用意したバッファに 文字列を格納する。割り当て済のバッファ"
19301 "を全て解放するには B<endnetgrent>() を使用する。"
19303 #. type: Plain text
19304 #: build/C/man3/setnetgrent.3:86
19306 "In most cases you want to check only if the triplet (I<hostname>, "
19307 "I<username>, I<domainname>) is a member of a netgroup. The function "
19308 "B<innetgr>() can be used for this without calling the above three "
19309 "functions. Again, a null pointer is a wildcard and matches any string. The "
19310 "function is thread-safe."
19312 "ほとんどの場合、 (I<hostname>, I<username>, I<domainname>) の3要素の組がネッ"
19313 "トグループのメンバーかどうかを確認したいだけであろう。 B<innetgr>() 関数を使"
19314 "うと、上記の3つの関数を呼び出さずにこの目的を達成できる。 もう一度書いておく"
19315 "が、NULL ポインタはワイルドカードであり、 あらゆる文字列と一致する。この関数"
19318 #. type: Plain text
19319 #: build/C/man3/setnetgrent.3:88
19320 msgid "These functions return 1 on success and 0 for failure."
19321 msgstr "これらの関数は成功すると 1 を、失敗すると 0 を返す。"
19323 #. type: Plain text
19324 #: build/C/man3/setnetgrent.3:90
19325 msgid "I</etc/netgroup>"
19326 msgstr "I</etc/netgroup>"
19328 #. getnetgrent_r() is on Solaris 8 and AIX 5.1, but not the BSDs.
19329 #. type: Plain text
19330 #: build/C/man3/setnetgrent.3:103
19332 "These functions are not in POSIX.1-2001, but B<setnetgrent>(), B<endnetgrent>"
19333 "(), B<getnetgrent>(), and B<innetgr>() are available on most UNIX systems. "
19334 "B<getnetgrent_r>() is not widely available on other systems."
19336 "これらの関数は POSIX.1-2001 にはないが、 setnetgrent (), endnetgrent (), "
19337 "getnetgrent (), innetgr () はほとんどの UNIX システムで利用可能である。 "
19338 "B<getnetgrent_r>() は広く他のシステムで利用できるわけではない。"
19340 #. type: Plain text
19341 #: build/C/man3/setnetgrent.3:107
19342 msgid "In the BSD implementation, B<setnetgrent>() returns void."
19343 msgstr "BSD の実装では B<setnetgrent>() は void を返す。"
19345 #. type: Plain text
19346 #: build/C/man3/setnetgrent.3:111
19347 msgid "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
19348 msgstr "B<sethostent>(3), B<setprotoent>(3), B<setservent>(3)"
19351 #: build/C/man2/shutdown.2:40
19357 #: build/C/man2/shutdown.2:40
19360 msgstr "2012-09-06"
19362 #. type: Plain text
19363 #: build/C/man2/shutdown.2:43
19364 msgid "shutdown - shut down part of a full-duplex connection"
19365 msgstr "shutdown - 全二重接続の一部を閉じる"
19367 #. type: Plain text
19368 #: build/C/man2/shutdown.2:47
19369 msgid "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
19370 msgstr "B<int shutdown(int >I<sockfd>B<, int >I<how>B<);>"
19372 #. type: Plain text
19373 #: build/C/man2/shutdown.2:69
19375 "The B<shutdown>() call causes all or part of a full-duplex connection on "
19376 "the socket associated with I<sockfd> to be shut down. If I<how> is "
19377 "B<SHUT_RD>, further receptions will be disallowed. If I<how> is B<SHUT_WR>, "
19378 "further transmissions will be disallowed. If I<how> is B<SHUT_RDWR>, "
19379 "further receptions and transmissions will be disallowed."
19381 "B<shutdown>() は、 I<sockfd> に関連づけられているソケットによる全二重接続 "
19382 "(full-duplex connection) の一部または全てを閉じる。 I<how> が B<SHUT_RD> な"
19383 "らば、それ以降の受信を禁止する。 I<how> が B<SHUT_WR> ならば、それ以降の送信"
19384 "を禁止する。 I<how> が B<SHUT_RDWR> ならば、それ以降の送受信を禁止する。"
19386 #. type: Plain text
19387 #: build/C/man2/shutdown.2:79
19388 msgid "I<sockfd> is not a valid descriptor."
19389 msgstr "I<sockfd> が有効なディスクリプターでない。"
19391 #. type: Plain text
19392 #: build/C/man2/shutdown.2:84
19393 msgid "An invalid value was specified in I<how> (but see BUGS)."
19394 msgstr "I<how> に無効な値が指定された (バグが参照)。"
19396 #. type: Plain text
19397 #: build/C/man2/shutdown.2:87
19398 msgid "The specified socket is not connected."
19399 msgstr "指定されたソケットは接続されていない。"
19401 #. type: Plain text
19402 #: build/C/man2/shutdown.2:91
19403 msgid "I<sockfd> is a file, not a socket."
19404 msgstr "I<sockfd> がソケットでなくファイルである。"
19406 #. type: Plain text
19407 #: build/C/man2/shutdown.2:95
19409 "POSIX.1-2001, 4.4BSD (the B<shutdown>() function call first appeared in "
19412 "POSIX.1-2001, 4.4BSD (B<shutdown>() 関数コールは 4.2BSD で初めて登場した)。"
19414 #. type: Plain text
19415 #: build/C/man2/shutdown.2:104
19417 "The constants B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> have the value 0, 1, 2, "
19418 "respectively, and are defined in I<E<lt>sys/socket.hE<gt>> since "
19421 "B<SHUT_RD>, B<SHUT_WR>, B<SHUT_RDWR> の各定数 (それぞれ 0, 1, 2 の値を持つ) "
19422 "は glibc-2.1.91 以降、 I<E<lt>sys/socket.hE<gt>> で定義されている。"
19425 #. https://bugzilla.kernel.org/show_bug.cgi?id=47111
19426 #. type: Plain text
19427 #: build/C/man2/shutdown.2:113
19429 "As currently implemented, checks for the validity of I<how> are done in "
19430 "domain-specific code, and not all domains perform these checks. Most "
19431 "notably, UNIX domain sockets simply ignore invalid values; this may change "
19434 "現在の実装では I<how> の妥当性チェックはドメイン固有のコードの中で行われてい"
19435 "るが、 すべてのドメインでこれらのチェックが行われている訳ではない。 中でも注"
19436 "意すべきは、 UNIX ドメインソケットでは無効な値は単に無視される点である。 これ"
19439 #. type: Plain text
19440 #: build/C/man2/shutdown.2:117
19441 msgid "B<connect>(2), B<socket>(2), B<socket>(7)"
19442 msgstr "B<connect>(2), B<socket>(2), B<socket>(7)"
19445 #: build/C/man7/tcp.7:76
19451 #: build/C/man7/tcp.7:76
19454 msgstr "2014-03-31"
19456 #. type: Plain text
19457 #: build/C/man7/tcp.7:79
19458 msgid "tcp - TCP protocol"
19459 msgstr "tcp - TCP プロトコル"
19461 #. type: Plain text
19462 #: build/C/man7/tcp.7:85
19463 msgid "B<#include E<lt>netinet/tcp.hE<gt>>"
19464 msgstr "B<#include E<lt>netinet/tcp.hE<gt>>"
19466 #. type: Plain text
19467 #: build/C/man7/tcp.7:87
19468 msgid "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
19469 msgstr "B<tcp_socket = socket(AF_INET, SOCK_STREAM, 0);>"
19471 #. type: Plain text
19472 #: build/C/man7/tcp.7:100
19474 "This is an implementation of the TCP protocol defined in RFC\\ 793, RFC\\ "
19475 "1122 and RFC\\ 2001 with the NewReno and SACK extensions. It provides a "
19476 "reliable, stream-oriented, full-duplex connection between two sockets on top "
19477 "of B<ip>(7), for both v4 and v6 versions. TCP guarantees that the data "
19478 "arrives in order and retransmits lost packets. It generates and checks a "
19479 "per-packet checksum to catch transmission errors. TCP does not preserve "
19480 "record boundaries."
19482 "これは RFC\\ 793, RFC\\ 1122, RFC\\ 2001 で定義されている TCP プロトコルを "
19483 "NewReno 拡張と SACK 拡張を含めて実装したものである。 TCP は、 B<ip>(7) 上の"
19484 "二つのソケット間に、信頼性の高い、ストリーム指向の全二重 (full-duplex) 通信を"
19485 "提供する。 v4 と v6 の両方のバージョンの B<ip>(7) に対応している。 TCP は、"
19486 "データが順序を守って到着すること、途中で失われたパケットが 再送されることを保"
19487 "証する。また、パケット単位にチェックサムを 生成、検査することで、転送エラーを"
19488 "検知する。 TCP はレコード境界 (record boundary) を保存しない。"
19490 #. type: Plain text
19491 #: build/C/man7/tcp.7:119
19493 "A newly created TCP socket has no remote or local address and is not fully "
19494 "specified. To create an outgoing TCP connection use B<connect>(2) to "
19495 "establish a connection to another TCP socket. To receive new incoming "
19496 "connections, first B<bind>(2) the socket to a local address and port and "
19497 "then call B<listen>(2) to put the socket into the listening state. After "
19498 "that a new socket for each incoming connection can be accepted using "
19499 "B<accept>(2). A socket which has had B<accept>(2) or B<connect>(2) "
19500 "successfully called on it is fully specified and may transmit data. Data "
19501 "cannot be transmitted on listening or not yet connected sockets."
19503 "新しく生成されたばかりの TCP ソケットは、 リモートアドレスかローカルアドレス"
19504 "がなく、 したがって詳細が完全に指定された状態ではない。 外部への TCP 接続を生"
19505 "成するには、 B<connect>(2) を用いてもう一方の TCP ソケットへの接続を確立す"
19506 "る。 外部からの新たな接続を受けるには、まず B<bind>(2) でソケットをローカル"
19507 "なアドレスとポートに結びつけ、次に B<listen>(2) を呼んでソケットを接続待ち受"
19508 "け状態にする。 その後、到着した接続要求に対して B<accept>(2) を用い、ソケッ"
19509 "トを新しく生成する。 B<accept>(2) または B<connect>(2) のコールが成功したソ"
19510 "ケットは、詳細が完全に指定された状態となり、 データのやりとりが可能となる。接"
19511 "続待ち受け状態の (listening) ソケットや、 接続 (connect) されていないソケット"
19512 "を通してデータをやりとりすることはできない。"
19514 #. type: Plain text
19515 #: build/C/man7/tcp.7:139
19517 "Linux supports RFC\\ 1323 TCP high performance extensions. These include "
19518 "Protection Against Wrapped Sequence Numbers (PAWS), Window Scaling and "
19519 "Timestamps. Window scaling allows the use of large (E<gt> 64K) TCP windows "
19520 "in order to support links with high latency or bandwidth. To make use of "
19521 "them, the send and receive buffer sizes must be increased. They can be set "
19522 "globally with the I</proc/sys/net/ipv4/tcp_wmem> and I</proc/sys/net/ipv4/"
19523 "tcp_rmem> files, or on individual sockets by using the B<SO_SNDBUF> and "
19524 "B<SO_RCVBUF> socket options with the B<setsockopt>(2) call."
19526 "Linux は RFC\\ 1323 の TCP high performance 拡張をサポートしている。 これに"
19527 "は、Protection Against Wrapped Sequence Numbers (PAWS)、 ウィンドウスケーリン"
19528 "グ、タイムスタンプなどが含まれている。 ウィンドウスケーリングを利用すると、遅"
19529 "延または帯域の大きな接続で、 (64K 以上の) 巨大な TCP ウィンドウを用いることが"
19530 "可能となる。 これを用いるには、送受信のバッファサイズを大きくしなければならな"
19531 "い。 システム全体に対するバッファサイズの変更は、ファイル I</proc/sys/net/"
19532 "ipv4/tcp_wmem> と I</proc/sys/net/ipv4/tcp_rmem> を用いて行うことができる。 "
19533 "また、個々のソケットのみを大きくしたい場合には、 B<SO_SNDBUF> や "
19534 "B<SO_RCVBUF> ソケットオプションを用いて B<setsockopt>(2) コールを用いて設定"
19537 #. type: Plain text
19538 #: build/C/man7/tcp.7:170
19540 "The maximum sizes for socket buffers declared via the B<SO_SNDBUF> and "
19541 "B<SO_RCVBUF> mechanisms are limited by the values in the I</proc/sys/net/"
19542 "core/rmem_max> and I</proc/sys/net/core/wmem_max> files. Note that TCP "
19543 "actually allocates twice the size of the buffer requested in the "
19544 "B<setsockopt>(2) call, and so a succeeding B<getsockopt>(2) call will not "
19545 "return the same size of buffer as requested in the B<setsockopt>(2) call. "
19546 "TCP uses the extra space for administrative purposes and internal kernel "
19547 "structures, and the I</proc> file values reflect the larger sizes compared "
19548 "to the actual TCP windows. On individual connections, the socket buffer "
19549 "size must be set prior to the B<listen>(2) or B<connect>(2) calls in order "
19550 "to have it take effect. See B<socket>(7) for more information."
19552 "B<SO_SNDBUF> や B<SO_RCVBUF> のメカニズムで宣言されるソケットバッファの最大サ"
19553 "イズは、ファイル I</proc/sys/net/core/rmem_max> や I</proc/sys/net/core/"
19554 "wmem_max> で指定されたシステムとしての制限値を超えることはできない。 TCP は実"
19555 "際には B<setsockopt>(2) コールが要求したバッファサイズの二倍を割り当てる。 "
19556 "そのため、この後で B<getsockopt>(2) コールを行うと、 B<setsockopt>(2) で要"
19557 "求したバッファサイズとは異なる値が返る。 TCP はこの余分な空間を、管理目的や"
19558 "カーネル内部の構造体に用いている。 I</proc> ファイルの値は、これらを反映し、"
19559 "実際の TCP ウィンドウよりも大きな値となる。 各接続におけるソケットのバッファ"
19560 "サイズ変更を有効にするには、 B<listen>(2) や B<connect>(2) コールの前に設定"
19561 "しなければならない。 より詳しい情報は B<socket>(7) を見よ。"
19563 #. type: Plain text
19564 #: build/C/man7/tcp.7:202
19566 "TCP supports urgent data. Urgent data is used to signal the receiver that "
19567 "some important message is part of the data stream and that it should be "
19568 "processed as soon as possible. To send urgent data specify the B<MSG_OOB> "
19569 "option to B<send>(2). When urgent data is received, the kernel sends a "
19570 "B<SIGURG> signal to the process or process group that has been set as the "
19571 "socket \"owner\" using the B<SIOCSPGRP> or B<FIOSETOWN> ioctls (or the "
19572 "POSIX.1-2001-specified B<fcntl>(2) B<F_SETOWN> operation). When the "
19573 "B<SO_OOBINLINE> socket option is enabled, urgent data is put into the normal "
19574 "data stream (a program can test for its location using the B<SIOCATMARK> "
19575 "ioctl described below), otherwise it can be received only when the "
19576 "B<MSG_OOB> flag is set for B<recv>(2) or B<recvmsg>(2)."
19578 "TCP は緊急データ (urgent data) をサポートしている。緊急データは 何らかの重要"
19579 "なメッセージがデータストリームに含まれていること、 そのデータをできるだけ早く"
19580 "処理すべきこと、を受信者に伝えるために用いられる。 緊急データを送るには、 "
19581 "B<send>(2) に B<MSG_OOB> オプションを指定する。 緊急データを受信すると、カー"
19582 "ネルは B<SIGURG> シグナルを送信する。送信先は B<SIOCSPGRP> や B<FIOSETOWN> "
19583 "ioctl (や POSIX.1-2001 で規定されている B<fcntl>(2) B<F_SETOWN> 操作) を用い"
19584 "てそのソケットの「所有者」として設定された プロセスかプロセスグループであ"
19585 "る。 B<SO_OOBINLINE> ソケットオプションが有効になっていると、緊急データは 通"
19586 "常のデータストリームの中に混ぜて送られる (プログラムは下記の B<SIOCATMARK> "
19587 "ioctl を使って緊急データの場所を調べることができる)。 無効になっている場合に"
19588 "は、 B<recv>(2) や B<recvmsg>(2) で B<MSG_OOB> フラグがセットされているとき"
19591 #. type: Plain text
19592 #: build/C/man7/tcp.7:210
19594 "Linux 2.4 introduced a number of changes for improved throughput and "
19595 "scaling, as well as enhanced functionality. Some of these features include "
19596 "support for zero-copy B<sendfile>(2), Explicit Congestion Notification, new "
19597 "management of TIME_WAIT sockets, keep-alive socket options and support for "
19598 "Duplicate SACK extensions."
19600 "Linux 2.4 では多くの変更がなされ、 スループットとスケーリングが向上し、機能も"
19601 "高まった。 これらの機能には、ゼロコピー B<sendfile>(2)、 Explicit Congestion "
19602 "Notification、 TIME_WAIT ソケットの新しい管理法、 keep-alive ソケットオプショ"
19603 "ン、 Duplicate SACK 拡張のサポートなどがある。"
19606 #: build/C/man7/tcp.7:210
19608 msgid "Address formats"
19609 msgstr "アドレスのフォーマット"
19611 #. type: Plain text
19612 #: build/C/man7/tcp.7:219
19614 "TCP is built on top of IP (see B<ip>(7)). The address formats defined by "
19615 "B<ip>(7) apply to TCP. TCP supports point-to-point communication only; "
19616 "broadcasting and multicasting are not supported."
19618 "TCP は IP の上層に構築されている (B<ip>(7) を参照)。 B<ip>(7) に定義されて"
19619 "いるアドレスフォーマットは TCP にも適用される。 TCP は point-to-point の通信"
19620 "だけをサポートする。 ブロードキャストやマルチキャストはサポートしない。"
19622 #. type: Plain text
19623 #: build/C/man7/tcp.7:231
19625 "System-wide TCP parameter settings can be accessed by files in the directory "
19626 "I</proc/sys/net/ipv4/>. In addition, most IP I</proc> interfaces also apply "
19627 "to TCP; see B<ip>(7). Variables described as I<Boolean> take an integer "
19628 "value, with a nonzero value (\"true\") meaning that the corresponding option "
19629 "is enabled, and a zero value (\"false\") meaning that the option is "
19632 "システム全体に対する TCP パラメータの設定には、 I</proc/sys/net/ipv4/> ディレ"
19633 "クトリ内のファイルによりアクセスできる。 さらに、IP に関連する I</proc> イン"
19634 "タフェースのほとんどは TCP についても適用される。 B<ip>(7) を参照のこと。 "
19635 "I<Boolean> は整数値で、 0 以外の値 (\"true\") は対応するオプションが有効、 0 "
19636 "値 (\"false\") は無効、であることを意味する。"
19639 #: build/C/man7/tcp.7:231
19641 msgid "I<tcp_abc> (Integer; default: 0; since Linux 2.6.15)"
19642 msgstr "I<tcp_abc> (Integer; default: 0; Linux 2.6.15 以降)"
19644 #. The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19645 #. type: Plain text
19646 #: build/C/man7/tcp.7:239
19648 "Control the Appropriate Byte Count (ABC), defined in RFC 3465. ABC is a way "
19649 "of increasing the congestion window (I<cwnd>) more slowly in response to "
19650 "partial acknowledgments. Possible values are:"
19652 "RFC 3465 で定義されている Appropriate Byte Count (ABC) を制御する。 ABC は、"
19653 "部分的な ACK に応じた輻輳ウィンドウ (I<cwnd>) の増加をより緩やかにする方法で"
19657 #: build/C/man7/tcp.7:240 build/C/man7/tcp.7:428 build/C/man7/tcp.7:449
19658 #: build/C/man7/tcp.7:593
19663 #. type: Plain text
19664 #: build/C/man7/tcp.7:244
19665 msgid "increase I<cwnd> once per acknowledgment (no ABC)"
19666 msgstr "ACK を受信する毎に I<cwnd> を増やす (ABC なし)。"
19669 #: build/C/man7/tcp.7:244 build/C/man7/tcp.7:430 build/C/man7/tcp.7:456
19670 #: build/C/man7/tcp.7:595
19675 #. type: Plain text
19676 #: build/C/man7/tcp.7:248
19677 msgid "increase I<cwnd> once per acknowledgment of full sized segment"
19678 msgstr "フルサイズのセグメントの ACK を受信する毎に I<cwnd> を増やす。"
19681 #: build/C/man7/tcp.7:248 build/C/man7/tcp.7:432 build/C/man7/tcp.7:463
19682 #: build/C/man7/tcp.7:597
19687 #. type: Plain text
19688 #: build/C/man7/tcp.7:253
19690 "allow increase I<cwnd> by two if acknowledgment is of two segments to "
19691 "compensate for delayed acknowledgments."
19693 "ACK が遅延 ACK (delayed acknowledgment) を相殺するための 2 セグメントに 対す"
19694 "る ACK の場合に、 I<cwnd> を 2 増やすことができる。"
19697 #: build/C/man7/tcp.7:254
19699 msgid "I<tcp_abort_on_overflow> (Boolean; default: disabled; since Linux 2.4)"
19700 msgstr "I<tcp_abort_on_overflow> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
19703 #. type: Plain text
19704 #: build/C/man7/tcp.7:266
19706 "Enable resetting connections if the listening service is too slow and unable "
19707 "to keep up and accept them. It means that if overflow occurred due to a "
19708 "burst, the connection will recover. Enable this option I<only> if you are "
19709 "really sure that the listening daemon cannot be tuned to accept connections "
19710 "faster. Enabling this option can harm the clients of your server."
19712 "接続を待ち受けているサービスが遅すぎて、受信についていけない場合に、 接続をリ"
19713 "セットできるようにする。 これを用いると、バーストによってオーバーフローが起"
19714 "こったときに、 接続を回復できるようになる。このオプションを用いるのは、 受信"
19715 "デーモンを高速化できない場合に「限定する」こと。 このオプションを用いると、そ"
19716 "のサーバに接続しているクライアント にとっては害になることがある。"
19719 #: build/C/man7/tcp.7:266
19721 msgid "I<tcp_adv_win_scale> (integer; default: 2; since Linux 2.4)"
19722 msgstr "I<tcp_adv_win_scale> (integer; default: 2; Linux 2.4 以降)"
19724 #. Since 2.4.0-test7
19725 #. type: Plain text
19726 #: build/C/man7/tcp.7:278
19728 "Count buffering overhead as I<bytes/2^tcp_adv_win_scale>, if "
19729 "I<tcp_adv_win_scale> is greater than 0; or I<bytes-bytes/2^(-"
19730 "tcp_adv_win_scale)>, if I<tcp_adv_win_scale> is less than or equal to zero."
19732 "バッファリングのオーバーヘッドの計算方法を、 I<tcp_adv_win_scale> が正の場合"
19733 "は I<bytes/2^tcp_adv_win_scale> に、 I<tcp_adv_win_scale> が負か 0 の場合は "
19734 "I<bytes-bytes/2^(-tcp_adv_win_scale)> とする。"
19736 #. type: Plain text
19737 #: build/C/man7/tcp.7:291
19739 "The socket receive buffer space is shared between the application and "
19740 "kernel. TCP maintains part of the buffer as the TCP window, this is the "
19741 "size of the receive window advertised to the other end. The rest of the "
19742 "space is used as the \"application\" buffer, used to isolate the network "
19743 "from scheduling and application latencies. The I<tcp_adv_win_scale> default "
19744 "value of 2 implies that the space used for the application buffer is one "
19745 "fourth that of the total."
19747 "ソケットの受信バッファ空間はアプリケーションとカーネルで共有される。 TCP は"
19748 "バッファの一部を TCP ウィンドウとして管理し、 これを受信ウィンドウとして接続"
19749 "の他端に通知する。 空間の残りは「アプリケーション」バッファとして用いられ、 "
19750 "スケジューリングやアプリケーションの遅延からネットワークを隔離する。 "
19751 "I<tcp_adv_win_scale> のデフォルト値は 2 であり、 この場合アプリケーションバッ"
19755 #: build/C/man7/tcp.7:291
19757 msgid "I<tcp_allowed_congestion_control> (String; default: see text; since Linux 2.4.20)"
19758 msgstr "I<tcp_allowed_congestion_control> (String; default: see text; Linux 2.4.20 以降)"
19760 #. The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19761 #. type: Plain text
19762 #: build/C/man7/tcp.7:304
19764 "Show/set the congestion control algorithm choices available to unprivileged "
19765 "processes (see the description of the B<TCP_CONGESTION> socket option). The "
19766 "items in the list are separated by white space and terminated by a newline "
19767 "character. The list is a subset of those listed in "
19768 "I<tcp_available_congestion_control>. The default value for this list is "
19769 "\"reno\" plus the default setting of I<tcp_congestion_control>."
19771 "非特権プロセスで利用できる輻輳制御アルゴリズムの選択肢を表示/設定する "
19772 "(B<TCP_CONGESTION> ソケットオプションの説明を参照のこと)。 このリストの要素は"
19773 "ホワイトスペースで区切られ、改行文字で終端される。 このリストは "
19774 "I<tcp_available_congestion_control> で表示されるリストの部分集合となる。 この"
19775 "リストのデフォルト値は、\"reno\" と I<tcp_congestion_control> のデフォルト設"
19779 #: build/C/man7/tcp.7:304
19781 msgid "I<tcp_autocorking> (Boolean; default: enabled; since Linux 3.14)"
19782 msgstr "I<tcp_autocorking> (ブール値; デフォルト: 有効; Linux 3.14 以降)"
19784 #. commit f54b311142a92ea2e42598e347b84e1655caf8e3
19785 #. Text heavily based on Documentation/networking/ip-sysctl.txt
19786 #. type: Plain text
19787 #: build/C/man7/tcp.7:321
19789 "If this option is enabled, the kernel tries to coalesce small writes (from "
19790 "consecutive B<write>(2) and B<sendmsg>(2) calls) as much as possible, in "
19791 "order to decrease the total number of sent packets. Coalescing is done if "
19792 "at least one prior packet for the flow is waiting in Qdisc queues or device "
19793 "transmit queue. Applications can still use the B<TCP_CORK> socket option to "
19794 "obtain optimal behavior when they know how/when to uncork their sockets."
19795 msgstr "このオプションを有効にすると、 送信総パケット数を減らすため、 カーネルは小さな write (連続する B<write>(2) や B<sendmsg>(2) の呼び出し) を可能な限り結合しようとする。 パケットの結合が行われるのは、そのフローの前のパケットが少なくとも一つは qdisc キューかデバイスの送信キューで送信待ちの場合である。 このオプションが有効な場合でも B<TCP_CORK> オプションを使うことができ、アプリケーションがソケットの「コルク解除」(送信待ち状態の解除) をいつどのように行えばよいか分かっている場合には、最適な動作をさせることができる。"
19798 #: build/C/man7/tcp.7:321
19800 msgid "I<tcp_available_congestion_control> (String; read-only; since Linux 2.4.20)"
19801 msgstr "I<tcp_available_congestion_control> (String; read-only; Linux 2.4.20 以降)"
19803 #. The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19804 #. type: Plain text
19805 #: build/C/man7/tcp.7:332
19807 "Show a list of the congestion-control algorithms that are registered. The "
19808 "items in the list are separated by white space and terminated by a newline "
19809 "character. This list is a limiting set for the list in "
19810 "I<tcp_allowed_congestion_control>. More congestion-control algorithms may "
19811 "be available as modules, but not loaded."
19813 "登録されている輻輳制御アルゴリズムのリストを表示する。 このリストの要素はホワ"
19814 "イトスペースで区切られ、改行文字で終端される。 このリストに載っているものだけ"
19815 "が、 I<tcp_allowed_congestion_control> に表示される。 他の輻輳制御アルゴリズ"
19816 "ムがモジュールとして利用可能だが、 モジュールがロードされていないこともある。"
19819 #: build/C/man7/tcp.7:332
19821 msgid "I<tcp_app_win> (integer; default: 31; since Linux 2.4)"
19822 msgstr "I<tcp_app_win> (integer; default: 31; Linux 2.4 以降)"
19824 #. Since 2.4.0-test7
19825 #. type: Plain text
19826 #: build/C/man7/tcp.7:337
19828 "This variable defines how many bytes of the TCP window are reserved for "
19829 "buffering overhead."
19831 "この変数は、TCP ウィンドウの何バイト分を バッファリングのオーバーヘッド用に予"
19834 #. The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19835 #. type: Plain text
19836 #: build/C/man7/tcp.7:343
19838 "A maximum of (I<window/2^tcp_app_win>, mss) bytes in the window are reserved "
19839 "for the application buffer. A value of 0 implies that no amount is reserved."
19841 "そのウィンドウの I<window/2^tcp_app_win> と mss の大きいほう (バイト単位) が"
19842 "アプリケーションバッファとして予約される。 0 を指定すると一切予約領域を取らな"
19846 #: build/C/man7/tcp.7:343
19848 msgid "I<tcp_base_mss> (Integer; default: 512; since Linux 2.6.17)"
19849 msgstr "I<tcp_base_mss> (Integer; default: 512; Linux 2.6.17 以降)"
19851 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
19852 #. type: Plain text
19853 #: build/C/man7/tcp.7:352
19855 "The initial value of I<search_low> to be used by the packetization layer "
19856 "Path MTU discovery (MTU probing). If MTU probing is enabled, this is the "
19857 "initial MSS used by the connection."
19859 "パケット化レイヤの Path MTU discovery (MTU probing) で、 I<search_low> の初期"
19860 "値と使用される値。 MTU probing が有効な場合、この値はその接続の MSS の初期値"
19864 #: build/C/man7/tcp.7:352
19866 msgid "I<tcp_bic> (Boolean; default: disabled; Linux 2.4.27/2.6.6 to 2.6.13)"
19867 msgstr "I<tcp_bic> (ブール値; デフォルト: 無効; Linux 2.4.27/2.6.6 から 2.6.13 まで)"
19869 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
19870 #. type: Plain text
19871 #: build/C/man7/tcp.7:366
19873 "Enable BIC TCP congestion control algorithm. BIC-TCP is a sender-side only "
19874 "change that ensures a linear RTT fairness under large windows while offering "
19875 "both scalability and bounded TCP-friendliness. The protocol combines two "
19876 "schemes called additive increase and binary search increase. When the "
19877 "congestion window is large, additive increase with a large increment ensures "
19878 "linear RTT fairness as well as good scalability. Under small congestion "
19879 "windows, binary search increase provides TCP friendliness."
19881 "BIC TCP 輻輳制御アルゴリズムを有効にする。 BIC-TCP は送信側のみの変更で、 ス"
19882 "ケーラビリティと TCP 親和性 (friendliness) の両方を提供しつつ、 大きなウィン"
19883 "ドウの下での線形な RTT 公平性を保証するものである。 このプロトコルでは "
19884 "additive increase (追加的な増加) と binary search increase (二分探索増加) と"
19885 "いわれる二つの仕組みを 組み合わせている。輻輳ウィンドウが大きいときは、増分の"
19886 "大きい additive increase により、スケーラビリティを確保しながら 線形な RTT 公"
19887 "平性を保証する。 輻輳ウィンドウが小さいときには binary search increase によ"
19888 "り TCP 親和性を達成している。"
19891 #: build/C/man7/tcp.7:366
19893 msgid "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 to 2.6.13)"
19894 msgstr "I<tcp_bic_low_window> (integer; default: 14; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
19896 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
19897 #. type: Plain text
19898 #: build/C/man7/tcp.7:373
19900 "Set the threshold window (in packets) where BIC TCP starts to adjust the "
19901 "congestion window. Below this threshold BIC TCP behaves the same as the "
19902 "default TCP Reno."
19904 "BIC TCP が輻輳ウィンドウの調整を開始する閾値ウィンドウ (パケット単位) を設定"
19905 "する。この閾値を下回る場合、BIC TCP はデフォルトの TCP Reno と 同じ動作をす"
19909 #: build/C/man7/tcp.7:373
19911 msgid "I<tcp_bic_fast_convergence> (Boolean; default: enabled; Linux 2.4.27/2.6.6 to 2.6.13)"
19912 msgstr "I<tcp_bic_fast_convergence> (ブール値; デフォルト: 有効; Linux 2.4.27/2.6.6 以降 2.6.13 まで)"
19914 #. type: Plain text
19915 #: build/C/man7/tcp.7:377
19917 "Force BIC TCP to more quickly respond to changes in congestion window. "
19918 "Allows two flows sharing the same connection to converge more rapidly."
19920 "BIC TCP が輻輳ウィンドウの変化により速く反応するようにする。 同じコネクション"
19921 "を共有する二つのフローが一つにまとまるのを より速く行うようにする。"
19924 #: build/C/man7/tcp.7:377
19926 msgid "I<tcp_congestion_control> (String; default: see text; since Linux 2.4.13)"
19927 msgstr "I<tcp_congestion_control> (String; default: 説明参照; Linux 2.4.13 以降)"
19929 #. The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
19930 #. type: Plain text
19931 #: build/C/man7/tcp.7:384
19933 "Set the default congestion-control algorithm to be used for new "
19934 "connections. The algorithm \"reno\" is always available, but additional "
19935 "choices may be available depending on kernel configuration. The default "
19936 "value for this file is set as part of kernel configuration."
19938 "新規の接続で使用されるデフォルトの輻輳制御アルゴリズムを設定する。 \"reno\" "
19939 "アルゴリズムは常に利用可能だが、 カーネル設定次第では別の選択肢が利用できるこ"
19940 "ともある。 このファイルのデフォルト値はカーネル設定の一つとして設定される。"
19943 #: build/C/man7/tcp.7:384
19945 msgid "I<tcp_dma_copybreak> (integer; default: 4096; since Linux 2.6.24)"
19946 msgstr "I<tcp_dma_copybreak> (integer; default: 4096; Linux 2.6.24 以降)"
19948 #. type: Plain text
19949 #: build/C/man7/tcp.7:391
19951 "Lower limit, in bytes, of the size of socket reads that will be offloaded to "
19952 "a DMA copy engine, if one is present in the system and the kernel was "
19953 "configured with the B<CONFIG_NET_DMA> option."
19955 "システムに DMA コピーエンジンが存在し、カーネルで B<CONFIG_NET_DMA> オプショ"
19956 "ンが有効になっている場合に、 DMA コピーエンジンにオフロードされるソケットの読"
19957 "み込みサイズの下限値 (バイト単位)。"
19960 #: build/C/man7/tcp.7:391
19962 msgid "I<tcp_dsack> (Boolean; default: enabled; since Linux 2.4)"
19963 msgstr "I<tcp_dsack> (ブール値; デフォルト: 有効; Linux 2.4 以降)"
19965 #. Since 2.4.0-test7
19966 #. type: Plain text
19967 #: build/C/man7/tcp.7:395
19968 msgid "Enable RFC\\ 2883 TCP Duplicate SACK support."
19969 msgstr "RFC\\ 2883 の TCP Duplicate SACK のサポートを有効にする。"
19972 #: build/C/man7/tcp.7:395
19974 msgid "I<tcp_ecn> (Boolean; default: disabled; since Linux 2.4)"
19975 msgstr "I<tcp_ecn> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
19977 #. Since 2.4.0-test7
19978 #. type: Plain text
19979 #: build/C/man7/tcp.7:402
19981 "Enable RFC\\ 2884 Explicit Congestion Notification. When enabled, "
19982 "connectivity to some destinations could be affected due to older, "
19983 "misbehaving routers along the path causing connections to be dropped."
19985 "RFC\\ 2884 の Explicit Congestion Notification を有効にする。 これを有効にす"
19986 "ると、間違った振舞いをする古いルータが 経路の途中にあるような接続先に対して影"
19987 "響が生じ、 場合によっては接続が落ちるかもしれない。"
19990 #: build/C/man7/tcp.7:402
19992 msgid "I<tcp_fack> (Boolean; default: enabled; since Linux 2.2)"
19993 msgstr "I<tcp_fack> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
19996 #. type: Plain text
19997 #: build/C/man7/tcp.7:406
19998 msgid "Enable TCP Forward Acknowledgement support."
19999 msgstr "TCP Forward Acknowledgement のサポートを有効にする。"
20002 #: build/C/man7/tcp.7:406
20004 msgid "I<tcp_fin_timeout> (integer; default: 60; since Linux 2.2)"
20005 msgstr "I<tcp_fin_timeout> (integer; default: 60; Linux 2.2 以降)"
20008 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20009 #. type: Plain text
20010 #: build/C/man7/tcp.7:416
20012 "This specifies how many seconds to wait for a final FIN packet before the "
20013 "socket is forcibly closed. This is strictly a violation of the TCP "
20014 "specification, but required to prevent denial-of-service attacks. In Linux "
20015 "2.2, the default value was 180."
20017 "ソケットを強制的にクローズする前に、 最後の FIN パケットを待つ時間を秒単位で"
20018 "指定する。 これは厳密には TCP の仕様を満たしていないが、 DoS 攻撃 (denial of "
20019 "service attack) から身を守るために必要である。 Linux 2.2 ではデフォルト値は "
20023 #: build/C/man7/tcp.7:416
20025 msgid "I<tcp_frto> (integer; default: 0; since Linux 2.4.21/2.6)"
20026 msgstr "I<tcp_frto> (integer; default: 0; Linux 2.4.21/2.6 以降)"
20028 #. Since 2.4.21/2.5.43
20029 #. type: Plain text
20030 #: build/C/man7/tcp.7:425
20032 "Enable F-RTO, an enhanced recovery algorithm for TCP retransmission timeouts "
20033 "(RTOs). It is particularly beneficial in wireless environments where packet "
20034 "loss is typically due to random radio interference rather than intermediate "
20035 "router congestion. See RFC 4138 for more details."
20037 "F-RTO を有効にする。F-RTO は TCP 再送タイムアウト (RTO) からの 復旧性能を向上"
20038 "させたアルゴリズムである。 この機能は無線環境で特に効果を発揮する。 無線環境"
20039 "では、通常は、中間ルータの輻輳ではなくランダムな無線の干渉 によりパケットロス"
20040 "が発生する。 詳細は RFC\\ 4138 を参照。"
20042 #. type: Plain text
20043 #: build/C/man7/tcp.7:427
20044 msgid "This file can have one of the following values:"
20045 msgstr "このファイルは以下のいずれかの値を取ることができる。"
20047 #. type: Plain text
20048 #: build/C/man7/tcp.7:430
20050 msgstr "F-RTO を無効にする。"
20052 #. type: Plain text
20053 #: build/C/man7/tcp.7:432
20054 msgid "The basic version F-RTO algorithm is enabled."
20055 msgstr "基本版の F-RTO アルゴリズムを有効にする。"
20057 #. type: Plain text
20058 #: build/C/man7/tcp.7:437
20060 "Enable SACK-enhanced F-RTO if flow uses SACK. The basic version can be used "
20061 "also when SACK is in use though in that case scenario(s) exists where F-RTO "
20062 "interacts badly with the packet counting of the SACK-enabled TCP flow."
20064 "そのフローで SACK を使用する場合、SACK 拡張版の F-RTO を有効にする。 基本版"
20065 "の F-RTO も SACK が使用されている場合にも使用できるが、 基本版の場合には F-"
20066 "RTO が SACK が有効になった TCP フローでの パケット数計測と、相性が悪く相互干"
20069 #. type: Plain text
20070 #: build/C/man7/tcp.7:441
20072 "Before Linux 2.6.22, this parameter was a Boolean value, supporting just "
20073 "values 0 and 1 above."
20075 "Linu 2.6.22 より前では、このパラメータはブール値であり、 上記の 0 と 1 のみを"
20079 #: build/C/man7/tcp.7:441
20081 msgid "I<tcp_frto_response> (integer; default: 0; since Linux 2.6.22)"
20082 msgstr "I<tcp_frto_response> (integer; default: 0; Linux 2.6.22 以降)"
20084 #. type: Plain text
20085 #: build/C/man7/tcp.7:448
20087 "When F-RTO has detected that a TCP retransmission timeout was spurious (i.e, "
20088 "the timeout would have been avoided had TCP set a longer retransmission "
20089 "timeout), TCP has several options concerning what to do next. Possible "
20092 "F-RTO が TCP 再送タイムアウトが偽物だと検出した場合 (つまり、TCP がもっと長い"
20093 "再送タイムアウトを設定していれば タイムアウトが避けられた場合)、 次にどうする"
20094 "かに関して選択肢がいくつかある。 以下の値を選択できる。"
20096 #. type: Plain text
20097 #: build/C/man7/tcp.7:456
20099 "Rate halving based; a smooth and conservative response, results in halved "
20100 "congestion window (I<cwnd>) and slow-start threshold (I<ssthresh>) after "
20103 "レートを元の半分にする。 滑らかで、保守的な反応を行い、RTT 1回分の時間後に 輻"
20104 "輳ウィンドウ (I<cwnd>) とスロースタートの閾値 (I<ssthresh>) が半分になる。"
20106 #. type: Plain text
20107 #: build/C/man7/tcp.7:463
20109 "Very conservative response; not recommended because even though being valid, "
20110 "it interacts poorly with the rest of Linux TCP; halves I<cwnd> and "
20111 "I<ssthresh> immediately."
20113 "非常に保守的な反応。このオプションの使用は推奨されない。 反応が正しかった場合"
20114 "であっても、Linux TCP の他の部分と うまく連携できないからである。 I<cwnd> と "
20115 "I<ssthresh> は直ちに半分にされる。"
20117 #. type: Plain text
20118 #: build/C/man7/tcp.7:472
20120 "Aggressive response; undoes congestion-control measures that are now known "
20121 "to be unnecessary (ignoring the possibility of a lost retransmission that "
20122 "would require TCP to be more cautious); I<cwnd> and I<ssthresh> are restored "
20123 "to the values prior to timeout."
20125 "積極的な反応。 不要と判明した輻輳制御の測定情報を取り消す (TCP がもっと注意深"
20126 "く扱うべき再送が失われる可能性を無視する)。 。 I<cwnd> と I<ssthresh> はタイ"
20130 #: build/C/man7/tcp.7:473
20132 msgid "I<tcp_keepalive_intvl> (integer; default: 75; since Linux 2.4)"
20133 msgstr "I<tcp_keepalive_intvl> (integer; default: 75; Linux 2.4 以降)"
20136 #. type: Plain text
20137 #: build/C/man7/tcp.7:477
20138 msgid "The number of seconds between TCP keep-alive probes."
20139 msgstr "TCP keep-alive のプローブを送る間隔 (秒単位)。"
20142 #: build/C/man7/tcp.7:477
20144 msgid "I<tcp_keepalive_probes> (integer; default: 9; since Linux 2.2)"
20145 msgstr "I<tcp_keepalive_probes> (integer; default: 9; Linux 2.2 以降)"
20148 #. type: Plain text
20149 #: build/C/man7/tcp.7:483
20151 "The maximum number of TCP keep-alive probes to send before giving up and "
20152 "killing the connection if no response is obtained from the other end."
20154 "TCP keep-alive プローブの最大回数。 この回数だけ試しても接続先から反応が得ら"
20155 "れない場合は、 あきらめて接続を切断する。"
20158 #: build/C/man7/tcp.7:483
20160 msgid "I<tcp_keepalive_time> (integer; default: 7200; since Linux 2.2)"
20161 msgstr "I<tcp_keepalive_time> (integer; default: 7200; Linux 2.2 以降)"
20164 #. type: Plain text
20165 #: build/C/man7/tcp.7:495
20167 "The number of seconds a connection needs to be idle before TCP begins "
20168 "sending out keep-alive probes. Keep-alives are sent only when the "
20169 "B<SO_KEEPALIVE> socket option is enabled. The default value is 7200 seconds "
20170 "(2 hours). An idle connection is terminated after approximately an "
20171 "additional 11 minutes (9 probes an interval of 75 seconds apart) when keep-"
20172 "alive is enabled."
20174 "接続がアイドル状態になってから、keep-alive プローブを送信するまでの時間を秒単"
20175 "位で指定する。 B<SO_KEEPALIVE> ソケットオプションが有効になっている場合のみ "
20176 "keep-alive は送信される。 デフォルト値は 7200 秒 (2 時間)。 keep-alive が有効"
20177 "になっている場合、 さらにおよそ 11 分 (75 秒間隔の 9 プローブ分) 経過すると"
20178 "アイドル状態の接続は終了させられる。"
20180 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20181 #. type: Plain text
20182 #: build/C/man7/tcp.7:500
20184 "Note that underlying connection tracking mechanisms and application timeouts "
20185 "may be much shorter."
20187 "下層にある接続追跡機構やアプリケーションでのタイムアウトは、 もっとずっと短い"
20191 #: build/C/man7/tcp.7:500
20193 msgid "I<tcp_low_latency> (Boolean; default: disabled; since Linux 2.4.21/2.6)"
20194 msgstr "I<tcp_low_latency> (ブール値; デフォルト: 無効; Linux 2.4.21/2.6 以降)"
20196 #. Since 2.4.21/2.5.60
20197 #. type: Plain text
20198 #: build/C/man7/tcp.7:508
20200 "If enabled, the TCP stack makes decisions that prefer lower latency as "
20201 "opposed to higher throughput. It this option is disabled, then higher "
20202 "throughput is preferred. An example of an application where this default "
20203 "should be changed would be a Beowulf compute cluster."
20205 "有効にすると、TCP スタックはスループットを高くするよりも 遅延を少なくすること"
20206 "を優先して判断を行う。 このオプションを無効にすると、スループットを高くするこ"
20207 "とが優先される。 このデフォルト値を変更した方がよいアプリケーションの例として"
20208 "は Beowulf コンピュータクラスタが挙げられるだろう。"
20211 #: build/C/man7/tcp.7:508
20213 msgid "I<tcp_max_orphans> (integer; default: see below; since Linux 2.4)"
20214 msgstr "I<tcp_max_orphans> (integer; default: see below; Linux 2.4 以降)"
20217 #. type: Plain text
20218 #: build/C/man7/tcp.7:522
20220 "The maximum number of orphaned (not attached to any user file handle) TCP "
20221 "sockets allowed in the system. When this number is exceeded, the orphaned "
20222 "connection is reset and a warning is printed. This limit exists only to "
20223 "prevent simple denial-of-service attacks. Lowering this limit is not "
20224 "recommended. Network conditions might require you to increase the number of "
20225 "orphans allowed, but note that each orphan can eat up to ~64K of unswappable "
20226 "memory. The default initial value is set equal to the kernel parameter "
20227 "NR_FILE. This initial default is adjusted depending on the memory in the "
20230 "システムが許容する、 orphan な (どのユーザファイルハンドルにもアタッチされて"
20231 "いない) TCP ソケットの最大数。 この数を越えると、orphan な接続はリセットさ"
20232 "れ、警告が表示される。 この制限が存在するのは、単純な使用不能 (denial-of-"
20233 "service) 攻撃を 防ぐために過ぎない。この値を小さくすることは推奨しない。 ネッ"
20234 "トワークの条件によっては、この数値を大きくしないといけないかもしれないが、 "
20235 "orphan なソケットひとつあたり 64K 程度のスワップ不可能なメモリを消費すること"
20236 "も注意せよ。 デフォルトの初期値はカーネルパラメータの NR_FILE と等しい。 この"
20237 "初期デフォルト値はシステムのメモリに応じて調整される。"
20240 #: build/C/man7/tcp.7:522
20242 msgid "I<tcp_max_syn_backlog> (integer; default: see below; since Linux 2.2)"
20243 msgstr "I<tcp_max_syn_backlog> (integer; default: 下記参照; Linux 2.2 以降)"
20246 #. type: Plain text
20247 #: build/C/man7/tcp.7:539
20249 "The maximum number of queued connection requests which have still not "
20250 "received an acknowledgement from the connecting client. If this number is "
20251 "exceeded, the kernel will begin dropping requests. The default value of 256 "
20252 "is increased to 1024 when the memory present in the system is adequate or "
20253 "greater (E<gt>= 128Mb), and reduced to 128 for those systems with very low "
20254 "memory (E<lt>= 32Mb). It is recommended that if this needs to be increased "
20255 "above 1024, TCP_SYNQ_HSIZE in I<include/net/tcp.h> be modified to keep "
20256 "TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog, and the kernel be recompiled."
20258 "接続してきているクライアントから ack を受信していない状態の接続リクエストを"
20259 "キューに置ける最大数。 この数値を越えると、カーネルはリクエストを捨て始め"
20260 "る。 デフォルトの値は 256 で、 システムに充分なメモリがある (128Mb 以上) 場合"
20261 "は 1024 になり、 メモリが非常に少ない場合 (32 Mb 以下) は 128 になる。 この数"
20262 "値を 1024 以上に増やしたい場合は、 I<include/net/tcp.h> の TCP_SYNQ_HSIZE を "
20263 "TCP_SYNQ_HSIZE*16E<lt>=tcp_max_syn_backlog のように修正し、 カーネルを再コン"
20267 #: build/C/man7/tcp.7:539
20269 msgid "I<tcp_max_tw_buckets> (integer; default: see below; since Linux 2.4)"
20270 msgstr "I<tcp_max_tw_buckets> (integer; default: 下記参照; Linux 2.4 以降)"
20273 #. type: Plain text
20274 #: build/C/man7/tcp.7:549
20276 "The maximum number of sockets in TIME_WAIT state allowed in the system. "
20277 "This limit exists only to prevent simple denial-of-service attacks. The "
20278 "default value of NR_FILE*2 is adjusted depending on the memory in the "
20279 "system. If this number is exceeded, the socket is closed and a warning is "
20282 "システムが許容する TIME_WAIT 状態にあるソケットの最大数。 この制限が存在する"
20283 "のは、 単純な使用不能 (denial-of-service) 攻撃を防ぐために過ぎない。 デフォル"
20284 "ト値は NR_FILE*2 で、システムのメモリに応じて調整される。 この数値を越える"
20285 "と、そのようなソケットはクローズされ、警告が表示される。"
20288 #: build/C/man7/tcp.7:549
20290 msgid "I<tcp_moderate_rcvbuf> (Boolean; default: enabled; since Linux 2.4.17/2.6.7)"
20291 msgstr "I<tcp_moderate_rcvbuf> (ブール値; デフォルト: 有効; Linux 2.4.17/2.6.7 以降)"
20293 #. The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20294 #. type: Plain text
20295 #: build/C/man7/tcp.7:556
20297 "If enabled, TCP performs receive buffer auto-tuning, attempting to "
20298 "automatically size the buffer (no greater than I<tcp_rmem[2]>) to match the "
20299 "size required by the path for full throughput."
20301 "有効にすると、TCP は受信バッファの自動調整を行う。 具体的には、 (I<tcp_rmem"
20302 "[2]> を超えない範囲で) バッファの大きさを自動的に変化させ、 その経路で最大の"
20303 "スループットを達成するのに必要な大きさに合わせようとする。"
20306 #: build/C/man7/tcp.7:556
20308 msgid "I<tcp_mem> (since Linux 2.4)"
20309 msgstr "I<tcp_mem> (Linux 2.4 以降)"
20311 #. Since 2.4.0-test7
20312 #. type: Plain text
20313 #: build/C/man7/tcp.7:568
20315 "This is a vector of 3 integers: [low, pressure, high]. These bounds, "
20316 "measured in units of the system page size, are used by TCP to track its "
20317 "memory usage. The defaults are calculated at boot time from the amount of "
20318 "available memory. (TCP can only use I<low memory> for this, which is "
20319 "limited to around 900 megabytes on 32-bit systems. 64-bit systems do not "
20320 "suffer this limitation.)"
20322 "これは 3 つの整数 [low, pressure, high] からなるベクトル値である。 これらは "
20323 "TCP がメモリ使用量を追跡するために用いられる (使用量はシステムのページサイズ"
20324 "単位で計測される)。 デフォルトはブート時に利用できるメモリの量から計算され"
20325 "る。 (実際には、TCP は I<low memory> のみを使用する。値は 32ビットシステムで"
20326 "は約 900 メガバイトに制限される。 64 ビットシステムではこの制限はない。)"
20329 #: build/C/man7/tcp.7:569
20334 #. type: Plain text
20335 #: build/C/man7/tcp.7:573
20337 "TCP doesn't regulate its memory allocation when the number of pages it has "
20338 "allocated globally is below this number."
20340 "TCP は、グローバルにアロケートしたページがこの数値以下の場合は、 メモリアロ"
20344 #: build/C/man7/tcp.7:573 build/C/man7/udp.7:151
20346 msgid "I<pressure>"
20347 msgstr "I<pressure>"
20349 #. type: Plain text
20350 #: build/C/man7/tcp.7:582
20352 "When the amount of memory allocated by TCP exceeds this number of pages, TCP "
20353 "moderates its memory consumption. This memory pressure state is exited once "
20354 "the number of pages allocated falls below the I<low> mark."
20356 "TCP がアロケートしたメモリがこの数値分のページ数を越えると、 TCP はメモリ消費"
20357 "を抑えるようになる。 アロケートしたページ数が I<low> 以下になると、このメモリ"
20361 #: build/C/man7/tcp.7:582
20366 #. type: Plain text
20367 #: build/C/man7/tcp.7:586
20369 "The maximum number of pages, globally, that TCP will allocate. This value "
20370 "overrides any other limits imposed by the kernel."
20372 "TCP がグローバルに割り当てるページ数の最大値。 この値はカーネルによって課され"
20376 #: build/C/man7/tcp.7:587
20378 msgid "I<tcp_mtu_probing> (integer; default: 0; since Linux 2.6.17)"
20379 msgstr "I<tcp_mtu_probing> (integer; default: 0; Linux 2.6.17 以降)"
20381 #. The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20382 #. type: Plain text
20383 #: build/C/man7/tcp.7:592
20385 "This parameter controls TCP Packetization-Layer Path MTU Discovery. The "
20386 "following values may be assigned to the file:"
20388 "このパラメータは、TCP のパケット化レイヤの Path MTU discovery を制御する。 こ"
20389 "のファイルには以下の値を設定できる。"
20391 #. type: Plain text
20392 #: build/C/man7/tcp.7:595
20396 #. type: Plain text
20397 #: build/C/man7/tcp.7:597
20398 msgid "Disabled by default, enabled when an ICMP black hole detected"
20400 "デフォルトでは無効だが、ICMP ブラックホールが検出された場合は有効にする。"
20402 #. type: Plain text
20403 #: build/C/man7/tcp.7:600
20404 msgid "Always enabled, use initial MSS of I<tcp_base_mss>."
20405 msgstr "常に有効にする。 MSS の初期値として I<tcp_base_mss> が使用される。"
20408 #: build/C/man7/tcp.7:601
20410 msgid "I<tcp_no_metrics_save> (Boolean; default: disabled; since Linux 2.6.6)"
20411 msgstr "I<tcp_no_metrics_save> (ブール値; デフォルト: 無効; Linux 2.6.6 以降)"
20413 #. The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20414 #. type: Plain text
20415 #: build/C/man7/tcp.7:612
20417 "By default, TCP saves various connection metrics in the route cache when the "
20418 "connection closes, so that connections established in the near future can "
20419 "use these to set initial conditions. Usually, this increases overall "
20420 "performance, but it may sometimes cause performance degradation. If "
20421 "I<tcp_no_metrics_save> is enabled, TCP will not cache metrics on closing "
20424 "デフォルトでは、TCP は接続クローズ時に各種の接続パラメータを ルートキャッ"
20425 "シュ (route cache) に保存し、近い将来に接続が確立された際に これらの情報を初"
20426 "期状態として使用できるようになっている。 通常は、これにより全体として性能が向"
20427 "上するが、 時として性能の劣化を引き起こすこともある。 I<tcp_no_metrics_save> "
20428 "を有効にすると、TCP は接続クローズ時に接続パラメータをキャッシュ しなくなる。"
20431 #: build/C/man7/tcp.7:612
20433 msgid "I<tcp_orphan_retries> (integer; default: 8; since Linux 2.4)"
20434 msgstr "I<tcp_orphan_retries> (integer; default: 8; Linux 2.4 以降)"
20437 #. type: Plain text
20438 #: build/C/man7/tcp.7:617
20440 "The maximum number of attempts made to probe the other end of a connection "
20441 "which has been closed by our end."
20442 msgstr "こちらからクローズした接続について、 先方をプローブする最大試行数。"
20445 #: build/C/man7/tcp.7:617
20447 msgid "I<tcp_reordering> (integer; default: 3; since Linux 2.4)"
20448 msgstr "I<tcp_reordering> (integer; default: 3; Linux 2.4 以降)"
20450 #. Since 2.4.0-test7
20451 #. type: Plain text
20452 #: build/C/man7/tcp.7:626
20454 "The maximum a packet can be reordered in a TCP packet stream without TCP "
20455 "assuming packet loss and going into slow start. It is not advisable to "
20456 "change this number. This is a packet reordering detection metric designed "
20457 "to minimize unnecessary back off and retransmits provoked by reordering of "
20458 "packets on a connection."
20460 "TCP パケットストリームでパケット順序の逆転が発生しただけであり、 パケットロス"
20461 "が起こったとはみなさない、パケット数の最大値。 この値を超えてパケットの順序逆"
20462 "転が起こると、パケットロスが生じたと みなし、slow start に入る。 この数値は変"
20463 "更しないほうが良い。 これは、接続中のパケットの並び替えによって生じる 不必要"
20464 "な速度低下や再送を最小化するように設計された、 パケット並び替え (packet "
20465 "reordering) の検知メトリックなのである。"
20468 #: build/C/man7/tcp.7:626
20470 msgid "I<tcp_retrans_collapse> (Boolean; default: enabled; since Linux 2.2)"
20471 msgstr "I<tcp_retrans_collapse> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
20474 #. type: Plain text
20475 #: build/C/man7/tcp.7:630
20476 msgid "Try to send full-sized packets during retransmit."
20477 msgstr "再送の際にフルサイズのパケットを送ろうとする。"
20480 #: build/C/man7/tcp.7:630
20482 msgid "I<tcp_retries1> (integer; default: 3; since Linux 2.2)"
20483 msgstr "I<tcp_retries1> (integer; default: 3; Linux 2.2 以降)"
20486 #. type: Plain text
20487 #: build/C/man7/tcp.7:640
20489 "The number of times TCP will attempt to retransmit a packet on an "
20490 "established connection normally, without the extra effort of getting the "
20491 "network layers involved. Once we exceed this number of retransmits, we "
20492 "first have the network layer update the route if possible before each new "
20493 "retransmit. The default is the RFC specified minimum of 3."
20495 "普通に確立されている接続上に、 TCP がネットワーク層を巻き込まずに再送を試みる"
20496 "回数。 再送がこの回数を越えると、まず最初に、 新しい再送を送る前に可能なら"
20497 "ネットワーク層に経路を更新させる。 デフォルトは RFC が指定している最少数であ"
20501 #: build/C/man7/tcp.7:640
20503 msgid "I<tcp_retries2> (integer; default: 15; since Linux 2.2)"
20504 msgstr "I<tcp_retries2> (integer; default: 15; Linux 2.2 以降)"
20507 #. type: Plain text
20508 #: build/C/man7/tcp.7:650
20510 "The maximum number of times a TCP packet is retransmitted in established "
20511 "state before giving up. The default value is 15, which corresponds to a "
20512 "duration of approximately between 13 to 30 minutes, depending on the "
20513 "retransmission timeout. The RFC\\ 1122 specified minimum limit of 100 "
20514 "seconds is typically deemed too short."
20516 "確立状態の接続に、この回数 TCP パケットの再送信を 行なってもだめな場合はあき"
20517 "らめる。 デフォルト値は 15 で、これは (再送のタイムアウトに依存するが) およ"
20518 "そ 13〜30 分程度の期間に対応する。 RFC\\ 1122 は最小の限界を 100 秒と置いてい"
20519 "るが、 これはたいていの場合には短すぎると思われる。"
20522 #: build/C/man7/tcp.7:650
20524 msgid "I<tcp_rfc1337> (Boolean; default: disabled; since Linux 2.2)"
20525 msgstr "I<tcp_rfc1337> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
20528 #. type: Plain text
20529 #: build/C/man7/tcp.7:658
20531 "Enable TCP behavior conformant with RFC\\ 1337. When disabled, if a RST is "
20532 "received in TIME_WAIT state, we close the socket immediately without waiting "
20533 "for the end of the TIME_WAIT period."
20535 "TCP の動作を RFC\\ 1337 に準拠させる。 無効にすると、TIME_WAIT 状態のときに "
20536 "RST が受信された場合、 TIME_WAIT 期間の終了を待たずにそのソケットを直ちにク"
20540 #: build/C/man7/tcp.7:658
20542 msgid "I<tcp_rmem> (since Linux 2.4)"
20543 msgstr "I<tcp_rmem> (Linux 2.4 以降)"
20545 #. Since 2.4.0-test7
20546 #. type: Plain text
20547 #: build/C/man7/tcp.7:666
20549 "This is a vector of 3 integers: [min, default, max]. These parameters are "
20550 "used by TCP to regulate receive buffer sizes. TCP dynamically adjusts the "
20551 "size of the receive buffer from the defaults listed below, in the range of "
20552 "these values, depending on memory available in the system."
20554 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
20555 "TCP が受信バッファサイズを調整するために用いられる。 TCP は、システムで利用で"
20556 "きるメモリに応じて、 受信バッファのサイズをこれらの変数の範囲で 以下に示すデ"
20560 #: build/C/man7/tcp.7:667 build/C/man7/tcp.7:843 build/C/man7/udp.7:145
20565 #. type: Plain text
20566 #: build/C/man7/tcp.7:682
20568 "minimum size of the receive buffer used by each TCP socket. The default "
20569 "value is the system page size. (On Linux 2.4, the default value is 4K, "
20570 "lowered to B<PAGE_SIZE> bytes in low-memory systems.) This value is used to "
20571 "ensure that in memory pressure mode, allocations below this size will still "
20572 "succeed. This is not used to bound the size of the receive buffer declared "
20573 "using B<SO_RCVBUF> on a socket."
20575 "各 TCP ソケットが用いる受信バッファの最小サイズ。 デフォルト値はシステムの"
20576 "ページサイズである (Linux 2.4 では、デフォルト値は 4K バイトで、 メモリの少な"
20577 "いシステムでは B<PAGE_SIZE> バイトに減らされる)。 この値は、メモリ圧迫モード"
20578 "においても、 このサイズの割り当てが成功することを保証するために用いられる。 "
20579 "これは、 B<SO_RCVBUF> を用いてソケットの最低受信バッファサイズを宣言する際に"
20583 #: build/C/man7/tcp.7:682 build/C/man7/tcp.7:853
20586 msgstr "I<default>"
20588 #. type: Plain text
20589 #: build/C/man7/tcp.7:696
20591 "the default size of the receive buffer for a TCP socket. This value "
20592 "overwrites the initial default buffer size from the generic global I<net."
20593 "core.rmem_default> defined for all protocols. The default value is 87380 "
20594 "bytes. (On Linux 2.4, this will be lowered to 43689 in low-memory "
20595 "systems.) If larger receive buffer sizes are desired, this value should be "
20596 "increased (to affect all sockets). To employ large TCP windows, the I<net."
20597 "ipv4.tcp_window_scaling> must be enabled (default)."
20599 "TCP ソケットの受信バッファのデフォルトサイズ。 この値は、すべてのプロトコルに"
20600 "対して定義されている、 ジェネリックなグローバルのデフォルトバッファサイズ "
20601 "I<net.core.rmem_default> より優先される。 デフォルト値は 87380 バイトである "
20602 "(Linux 2.4 では、メモリの少ないシステムの場合 43689 まで減らされる)。 大きな"
20603 "受信バッファサイズが必要な場合は、 この値を増やすべきである (すべてのソケット"
20604 "に影響する)。 大きな TCP ウィンドウを用いるには、 I<net.ipv4."
20605 "tcp_window_scaling> を有効にしておかなければならない (デフォルトは有効)。"
20608 #: build/C/man7/tcp.7:696 build/C/man7/tcp.7:867 build/C/man7/udp.7:157
20613 #. type: Plain text
20614 #: build/C/man7/tcp.7:705
20616 "the maximum size of the receive buffer used by each TCP socket. This value "
20617 "does not override the global I<net.core.rmem_max>. This is not used to "
20618 "limit the size of the receive buffer declared using B<SO_RCVBUF> on a "
20619 "socket. The default value is calculated using the formula"
20621 "各 TCP ソケットで用いる受信バッファの最大サイズ。 この値よりもグローバルの "
20622 "I<net.core.rmem_max> が優先される。 これは、 B<SO_RCVBUF> を用いてソケットの"
20623 "受信バッファサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式で"
20626 #. type: Plain text
20627 #: build/C/man7/tcp.7:707
20629 msgid " max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20630 msgstr " max(87380, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20632 #. type: Plain text
20633 #: build/C/man7/tcp.7:710
20635 "(On Linux 2.4, the default is 87380*2 bytes, lowered to 87380 in low-memory "
20638 "(Linux 2.4 では、デフォルト値は 87380*2 バイトで、 メモリの少ないシステムで"
20639 "は 87380 まで減らされる。)"
20642 #: build/C/man7/tcp.7:711
20644 msgid "I<tcp_sack> (Boolean; default: enabled; since Linux 2.2)"
20645 msgstr "I<tcp_sack> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
20648 #. type: Plain text
20649 #: build/C/man7/tcp.7:715
20650 msgid "Enable RFC\\ 2018 TCP Selective Acknowledgements."
20651 msgstr "RFC\\ 2018 の TCP Selective Acknowledgements を有効にする。"
20654 #: build/C/man7/tcp.7:715
20656 msgid "I<tcp_slow_start_after_idle> (Boolean; default: enabled; since Linux 2.6.18)"
20657 msgstr "I<tcp_slow_start_after_idle> (ブール値; デフォルト: 有効; Linux 2.6.18 以降)"
20659 #. The following is from 2.6.28-rc4: Documentation/networking/ip-sysctl.txt
20660 #. type: Plain text
20661 #: build/C/man7/tcp.7:723
20663 "If enabled, provide RFC 2861 behavior and time out the congestion window "
20664 "after an idle period. An idle period is defined as the current RTO "
20665 "(retransmission timeout). If disabled, the congestion window will not be "
20666 "timed out after an idle period."
20668 "有効にすると、RFC 2861 の動作が行われ、 アイドル時間経過後に輻輳ウィンドウを"
20669 "タイムアウトさせる。 アイドル時間は現在の RTO (再送タイムアウト) で定義され"
20670 "る。 無効にすると、輻輳ウィンドウはアイドル時間経過後もタイムアウトされない。"
20673 #: build/C/man7/tcp.7:723
20675 msgid "I<tcp_stdurg> (Boolean; default: disabled; since Linux 2.2)"
20676 msgstr "I<tcp_stdurg> (ブール値; デフォルト: 無効; Linux 2.2 以降)"
20679 #. RFC 793 was ambiguous in its specification of the meaning of the
20680 #. urgent pointer. RFC 1122 (and RFC 961) fixed on a particular
20681 #. resolution of this ambiguity (unfortunately the "wrong" one).
20682 #. type: Plain text
20683 #: build/C/man7/tcp.7:737
20685 "If this option is enabled, then use the RFC\\ 1122 interpretation of the TCP "
20686 "urgent-pointer field. According to this interpretation, the urgent pointer "
20687 "points to the last byte of urgent data. If this option is disabled, then "
20688 "use the BSD-compatible interpretation of the urgent pointer: the urgent "
20689 "pointer points to the first byte after the urgent data. Enabling this "
20690 "option may lead to interoperability problems."
20692 "このオプションを有効にすると、 TCP 緊急ポインタ (urgent-pointer) フィールド"
20693 "を RFC\\ 1122 に従った解釈を行う。 この解釈に従うと、緊急ポインタは緊急データ"
20694 "の最後のバイトを指す。 このオプションを無効にすると、緊急ポインタの解釈が "
20695 "BSD 互換の方法で 行われる: 緊急ポインタは緊急データの後の最初のバイトを指"
20696 "す。 このオプションを有効にすると、相互運用性に問題が生じるかもしれない。"
20699 #: build/C/man7/tcp.7:737
20701 msgid "I<tcp_syn_retries> (integer; default: 5; since Linux 2.2)"
20702 msgstr "I<tcp_syn_retries> (integer; default: 5; Linux 2.2 以降)"
20705 #. type: Plain text
20706 #: build/C/man7/tcp.7:744
20708 "The maximum number of times initial SYNs for an active TCP connection "
20709 "attempt will be retransmitted. This value should not be higher than 255. "
20710 "The default value is 5, which corresponds to approximately 180 seconds."
20712 "アクティブな TCP 接続に初期 SYN の再送を試みる最大回数。 この数値は 255 より"
20713 "も大きくすべきではない。 デフォルトの値は 5 で、およそ 180 秒に対応する。"
20716 #: build/C/man7/tcp.7:744
20718 msgid "I<tcp_synack_retries> (integer; default: 5; since Linux 2.2)"
20719 msgstr "I<tcp_synack_retries> (integer; default: 5; Linux 2.2 以降)"
20722 #. type: Plain text
20723 #: build/C/man7/tcp.7:750
20725 "The maximum number of times a SYN/ACK segment for a passive TCP connection "
20726 "will be retransmitted. This number should not be higher than 255."
20728 "passive な TCP 接続の SYN/ACK セグメントで再送を試みる最大数。 この数値は "
20729 "255 よりも大きくすべきではない。"
20732 #: build/C/man7/tcp.7:750
20734 msgid "I<tcp_syncookies> (Boolean; since Linux 2.2)"
20735 msgstr "I<tcp_syncookies> (Boolean; Linux 2.2 以降)"
20738 #. type: Plain text
20739 #: build/C/man7/tcp.7:770
20741 "Enable TCP syncookies. The kernel must be compiled with "
20742 "B<CONFIG_SYN_COOKIES>. Send out syncookies when the syn backlog queue of a "
20743 "socket overflows. The syncookies feature attempts to protect a socket from "
20744 "a SYN flood attack. This should be used as a last resort, if at all. This "
20745 "is a violation of the TCP protocol, and conflicts with other areas of TCP "
20746 "such as TCP extensions. It can cause problems for clients and relays. It "
20747 "is not recommended as a tuning mechanism for heavily loaded servers to help "
20748 "with overloaded or misconfigured conditions. For recommended alternatives "
20749 "see I<tcp_max_syn_backlog>, I<tcp_synack_retries>, and "
20750 "I<tcp_abort_on_overflow>."
20752 "TCP syncookies を有効にする。カーネルは B<CONFIG_SYNCOOKIES> をつけてコンパイ"
20753 "ルしておかなければならない。 ソケットのバックログキューがオーバーフローする"
20754 "と、 syncookies が送信される。 syncookies 機能は、SYN flood 攻撃からソケット"
20755 "を守ろうとする。 これはいずれにしても、最終手段として用いるべきである。 これ"
20756 "は TCP プロトコルに違反しており、 TCP 拡張のような、TCP の他の部分と衝突して"
20757 "しまう。 クライアントやリレーで問題が起こることもある。 過負荷や設定間違いに"
20758 "よって負荷の大きな状態にあるサーバを調整して救うための 機構とみなすべきではな"
20759 "い。 そのような用途には、代わりに I<tcp_max_syn_backlog>, "
20760 "I<tcp_synack_retries>, I<tcp_abort_on_overflow> などの使用を考えること。"
20763 #: build/C/man7/tcp.7:770
20765 msgid "I<tcp_timestamps> (Boolean; default: enabled; since Linux 2.2)"
20766 msgstr "I<tcp_timestamps> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
20769 #. type: Plain text
20770 #: build/C/man7/tcp.7:774
20771 msgid "Enable RFC\\ 1323 TCP timestamps."
20772 msgstr "RFC\\ 1323 の TCP timestamps を有効にする。"
20775 #: build/C/man7/tcp.7:774
20777 msgid "I<tcp_tso_win_divisor> (integer; default: 3; since Linux 2.6.9)"
20778 msgstr "I<tcp_tso_win_divisor> (integer; default: 3; Linux 2.6.9 以降)"
20780 #. type: Plain text
20781 #: build/C/man7/tcp.7:780
20783 "This parameter controls what percentage of the congestion window can be "
20784 "consumed by a single TCP Segmentation Offload (TSO) frame. The setting of "
20785 "this parameter is a tradeoff between burstiness and building larger TSO "
20788 "このパラメータは、一つの TCP Segmentation Offload (TSO) フレームで 消費できる"
20789 "輻輳ウィンドウの割合 (パーセント) を制御する。 バースト性と、どれだけ大きな "
20790 "TSO フレームを構築するかのはトレードオフであり、 このパラメータはその度合いを"
20794 #: build/C/man7/tcp.7:780
20796 msgid "I<tcp_tw_recycle> (Boolean; default: disabled; since Linux 2.4)"
20797 msgstr "I<tcp_tw_recycle> (ブール値; デフォルト: 無効; Linux 2.4 以降)"
20800 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20801 #. type: Plain text
20802 #: build/C/man7/tcp.7:789
20804 "Enable fast recycling of TIME_WAIT sockets. Enabling this option is not "
20805 "recommended since this causes problems when working with NAT (Network "
20806 "Address Translation)."
20808 "TIME_WAIT ソケットの素早い再利用を有効にする。 このオプションを有効にする"
20809 "と、 NAT (ネットワークアドレス変換) を用いていると問題が生じるので、 あまり推"
20813 #: build/C/man7/tcp.7:789
20815 msgid "I<tcp_tw_reuse> (Boolean; default: disabled; since Linux 2.4.19/2.6)"
20816 msgstr "I<tcp_tw_reuse> (ブール値; デフォルト: 無効; Linux 2.4.19/2.6 以降)"
20818 #. Since 2.4.19/2.5.43
20819 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20820 #. type: Plain text
20821 #: build/C/man7/tcp.7:797
20823 "Allow to reuse TIME_WAIT sockets for new connections when it is safe from "
20824 "protocol viewpoint. It should not be changed without advice/request of "
20825 "technical experts."
20827 "プロトコルの面から見て問題ない場合に新規コネクションに TIME_WAIT 状態のソケッ"
20828 "トを再利用することを許可する。技術的に詳しい人の助言や 要請なしにこのオプショ"
20832 #: build/C/man7/tcp.7:797
20834 msgid "I<tcp_vegas_cong_avoid> (Boolean; default: disabled; Linux 2.2 to 2.6.13)"
20835 msgstr "I<tcp_vegas_cong_avoid> (ブール値; デフォルト: 無効; Linux 2.2 から 2.6.13 まで)"
20837 #. Since 2.1.8; removed in 2.6.13
20838 #. The following is from 2.6.12: Documentation/networking/ip-sysctl.txt
20839 #. type: Plain text
20840 #: build/C/man7/tcp.7:808
20842 "Enable TCP Vegas congestion avoidance algorithm. TCP Vegas is a sender-side "
20843 "only change to TCP that anticipates the onset of congestion by estimating "
20844 "the bandwidth. TCP Vegas adjusts the sending rate by modifying the "
20845 "congestion window. TCP Vegas should provide less packet loss, but it is not "
20846 "as aggressive as TCP Reno."
20848 "TCP Vegas 輻輳制御アルゴリズムを有効にする。 TCP Vegas は帯域を推測することで"
20849 "輻輳の起こり始めを予想するように TCP の送信側のみに変更を加えたものである。 "
20850 "TCP Vegas は輻輳ウィンドウを修正することで、送信レートを調整する。 TCP Vegas "
20851 "は TCP Reno と比べてパケットロスは少ないが、 TCP Reno ほど積極的な挙動はしな"
20855 #: build/C/man7/tcp.7:808
20857 msgid "I<tcp_westwood> (Boolean; default: disabled; Linux 2.4.26/2.6.3 to 2.6.13)"
20858 msgstr "I<tcp_westwood> (ブール値; デフォルト: 無効; Linux 2.4.26/2.6.3 から 2.6.13 まで)"
20860 #. type: Plain text
20861 #: build/C/man7/tcp.7:820
20863 "Enable TCP Westwood+ congestion control algorithm. TCP Westwood+ is a "
20864 "sender-side only modification of the TCP Reno protocol stack that optimizes "
20865 "the performance of TCP congestion control. It is based on end-to-end "
20866 "bandwidth estimation to set congestion window and slow start threshold after "
20867 "a congestion episode. Using this estimation, TCP Westwood+ adaptively sets "
20868 "a slow start threshold and a congestion window which takes into account the "
20869 "bandwidth used at the time congestion is experienced. TCP Westwood+ "
20870 "significantly increases fairness with respect to TCP Reno in wired networks "
20871 "and throughput over wireless links."
20873 "TCP Westwood+ 輻輳制御アルゴリズムを有効にする。 TCP Westwood+ は TCP 輻輳制"
20874 "御の性能を最適化するように TCP Reno の プロトコルスタックの送信側のみに修正を"
20875 "加えたものである。 輻輳が起こった後で、輻輳ウィンドウや slow start の閾値を "
20876 "通信両端間の帯域の推測に基づいて設定する。 この推測を使って、TCP Westwood+ は"
20877 "輻輳が発生した時に使っていた 帯域を考慮に入れた slow start の閾値と輻輳ウィン"
20878 "ドウを設定する。 TCP Westwood+ は、有線ネットワークにおける TCP Reno の公平"
20879 "性 (fairness) と、無線リンクでのスループットを大きく向上する。"
20882 #: build/C/man7/tcp.7:820
20884 msgid "I<tcp_window_scaling> (Boolean; default: enabled; since Linux 2.2)"
20885 msgstr "I<tcp_window_scaling> (ブール値; デフォルト: 有効; Linux 2.2 以降)"
20888 #. type: Plain text
20889 #: build/C/man7/tcp.7:834
20891 "Enable RFC\\ 1323 TCP window scaling. This feature allows the use of a "
20892 "large window (E<gt> 64K) on a TCP connection, should the other end support "
20893 "it. Normally, the 16 bit window length field in the TCP header limits the "
20894 "window size to less than 64K bytes. If larger windows are desired, "
20895 "applications can increase the size of their socket buffers and the window "
20896 "scaling option will be employed. If I<tcp_window_scaling> is disabled, TCP "
20897 "will not negotiate the use of window scaling with the other end during "
20898 "connection setup."
20900 "RFC\\ 1323 の TCP ウィンドウスケーリングを有効にする。 この機能を用いると、接"
20901 "続先が対応していれば、 TCP 接続で大きな (64K 以上の) ウィンドウが使えるように"
20902 "なる。 通常は TCP ヘッダのウインドウ長フィールドは 16 ビットなので、 ウィンド"
20903 "ウサイズは 64K バイト以下に限られる。 もっと大きなウィンドウを使いたい場合"
20904 "は、 アプリケーションはソケットバッファのサイズを増やして、 ウィンドウスケー"
20905 "リングのオプションを利用すればよい。 I<tcp_window_scaling> を無効にしている"
20906 "と、 TCP は他端との接続設定の際に、 ウィンドウスケーリングのネゴシエーション"
20910 #: build/C/man7/tcp.7:834
20912 msgid "I<tcp_wmem> (since Linux 2.4)"
20913 msgstr "I<tcp_wmem> (Linux 2.4 以降)"
20915 #. Since 2.4.0-test7
20916 #. type: Plain text
20917 #: build/C/man7/tcp.7:842
20919 "This is a vector of 3 integers: [min, default, max]. These parameters are "
20920 "used by TCP to regulate send buffer sizes. TCP dynamically adjusts the size "
20921 "of the send buffer from the default values listed below, in the range of "
20922 "these values, depending on memory available."
20924 "これは 3 つの整数 [min, default, max] からなるベクトル値である。 これらは "
20925 "TCP が送信バッファサイズを調整するために用いられる。 TCP は、システムで利用で"
20926 "きるメモリに応じて、送信バッファのサイズを これらの変数の範囲で以下に示すデ"
20929 #. type: Plain text
20930 #: build/C/man7/tcp.7:853
20932 "Minimum size of the send buffer used by each TCP socket. The default value "
20933 "is the system page size. (On Linux 2.4, the default value is 4K bytes.) "
20934 "This value is used to ensure that in memory pressure mode, allocations below "
20935 "this size will still succeed. This is not used to bound the size of the "
20936 "send buffer declared using B<SO_SNDBUF> on a socket."
20938 "各 TCP ソケットが用いる送信バッファの最小サイズ。 デフォルト値はシステムの"
20939 "ページサイズである (Linux 2.4 では、デフォルト値は 4K である)。 この値は、メ"
20940 "モリ圧迫モードにおいても、 このサイズ以下の割り当てが成功することを保証するた"
20941 "めに用いられる。 これは、 B<SO_SNDBUF> を用いてソケットの最低送信バッファサイ"
20944 #. True in Linux 2.4 and 2.6
20945 #. type: Plain text
20946 #: build/C/man7/tcp.7:867
20948 "The default size of the send buffer for a TCP socket. This value overwrites "
20949 "the initial default buffer size from the generic global I</proc/sys/net/core/"
20950 "wmem_default> defined for all protocols. The default value is 16K bytes. "
20951 "If larger send buffer sizes are desired, this value should be increased (to "
20952 "affect all sockets). To employ large TCP windows, the I</proc/sys/net/ipv4/"
20953 "tcp_window_scaling> must be set to a nonzero value (default)."
20955 "TCP ソケットの送信バッファのデフォルトサイズ。 この値は、すべてのプロトコルに"
20956 "対して定義されている、 ジェネリックなグローバルのデフォルトバッファサイズ I</"
20957 "proc/sys/net/core/wmem_default> より優先される。 デフォルト値は 16K バイトで"
20958 "ある。 大きな送信バッファサイズが必要な場合は、 この値を増やすべきである (す"
20959 "べてのソケットに影響する)。 大きな TCP ウィンドウを用いるには、 I</proc/sys/"
20960 "net/ipv4/tcp_window_scaling> を 0 以外の値 (デフォルト値) にしておかなければ"
20963 #. type: Plain text
20964 #: build/C/man7/tcp.7:876
20966 "The maximum size of the send buffer used by each TCP socket. This value "
20967 "does not override the value in I</proc/sys/net/core/wmem_max>. This is not "
20968 "used to limit the size of the send buffer declared using B<SO_SNDBUF> on a "
20969 "socket. The default value is calculated using the formula"
20971 "各 TCP ソケットで用いる送信バッファの最大サイズ。 この値よりも I</proc/sys/"
20972 "net/core/wmem_max> が優先される。 これは B<SO_SNDBUF> を用いてソケットの送信"
20973 "バッファサイズ制限を宣言する際には用いられない。 デフォルト値は以下の式で計算"
20976 #. type: Plain text
20977 #: build/C/man7/tcp.7:878
20979 msgid " max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20980 msgstr " max(65536, min(4MB, I<tcp_mem>[1]*PAGE_SIZE/128))\n"
20982 #. type: Plain text
20983 #: build/C/man7/tcp.7:881
20985 "(On Linux 2.4, the default value is 128K bytes, lowered 64K depending on low-"
20988 "(Linux 2.4 では、デフォルト値は 128K バイトで、 メモリの少ないシステムでは "
20992 #: build/C/man7/tcp.7:882
20994 msgid "I<tcp_workaround_signed_windows> (Boolean; default: disabled; since Linux 2.6.26)"
20995 msgstr "I<tcp_workaround_signed_windows> (ブール値; デフォルト: 無効; Linux 2.6.26 以降)"
20997 #. type: Plain text
20998 #: build/C/man7/tcp.7:888
21000 "If enabled, assume that no receipt of a window-scaling option means that the "
21001 "remote TCP is broken and treats the window as a signed quantity. If "
21002 "disabled, assume that the remote TCP is not broken even if we do not receive "
21003 "a window scaling option from it."
21005 "有効にすると、ウィンドウスケーリングオプションを受信しないのは、 接続相手の "
21006 "TCP が壊れていると考え、ウィンドウを符号付きの量とみなす。 無効にすると、接続"
21007 "相手からウィンドウスケーリングオプションを受信しなかった 場合であっても、接続"
21008 "相手の TCP が壊れているとはみなさない。"
21010 #. or SOL_TCP on Linux
21011 #. type: Plain text
21012 #: build/C/man7/tcp.7:906
21014 "To set or get a TCP socket option, call B<getsockopt>(2) to read or "
21015 "B<setsockopt>(2) to write the option with the option level argument set to "
21016 "B<IPPROTO_TCP>. Unless otherwise noted, I<optval> is a pointer to an "
21017 "I<int>. In addition, most B<IPPROTO_IP> socket options are valid on TCP "
21018 "sockets. For more information see B<ip>(7)."
21020 "TCP ソケットのオプションは、 オプションレベル引数に I<IPPROTO_TCP> を指定し"
21021 "た B<setsockopt>(2) で設定でき、 B<getsockopt>(2) で取得できる。 注釈がない"
21022 "限り、 I<optval> は I<int> へのポインタである。 さらに、ほとんどの "
21023 "B<IPPROTO_IP> ソケットオプションも TCP ソケットに対して有効である。詳細は "
21027 #: build/C/man7/tcp.7:906
21029 msgid "B<TCP_CONGESTION> (since Linux 2.6.13)"
21030 msgstr "B<TCP_CONGESTION> (Linux 2.6.13 以降)"
21032 #. commit 5f8ef48d240963093451bcf83df89f1a1364f51d
21033 #. Author: Stephen Hemminger <shemminger@osdl.org>
21034 #. type: Plain text
21035 #: build/C/man7/tcp.7:922
21037 "The argument for this option is a string. This option allows the caller to "
21038 "set the TCP congestion control algorithm to be used, on a per-socket basis. "
21039 "Unprivileged processes are restricted to choosing one of the algorithms in "
21040 "I<tcp_allowed_congestion_control> (described above). Privileged processes "
21041 "(B<CAP_NET_ADMIN>) can choose from any of the available congestion-control "
21042 "algorithms (see the description of I<tcp_available_congestion_control> "
21044 msgstr "このオプションの引き数は文字列である。 このオプションを使うと、呼び出し元がソケット単位に使用する TCP 輻輳制御アルゴリズムを設定することができる。 非特権プロセスが使用できるアルゴリズムは (上述の) I<tcp_allowed_congestion_control> で設定されたものだけに制限される。 特権プロセス (B<CAP_NET_ADMIN>) は任意の輻輳制御アルゴリズムを選択することができる (上記の B<tcp_available_congestion_control> の説明を参照)。"
21047 #: build/C/man7/tcp.7:922
21049 msgid "B<TCP_CORK> (since Linux 2.2)"
21050 msgstr "B<TCP_CORK> (Linux 2.2 以降)"
21052 #. precisely: since 2.1.127
21053 #. type: Plain text
21054 #: build/C/man7/tcp.7:938
21056 "If set, don't send out partial frames. All queued partial frames are sent "
21057 "when the option is cleared again. This is useful for prepending headers "
21058 "before calling B<sendfile>(2), or for throughput optimization. As currently "
21059 "implemented, there is a 200 millisecond ceiling on the time for which output "
21060 "is corked by B<TCP_CORK>. If this ceiling is reached, then queued data is "
21061 "automatically transmitted. This option can be combined with B<TCP_NODELAY> "
21062 "only since Linux 2.5.71. This option should not be used in code intended to "
21065 "セットされると、 partial フレームを送信しない。 このオプションが解除される"
21066 "と、 キューイングされた partial フレームが送られる。これは B<sendfile>(2) を"
21067 "呼ぶ前にヘッダを前置したり、 スループットを最適化したい場合に便利である。 現"
21068 "在の実装では、 B<TCP_CORK> で出力を抑えることができる時間の上限は 200 ミリ秒"
21069 "である。 この上限に達すると、キューイングされたデータは自動的に送信される。 "
21070 "Linux 2.5.71 以降においてのみ、このオプションを B<TCP_NODELAY> と同時に用いる"
21071 "ことができる。 移植性の必要なプログラムではこのオプションを用いるべきではな"
21075 #: build/C/man7/tcp.7:938
21077 msgid "B<TCP_DEFER_ACCEPT> (since Linux 2.4)"
21078 msgstr "B<TCP_DEFER_ACCEPT> (Linux 2.4 以降)"
21080 #. Precisely: since 2.3.38
21081 #. Useful references:
21082 #. http://www.techrepublic.com/article/take-advantage-of-tcp-ip-options-to-optimize-data-transmission/
21083 #. http://unix.stackexchange.com/questions/94104/real-world-use-of-tcp-defer-accept
21084 #. type: Plain text
21085 #: build/C/man7/tcp.7:949
21087 "Allow a listener to be awakened only when data arrives on the socket. Takes "
21088 "an integer value (seconds), this can bound the maximum number of attempts "
21089 "TCP will make to complete the connection. This option should not be used in "
21090 "code intended to be portable."
21092 "これを用いると、リスナはデータがソケットに到着した時のみ目覚めるようになる。 "
21093 "整数値 (秒) をとり、 TCP が接続を完了しようと試みる回数を制限できる。 移植性"
21094 "の必要なプログラムではこのオプションを用いるべきではない。"
21097 #: build/C/man7/tcp.7:949
21099 msgid "B<TCP_INFO> (since Linux 2.4)"
21100 msgstr "B<TCP_INFO> (Linux 2.4 以降)"
21102 #. type: Plain text
21103 #: build/C/man7/tcp.7:955
21105 "Used to collect information about this socket. The kernel returns a "
21106 "I<struct tcp_info> as defined in the file I</usr/include/linux/tcp.h>. This "
21107 "option should not be used in code intended to be portable."
21109 "このソケットの情報を収集するのに用いる。 カーネルは I</usr/include/linux/tcp."
21110 "h> ファイルで定義されている I<struct tcp_info> を返す。 移植性の必要なプログ"
21111 "ラムではこのオプションを用いるべきではない。"
21114 #: build/C/man7/tcp.7:955
21116 msgid "B<TCP_KEEPCNT> (since Linux 2.4)"
21117 msgstr "B<TCP_KEEPCNT> (Linux 2.4 以降)"
21119 #. Precisely: since 2.3.18
21120 #. type: Plain text
21121 #: build/C/man7/tcp.7:962
21123 "The maximum number of keepalive probes TCP should send before dropping the "
21124 "connection. This option should not be used in code intended to be portable."
21126 "接続を落とす前に TCP が試みる keepalive プローブの最大回数。 移植性の必要なプ"
21127 "ログラムではこのオプションを用いるべきではない。"
21130 #: build/C/man7/tcp.7:962
21132 msgid "B<TCP_KEEPIDLE> (since Linux 2.4)"
21133 msgstr "B<TCP_KEEPIDLE> (Linux 2.4 以降)"
21135 #. Precisely: since 2.3.18
21136 #. type: Plain text
21137 #: build/C/man7/tcp.7:971
21139 "The time (in seconds) the connection needs to remain idle before TCP starts "
21140 "sending keepalive probes, if the socket option B<SO_KEEPALIVE> has been set "
21141 "on this socket. This option should not be used in code intended to be "
21144 "この時間 (秒単位) を越えて接続がアイドル状態に留まっていると、 このソケット"
21145 "に B<SO_KEEPALIVE> ソケットオプションが設定されている場合、 TCP は keepalive "
21146 "プローブを送りはじめる。 移植性の必要なプログラムではこのオプションを用いるべ"
21150 #: build/C/man7/tcp.7:971
21152 msgid "B<TCP_KEEPINTVL> (since Linux 2.4)"
21153 msgstr "B<TCP_KEEPINTVL> (Linux 2.4 以降)"
21155 #. Precisely: since 2.3.18
21156 #. type: Plain text
21157 #: build/C/man7/tcp.7:976
21159 "The time (in seconds) between individual keepalive probes. This option "
21160 "should not be used in code intended to be portable."
21162 "各 keepalive プローブの間隔 (秒単位)。 移植性の必要なプログラムではこのオプ"
21166 #: build/C/man7/tcp.7:976
21168 msgid "B<TCP_LINGER2> (since Linux 2.4)"
21169 msgstr "B<TCP_LINGER2> (Linux 2.4 以降)"
21171 #. Precisely: since 2.3.41
21172 #. type: Plain text
21173 #: build/C/man7/tcp.7:988
21175 "The lifetime of orphaned FIN_WAIT2 state sockets. This option can be used "
21176 "to override the system-wide setting in the file I</proc/sys/net/ipv4/"
21177 "tcp_fin_timeout> for this socket. This is not to be confused with the "
21178 "B<socket>(7) level option B<SO_LINGER>. This option should not be used in "
21179 "code intended to be portable."
21181 "orphan された FIN_WAIT2 状態のソケットの寿命。 このオプションを用いると、シス"
21182 "テム全体に適用されるファイル I</proc/sys/net/ipv4/tcp_fin_timeout> の値を、こ"
21183 "のソケットに対してのみ変更できる。 B<socket>(7) レベルのオプション "
21184 "B<SO_LINGER> と混同しないこと。 移植性の必要なプログラムではこのオプションを"
21188 #: build/C/man7/tcp.7:988
21190 msgid "B<TCP_MAXSEG>"
21191 msgstr "B<TCP_MAXSEG>"
21193 #. Present in Linux 1.0
21194 #. type: Plain text
21195 #: build/C/man7/tcp.7:998
21197 "The maximum segment size for outgoing TCP packets. In Linux 2.2 and "
21198 "earlier, and in Linux 2.6.28 and later, if this option is set before "
21199 "connection establishment, it also changes the MSS value announced to the "
21200 "other end in the initial packet. Values greater than the (eventual) "
21201 "interface MTU have no effect. TCP will also impose its minimum and maximum "
21202 "bounds over the value provided."
21204 "送出 TCP パケットの最大セグメントサイズ。 Linux 2.2 以前と Linux\n"
21205 "2.6.28 以降では、このオプションを接続確立の前に設定すると、初期パケット\n"
21206 "で他端にアナウンスする MSS の値も変化する。インターフェースの MTU より\n"
21207 "も大きな (あるいは大きくなってしまった) 値は効果を持たない。 また TCP\n"
21208 "は、この値よりも最小・最大の制限の方を優先する。"
21211 #: build/C/man7/tcp.7:998
21213 msgid "B<TCP_NODELAY>"
21214 msgstr "B<TCP_NODELAY>"
21216 #. Present in Linux 1.0
21217 #. type: Plain text
21218 #: build/C/man7/tcp.7:1015
21220 "If set, disable the Nagle algorithm. This means that segments are always "
21221 "sent as soon as possible, even if there is only a small amount of data. "
21222 "When not set, data is buffered until there is a sufficient amount to send "
21223 "out, thereby avoiding the frequent sending of small packets, which results "
21224 "in poor utilization of the network. This option is overridden by "
21225 "B<TCP_CORK>; however, setting this option forces an explicit flush of "
21226 "pending output, even if B<TCP_CORK> is currently set."
21228 "設定すると Nagle アルゴリズムを無効にする。 すなわち、データ量が少ない場合で"
21229 "も 各セグメントは可能な限り早く送信される。 設定されていないと、 送信する分だ"
21230 "け溜まるまでデータはバッファされ、 小さなパケットを頻繁に送らずにすみ、 ネッ"
21231 "トワークを有効に利用できる。 このオプションは B<TCP_CORK> により上書きされ"
21232 "る。しかしながら、 B<TCP_CORK> が設定されている場合であっても、このオプション"
21233 "を設定すると、 送信待ちの出力を明示的に掃き出す (flush) ことになる。"
21236 #: build/C/man7/tcp.7:1015
21238 msgid "B<TCP_QUICKACK> (since Linux 2.4.4)"
21239 msgstr "B<TCP_QUICKACK> (Linux 2.4.4 以降)"
21241 #. type: Plain text
21242 #: build/C/man7/tcp.7:1030
21244 "Enable quickack mode if set or disable quickack mode if cleared. In "
21245 "quickack mode, acks are sent immediately, rather than delayed if needed in "
21246 "accordance to normal TCP operation. This flag is not permanent, it only "
21247 "enables a switch to or from quickack mode. Subsequent operation of the TCP "
21248 "protocol will once again enter/leave quickack mode depending on internal "
21249 "protocol processing and factors such as delayed ack timeouts occurring and "
21250 "data transfer. This option should not be used in code intended to be "
21253 "設定されていると quickack モードを有効にし、クリアされると無効にする。 通常"
21254 "の TCP 動作では ack は必要に応じて遅延されるのに対し、 quickack モードでは "
21255 "ack はすぐに送信される。 このフラグは永続的なものではなく、 quickack モードか"
21256 "ら/モードへ切り替えるためのものである。 これ以降の TCP プロトコルの動作によっ"
21257 "ては、 内部のプロトコル処理や、遅延 ack タイムアウトの発生、 データ転送などの"
21258 "要因によって、 再び quickack から出たり入ったりする。 移植性の必要なプログラ"
21259 "ムではこのオプションを用いるべきではない。"
21262 #: build/C/man7/tcp.7:1030
21264 msgid "B<TCP_SYNCNT> (since Linux 2.4)"
21265 msgstr "B<TCP_SYNCNT> (Linux 2.4 以降)"
21267 #. Precisely: since 2.3.18
21268 #. type: Plain text
21269 #: build/C/man7/tcp.7:1037
21271 "Set the number of SYN retransmits that TCP should send before aborting the "
21272 "attempt to connect. It cannot exceed 255. This option should not be used "
21273 "in code intended to be portable."
21275 "接続の試行を中止させる前に TCP が送る SYN 再送数を設定する。 これは 255 より"
21276 "大きくはできない。 移植性の必要なプログラムではこのオプションを用いるべきでは"
21280 #: build/C/man7/tcp.7:1037
21282 msgid "B<TCP_USER_TIMEOUT> (since Linux 2.6.37)"
21283 msgstr "B<TCP_USER_TIMEOUT> (Linux 2.6.37 以降)"
21285 #. commit dca43c75e7e545694a9dd6288553f55c53e2a3a3
21286 #. Author: Jerry Chu <hkchu@google.com>
21287 #. The following text taken nearly verbatim from Jerry Chu's (excellent)
21289 #. type: Plain text
21290 #: build/C/man7/tcp.7:1055
21292 "This option takes an I<unsigned int> as an argument. When the value is "
21293 "greater than 0, it specifies the maximum amount of time in milliseconds that "
21294 "transmitted data may remain unacknowledged before TCP will forcibly close "
21295 "the corresponding connection and return B<ETIMEDOUT> to the application. If "
21296 "the option value is specified as 0, TCP will to use the system default."
21297 msgstr "このオプションは I<unsigned int> 型の引き数を取る。 値が 0 より大きい場合、その値は、 どのくらいの時間、送信されたデータが ACK を受信しないままの状態が続くと、 TCP がその接続を強制的にクローズし、アプリケーションに B<ETIMEDOUT> を返すかを、 ミリ秒単位で指定する。 オプションの値が 0 の場合、TCP はシステムのデフォルト値を使用する。"
21299 #. type: Plain text
21300 #: build/C/man7/tcp.7:1062
21302 "Increasing user timeouts allows a TCP connection to survive extended periods "
21303 "without end-to-end connectivity. Decreasing user timeouts allows "
21304 "applications to \"fail fast\", if so desired. Otherwise, failure may take "
21305 "up to 20 minutes with the current system defaults in a normal WAN "
21307 msgstr "ユーザータイムアウトを長くすると、 通信の両端での接続性がない場合でも長い時間 TCP 接続が維持されるようになる。 ユーザータイムアウトを短くすると、 アプリケーションは必要であれば「早く失敗」できるようになる。 設定しなかった場合は、 通常の WAN 環境では現在のシステムのデフォルトの 20 分で失敗することになる。"
21309 #. type: Plain text
21310 #: build/C/man7/tcp.7:1072
21312 "This option can be set during any state of a TCP connection, but is only "
21313 "effective during the synchronized states of a connection (ESTABLISHED, FIN-"
21314 "WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, and LAST-ACK). Moreover, when used "
21315 "with the TCP keepalive (B<SO_KEEPALIVE>) option, B<TCP_USER_TIMEOUT> will "
21316 "override keepalive to determine when to close a connection due to keepalive "
21318 msgstr "このオプションは TCP 接続がどの状態の場合でも設定することができるが、 接続が同期状態 (ESTABLISHED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-ACK) の場合のみ効果がある。 また、 TCP keepalive (B<SO_KEEPALIVE>) オプションとともに使用された場合、 B<TCP_USER_TIMEOUT> は keepalive 失敗による接続クローズを判定するための keepalive 値を上書きする。"
21320 #. type: Plain text
21321 #: build/C/man7/tcp.7:1075
21323 "The option has no effect on when TCP retransmits a packet, nor when a "
21324 "keepalive probe is sent."
21325 msgstr "このオプションは TCP がパケットを再送する際や keepalive プローブを送信する際には影響を及ぼさない。"
21327 #. type: Plain text
21328 #: build/C/man7/tcp.7:1079
21330 "This option, like many others, will be inherited by the socket returned by "
21331 "B<accept>(2), if it was set on the listening socket."
21332 msgstr "他の多くのオプション同様、リッスン中のソケットでこのオプションがセットされていれば B<accept>(2) が返すソケットにオプションが継承される。"
21334 #. type: Plain text
21335 #: build/C/man7/tcp.7:1082
21337 "Further details on the user timeout feature can be found in RFC\\ 793 and RFC"
21338 "\\ 5482 (\"TCP User Timeout Option\")."
21339 msgstr "ユーザータイムアウト機能の詳細は RFC\\ 793 と RFC\\ 5482 (\"TCP User Timeout Option\") に書かれている。"
21342 #: build/C/man7/tcp.7:1082
21344 msgid "B<TCP_WINDOW_CLAMP> (since Linux 2.4)"
21345 msgstr "B<TCP_WINDOW_CLAMP> (Linux 2.4 以降)"
21347 #. Precisely: since 2.3.41
21348 #. type: Plain text
21349 #: build/C/man7/tcp.7:1089
21351 "Bound the size of the advertised window to this value. The kernel imposes a "
21352 "minimum size of SOCK_MIN_RCVBUF/2. This option should not be used in code "
21353 "intended to be portable."
21355 "広報するウィンドウのサイズをこの値に固定する。 カーネルによって最小サイズは "
21356 "SOCK_MIN_RCVBUF/2 に制限されている。 このオプションは移植性の必要なコードでは"
21360 #: build/C/man7/tcp.7:1089 build/C/man7/unix.7:177
21362 msgid "Sockets API"
21365 #. type: Plain text
21366 #: build/C/man7/tcp.7:1098
21368 "TCP provides limited support for out-of-band data, in the form of (a single "
21369 "byte of) urgent data. In Linux this means if the other end sends newer out-"
21370 "of-band data the older urgent data is inserted as normal data into the "
21371 "stream (even when B<SO_OOBINLINE> is not set). This differs from BSD-based "
21374 "TCP は帯域外データ (out-of-band data) を限定的にサポートしており、 (1 バイト"
21375 "の) 緊急データという形である。 つまり Linux においては、 接続先が (新しいやり"
21376 "方の) 帯域外データを送ってきた場合、 (古いやり方の) 緊急データは通常のデータ"
21377 "としてストリームに挿入されることになる (これは B<SO_OOBINLINE> がセットされて"
21378 "いる場合でも同様である)。 これは BSD ベースのスタックとは異なる。"
21380 #. type: Plain text
21381 #: build/C/man7/tcp.7:1105
21383 "Linux uses the BSD compatible interpretation of the urgent pointer field by "
21384 "default. This violates RFC\\ 1122, but is required for interoperability "
21385 "with other stacks. It can be changed via I</proc/sys/net/ipv4/tcp_stdurg>."
21387 "Linux は、デフォルトでは urgent ポインタフィールドの解釈に BSD 互換の方法を用"
21388 "いる。これは RFC\\ 1122 に反しているが、 他のスタックと同時に動作させるにはや"
21389 "むを得ない。これは I</proc/sys/net/ipv4/tcp_stdurg> によって変更できる。"
21391 #. type: Plain text
21392 #: build/C/man7/tcp.7:1110
21394 "It is possible to peek at out-of-band data using the B<recv>(2) B<MSG_PEEK> "
21397 "B<recv>(2) の B<MSG_PEEK> フラグを使うと、帯域外データを覗き見することができ"
21400 #. type: Plain text
21401 #: build/C/man7/tcp.7:1126
21403 "Since version 2.4, Linux supports the use of B<MSG_TRUNC> in the I<flags> "
21404 "argument of B<recv>(2) (and B<recvmsg>(2)). This flag causes the received "
21405 "bytes of data to be discarded, rather than passed back in a caller-supplied "
21406 "buffer. Since Linux 2.4.4, B<MSG_TRUNC> also has this effect when used in "
21407 "conjunction with B<MSG_OOB> to receive out-of-band data."
21409 "Linux 2.4 以降では、 B<recv>(2) (や B<recvmsg>(2)) の I<flags> 引き数に "
21410 "B<MSG_TRUNC> を使うことができる。 このフラグを指定すると、受信データは、呼び"
21411 "出し元から渡されたバッファ にコピーされて返されるのではなく、廃棄されるように"
21412 "なる。 Linux 2.4.4 以降では、 B<MSG_TRUNC> を、帯域外データを受信するための "
21413 "B<MSG_OOB> と組み合わせて使った場合にも、これと同じ効果を持つようになってい"
21416 #. type: Plain text
21417 #: build/C/man7/tcp.7:1132 build/C/man7/unix.7:290
21419 "The following B<ioctl>(2) calls return information in I<value>. The "
21420 "correct syntax is:"
21422 "以下の B<ioctl>(2) 呼び出しは I<value> に情報を入れて返す。\n"
21425 #. type: Plain text
21426 #: build/C/man7/tcp.7:1137
21429 "B<int>I< value>B<;>\n"
21430 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
21432 "B<int>I< value>B<;>\n"
21433 "I<error>B< = ioctl(>I<tcp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
21435 #. type: Plain text
21436 #: build/C/man7/tcp.7:1142
21437 msgid "I<ioctl_type> is one of the following:"
21438 msgstr "I<ioctl_type> は以下のいずれか一つである:"
21441 #: build/C/man7/tcp.7:1142 build/C/man7/unix.7:300
21444 msgstr "B<SIOCINQ>"
21446 #. FIXME http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
21447 #. filed 2010-09-10, may cause SIOCINQ to be defined in glibc headers
21448 #. SIOCOUTQ also has an effect for UNIX domain sockets, but not
21449 #. quite what userland might expect. It seems to return the number
21450 #. of bytes allocated for buffers containing pending output.
21451 #. That number is normally larger than the number of bytes of pending
21452 #. output. Since this info is, from userland's point of view, imprecise,
21453 #. and it may well change, probably best not to document this now.
21454 #. type: Plain text
21455 #: build/C/man7/tcp.7:1158 build/C/man7/unix.7:322
21457 "Returns the amount of queued unread data in the receive buffer. The socket "
21458 "must not be in LISTEN state, otherwise an error (B<EINVAL>) is returned. "
21459 "B<SIOCINQ> is defined in I<E<lt>linux/sockios.hE<gt>>. Alternatively, you "
21460 "can use the synonymous B<FIONREAD>, defined in I<E<lt>sys/ioctl.hE<gt>>."
21462 "受信バッファのキューにある、まだ読んでいないデータの量を返す。ソケットは\n"
21463 "LISTEN 状態にあってはならず、さもないとエラー (B<EINVAL>) が返る。\n"
21464 "B<SIOCINQ> は I<E<lt>linux/sockios.hE<gt>> で定義されている。\n"
21465 "代わりに、I<E<lt>sys/ioctl.hE<gt>> で定義されている、同義語の B<FIONREAD>\n"
21469 #: build/C/man7/tcp.7:1158
21471 msgid "B<SIOCATMARK>"
21472 msgstr "B<SIOCATMARK>"
21474 #. type: Plain text
21475 #: build/C/man7/tcp.7:1163
21477 "Returns true (i.e., I<value> is nonzero) if the inbound data stream is at "
21480 "受信データストリームが緊急マークの位置であれば、真を返す (つまり I<value> が "
21483 #. type: Plain text
21484 #: build/C/man7/tcp.7:1179
21486 "If the B<SO_OOBINLINE> socket option is set, and B<SIOCATMARK> returns true, "
21487 "then the next read from the socket will return the urgent data. If the "
21488 "B<SO_OOBINLINE> socket option is not set, and B<SIOCATMARK> returns true, "
21489 "then the next read from the socket will return the bytes following the "
21490 "urgent data (to actually read the urgent data requires the B<recv(MSG_OOB)> "
21493 "B<SO_OOBINLINE> ソケットオプションが設定されていて、 B<SIOCATMARK> が真を返し"
21494 "た場合、次のソケットからの読み込みでは緊急データが 返される。 "
21495 "B<SO_OOBINLINE> ソケットオプションが設定されておらず、 B<SIOCATMARK> が真を返"
21496 "した場合、次のソケットからの読み込みでは緊急データに 続くデータが返される (実"
21497 "際に緊急データを読み込むには B<recv(MSG_OOB)> とフラグをつける必要がある)。"
21499 #. type: Plain text
21500 #: build/C/man7/tcp.7:1193
21502 "Note that a read never reads across the urgent mark. If an application is "
21503 "informed of the presence of urgent data via B<select>(2) (using the "
21504 "I<exceptfds> argument) or through delivery of a B<SIGURG> signal, then it "
21505 "can advance up to the mark using a loop which repeatedly tests B<SIOCATMARK> "
21506 "and performs a read (requesting any number of bytes) as long as "
21507 "B<SIOCATMARK> returns false."
21509 "データの一回の読み込みでは緊急マークを跨がっての読み込みは行われない。 アプリ"
21510 "ケーションが緊急データの存在を (I<exceptfds> 引き数を使って) B<select>(2) "
21511 "経由または B<SIGURG> シグナルの配送を通じて知らされた場合、 B<SIOCATMARK> の"
21512 "チェックと読み込み (何バイト読み込み要求をしてもよい) を B<SIOCATMARK> が偽を"
21513 "返さなくなるまで繰り返し行うことで、緊急マークの位置まで 読み進めることができ"
21517 #: build/C/man7/tcp.7:1193
21519 msgid "B<SIOCOUTQ>"
21520 msgstr "B<SIOCOUTQ>"
21522 #. FIXME http://sources.redhat.com/bugzilla/show_bug.cgi?id=12002,
21523 #. filed 2010-09-10, may cause SIOCOUTQ to be defined in glibc headers
21524 #. type: Plain text
21525 #: build/C/man7/tcp.7:1209
21527 "Returns the amount of unsent data in the socket send queue. The socket must "
21528 "not be in LISTEN state, otherwise an error (B<EINVAL>) is returned. "
21529 "B<SIOCOUTQ> is defined in I<E<lt>linux/sockios.hE<gt>>. Alternatively, you "
21530 "can use the synonymous B<TIOCOUTQ>, defined in I<E<lt>sys/ioctl.hE<gt>>."
21532 "ソケットの送信キューに残っている未送信データの量を返す。ソケットは LISTEN "
21534 "態にあってはならない。 LISTEN 状態の場合にはエラー (B<EINVAL>) となる。\n"
21535 "B<SIOCOUTQ> は I<E<lt>linux/sockios.hE<gt>> で定義されている。\n"
21536 "代わりに、I<E<lt>sys/ioctl.hE<gt>> で定義されている、同義語の B<TIOCOUTQ> "
21540 #. type: Plain text
21541 #: build/C/man7/tcp.7:1214
21543 "When a network error occurs, TCP tries to resend the packet. If it doesn't "
21544 "succeed after some time, either B<ETIMEDOUT> or the last received error on "
21545 "this connection is reported."
21547 "ネットワークエラーが起こると、 TCP はパケットの再送を試みる。 何回かやっても"
21548 "成功しなければ、この接続に対して B<ETIMEOUT> エラーか最後に受信したエラーが返"
21551 #. type: Plain text
21552 #: build/C/man7/tcp.7:1225
21554 "Some applications require a quicker error notification. This can be enabled "
21555 "with the B<IPPROTO_IP> level B<IP_RECVERR> socket option. When this option "
21556 "is enabled, all incoming errors are immediately passed to the user program. "
21557 "Use this option with care \\(em it makes TCP less tolerant to routing "
21558 "changes and other normal network conditions."
21560 "アプリケーションによっては、もっと早くエラーを知らせてほしい場合がある。 これ"
21561 "には B<IPPROTO_IP> レベルの B<IP_RECVERR> ソケットオプションを用いると良い。"
21562 "このオプションが有効になっていると、 到着したエラーはすべてただちにユーザープ"
21563 "ログラムに渡される。 このオプションは慎重に用いること \\(em ルーティングの変"
21564 "更など、 通常ありうるネットワーク状態に対して TCP をより脆弱にしてしまう。"
21567 #: build/C/man7/tcp.7:1226
21569 msgid "B<EAFNOTSUPPORT>"
21570 msgstr "B<EAFNOTSUPPORT>"
21572 #. type: Plain text
21573 #: build/C/man7/tcp.7:1232
21574 msgid "Passed socket address type in I<sin_family> was not B<AF_INET>."
21576 "I<sin_family> に渡されたソケットアドレスのタイプが B<AF_INET> ではなかった。"
21578 #. type: Plain text
21579 #: build/C/man7/tcp.7:1236
21581 "The other end closed the socket unexpectedly or a read is executed on a shut "
21584 "接続先が予期しなかったかたちでソケットをクローズした。 またはシャットダウンさ"
21585 "れたソケットに読み込みが実行された。"
21588 #: build/C/man7/tcp.7:1236
21590 msgid "B<ETIMEDOUT>"
21591 msgstr "B<ETIMEDOUT>"
21593 #. type: Plain text
21594 #: build/C/man7/tcp.7:1239
21595 msgid "The other end didn't acknowledge retransmitted data after some time."
21596 msgstr "接続先が、何回かデータを再送しても反応しない。"
21598 #. type: Plain text
21599 #: build/C/man7/tcp.7:1243
21601 "Any errors defined for B<ip>(7) or the generic socket layer may also be "
21602 "returned for TCP."
21604 "B<ip>(7) で定義されているエラーや、ジェネリックなソケット層におけるエラーも "
21607 #. type: Plain text
21608 #: build/C/man7/tcp.7:1250
21610 "Support for Explicit Congestion Notification, zero-copy B<sendfile>(2), "
21611 "reordering support and some SACK extensions (DSACK) were introduced in 2.4. "
21612 "Support for forward acknowledgement (FACK), TIME_WAIT recycling, and per-"
21613 "connection keepalive socket options were introduced in 2.3."
21615 "Explicit Congestion Notification、zero-copy の B<sendfile>(2)、 並び替えのサ"
21616 "ポート、SACK 拡張 (DSACK) などのサポートは 2.4 で導入された。 フォワード確認 "
21617 "(FACK)、TIME_WAIT リサイクル、接続ごとの keepalive に対するソケットオプション"
21620 #. type: Plain text
21621 #: build/C/man7/tcp.7:1252
21622 msgid "Not all errors are documented."
21623 msgstr "まだ説明されていないエラーがある。"
21625 #. Only a single Linux kernel version is described
21626 #. Info for 2.2 was lost. Should be added again,
21627 #. or put into a separate page.
21629 #. This man page was originally written by Andi Kleen.
21630 #. It was updated for 2.4 by Nivedita Singhvi with input from
21631 #. Alexey Kuznetsov's Documentation/networking/ip-sysctl.txt
21633 #. type: Plain text
21634 #: build/C/man7/tcp.7:1262
21635 msgid "IPv6 is not described."
21636 msgstr "IPv6 に関する記述がない。"
21638 #. type: Plain text
21639 #: build/C/man7/tcp.7:1274
21641 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
21642 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
21645 "B<accept>(2), B<bind>(2), B<connect>(2), B<getsockopt>(2), B<listen>(2), "
21646 "B<recvmsg>(2), B<sendfile>(2), B<sendmsg>(2), B<socket>(2), B<ip>(7), "
21649 #. type: Plain text
21650 #: build/C/man7/tcp.7:1276
21651 msgid "RFC\\ 793 for the TCP specification."
21652 msgstr "RFC\\ 793: TCP の仕様。"
21654 #. type: Plain text
21655 #: build/C/man7/tcp.7:1278
21657 "RFC\\ 1122 for the TCP requirements and a description of the Nagle algorithm."
21658 msgstr "RFC\\ 1122: TCP の要求事項と Nagle アルゴリズムの記述。"
21660 #. type: Plain text
21661 #: build/C/man7/tcp.7:1280
21662 msgid "RFC\\ 1323 for TCP timestamp and window scaling options."
21663 msgstr "RFC\\ 1323: TCP のタイムスタンプ・ウィンドウスケーリング各オプション。"
21665 #. type: Plain text
21666 #: build/C/man7/tcp.7:1282
21667 msgid "RFC\\ 1337 for a description of TIME_WAIT assassination hazards."
21668 msgstr "RFC\\ 1337: TIME_WAIT assassination hazard に関する説明。"
21670 #. type: Plain text
21671 #: build/C/man7/tcp.7:1284
21672 msgid "RFC\\ 3168 for a description of Explicit Congestion Notification."
21673 msgstr "RFC\\ 3168: Explicit Congestion Notification に関する説明。"
21675 #. type: Plain text
21676 #: build/C/man7/tcp.7:1286
21677 msgid "RFC\\ 2581 for TCP congestion control algorithms."
21678 msgstr "RFC\\ 2581: TCP 輻輳制御アルゴリズム。"
21680 #. type: Plain text
21681 #: build/C/man7/tcp.7:1288
21682 msgid "RFC\\ 2018 and RFC\\ 2883 for SACK and extensions to SACK."
21683 msgstr "RFC\\ 2018 と RFC\\ 2883: SACK とその拡張。"
21686 #: build/C/man7/udp.7:12
21692 #: build/C/man7/udp.7:12
21695 msgstr "2013-07-31"
21697 #. type: Plain text
21698 #: build/C/man7/udp.7:15
21699 msgid "udp - User Datagram Protocol for IPv4"
21700 msgstr "udp - IPv4 の ユーザーデータグラムプロトコル"
21702 #. type: Plain text
21703 #: build/C/man7/udp.7:21
21704 msgid "B<#include E<lt>netinet/udp.hE<gt>>"
21705 msgstr "B<#include E<lt>netinet/udp.hE<gt>>"
21707 #. type: Plain text
21708 #: build/C/man7/udp.7:23
21709 msgid "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
21710 msgstr "B<udp_socket = socket(AF_INET, SOCK_DGRAM, 0);>"
21712 #. type: Plain text
21713 #: build/C/man7/udp.7:29
21715 "This is an implementation of the User Datagram Protocol described in RFC\\ "
21716 "768. It implements a connectionless, unreliable datagram packet service. "
21717 "Packets may be reordered or duplicated before they arrive. UDP generates "
21718 "and checks checksums to catch transmission errors."
21720 "これは RFC\\ 768 で記述されている User Datagram Protocol の実装である。 UDP "
21721 "はコネクションレスの、信頼性の低いデータパケットサービスである。 パケットは到"
21722 "着前に並び替えられたり複製されたりする。 UDP は転送エラーを検出するために"
21723 "チェックサムを生成・チェックする。"
21725 #. type: Plain text
21726 #: build/C/man7/udp.7:58
21728 "When a UDP socket is created, its local and remote addresses are "
21729 "unspecified. Datagrams can be sent immediately using B<sendto>(2) or "
21730 "B<sendmsg>(2) with a valid destination address as an argument. When "
21731 "B<connect>(2) is called on the socket, the default destination address is "
21732 "set and datagrams can now be sent using B<send>(2) or B<write>(2) without "
21733 "specifying a destination address. It is still possible to send to other "
21734 "destinations by passing an address to B<sendto>(2) or B<sendmsg>(2). In "
21735 "order to receive packets, the socket can be bound to a local address first "
21736 "by using B<bind>(2). Otherwise the socket layer will automatically assign a "
21737 "free local port out of the range defined by I</proc/sys/net/ipv4/"
21738 "ip_local_port_range> and bind the socket to B<INADDR_ANY>."
21740 "UDP ソケットが生成されるとき、 ローカルアドレスやリモートアドレスは指定されな"
21741 "い。 正しい行き先アドレスを引数として B<sendto>(2) や B<sendmsg>(2) を呼べ"
21742 "ば、データグラムはただちに送信される。 ソケットに対して B<connect>(2) を呼ぶ"
21743 "と、デフォルトの行き先アドレスが設定され、 B<send>(2) や B<write>(2) を使っ"
21744 "て、行き先アドレスの指定なしにデータグラムを送信できるようになる。 この場合で"
21745 "も、行き先アドレスを B<sendto>(2) や B<sendmsg>(2) に渡せば、デフォルト以外"
21746 "のアドレスに送信可能である。 パケットを受信するために、まずソケットを B<bind>"
21747 "(2) を用いてローカルなアドレスにバインドさせることもできる。 そうでない場合"
21748 "は、ソケット層は自動的に I</proc/sys/net/ipv4/ip_local_port_range> で定義され"
21749 "ている範囲の外で空いているローカルなポートを割り当て、 ソケットを "
21750 "B<INADDR_ANY> にバインドする。"
21752 #. type: Plain text
21753 #: build/C/man7/udp.7:66
21755 "All receive operations return only one packet. When the packet is smaller "
21756 "than the passed buffer, only that much data is returned; when it is bigger, "
21757 "the packet is truncated and the B<MSG_TRUNC> flag is set. B<MSG_WAITALL> is "
21760 "受信動作はパケットを一つだけ返す。渡したバッファよりもパケットが 小さければ、"
21761 "そのパケットの大きさのデータだけが返される。 逆にバッファよりも大きい場合はパ"
21762 "ケットは丸められ、 B<MSG_TRUNC> フラグがセットされる。 B<MSG_WAITALL> はサ"
21765 #. type: Plain text
21766 #: build/C/man7/udp.7:75
21768 "IP options may be sent or received using the socket options described in "
21769 "B<ip>(7). They are processed by the kernel only when the appropriate I</"
21770 "proc> parameter is enabled (but still passed to the user even when it is "
21771 "turned off). See B<ip>(7)."
21773 "IP オプションは、 B<ip>(7) に記述されているソケットオプションを用いて読み書"
21774 "きできる。 これらは適切な I</proc> パラメータが有効な場合に限ってカーネルに"
21775 "よって処理される (しかし無効になっている場合でもユーザーには渡される)。 B<ip>"
21778 #. type: Plain text
21779 #: build/C/man7/udp.7:80
21781 "When the B<MSG_DONTROUTE> flag is set on sending, the destination address "
21782 "must refer to a local interface address and the packet is sent only to that "
21785 "B<MSG_DONTROUTE> フラグが送信時にセットされている場合には、 行き先アドレスは"
21786 "ローカルなインターフェースアドレスから 参照できなければならない。パケットはそ"
21787 "のインターフェースにしか送られない。"
21789 #. type: Plain text
21790 #: build/C/man7/udp.7:98
21792 "By default, Linux UDP does path MTU (Maximum Transmission Unit) discovery. "
21793 "This means the kernel will keep track of the MTU to a specific target IP "
21794 "address and return B<EMSGSIZE> when a UDP packet write exceeds it. When "
21795 "this happens, the application should decrease the packet size. Path MTU "
21796 "discovery can be also turned off using the B<IP_MTU_DISCOVER> socket option "
21797 "or the I</proc/sys/net/ipv4/ip_no_pmtu_disc> file; see B<ip>(7) for "
21798 "details. When turned off, UDP will fragment outgoing UDP packets that "
21799 "exceed the interface MTU. However, disabling it is not recommended for "
21800 "performance and reliability reasons."
21802 "デフォルトでは、Linux の UDP は Path MTU Discovery を行う。 つまり、カーネル"
21803 "は特定の宛先 IP アドレスの MTU (Maximum Transmission Unit; 最大転送単位) を記"
21804 "録し、UDP パケットの書き込みが MTU を超えた場合 B<EMSGSIZE> を返す。 "
21805 "B<EMSGSIZE> を返された場合、アプリケーションはパケットサイズを小さくすべきで"
21806 "ある。 ソケットオプション B<IP_MTU_DISCOVER> または I</proc/sys/net/ipv4/"
21807 "ip_no_pmtu_disc> ファイルを使って Path MTU Discovery を無効にすることもでき"
21808 "る (詳細は B<ip>(7) を参照)。 Path MTU Discovery を無効にした場合は、パケッ"
21809 "トサイズが インタフェースの MTU よりも大きいと UDP はそのパケットを フラグメ"
21810 "ント化して送出する。 しかしながら、性能と信頼性の理由から Path MTU Discovery "
21813 #. type: Plain text
21814 #: build/C/man7/udp.7:103
21815 msgid "UDP uses the IPv4 I<sockaddr_in> address format described in B<ip>(7)."
21817 "UDP は IPv4 の I<sockaddr_in> アドレスフォーマットを用いる。これは B<ip>(7) "
21820 #. type: Plain text
21821 #: build/C/man7/udp.7:114
21823 "All fatal errors will be passed to the user as an error return even when the "
21824 "socket is not connected. This includes asynchronous errors received from "
21825 "the network. You may get an error for an earlier packet that was sent on "
21826 "the same socket. This behavior differs from many other BSD socket "
21827 "implementations which don't pass any errors unless the socket is connected. "
21828 "Linux's behavior is mandated by B<RFC\\ 1122>."
21830 "致命的なエラーは、たとえソケットが接続されていなくても、 すべてエラー戻り値と"
21831 "してユーザーに渡される。 これにはネットワークから受け取る非同期エラーも含まれ"
21832 "る。 同じソケットを使って送信した昔のパケットに関するエラーを受け取るかもしれ"
21833 "ない。 この振る舞いは他の BSD ソケットの実装の多くとは異なる。 これらではソ"
21834 "ケットが接続されていない場合はエラーを全く返さない。 Linux の振る舞いは B<RFC"
21835 "\\ 1122> での指定に従ったものである。"
21837 #. type: Plain text
21838 #: build/C/man7/udp.7:128
21840 "For compatibility with legacy code, in Linux 2.0 and 2.2 it was possible to "
21841 "set the B<SO_BSDCOMPAT> B<SOL_SOCKET> option to receive remote errors only "
21842 "when the socket has been connected (except for B<EPROTO> and B<EMSGSIZE>). "
21843 "Locally generated errors are always passed. Support for this socket option "
21844 "was removed in later kernels; see B<socket>(7) for further information."
21846 "Linux 2.0 と 2.2 では、古いコードとの互換性のために、 B<SO_BSDCOMPAT> "
21847 "B<SOL_SOCKET> オプションを設定すれば、ソケットが接続されている 場合に限ってリ"
21848 "モートのエラーを受信するようにできた (B<EPROTO> と B<EMSGSIZE> を除く)。 ロー"
21849 "カルで生成されたエラーは常に渡される。 このソケットオプションのサポートはそれ"
21850 "以降のバージョンの Linux で 削除された。詳細は B<socket>(7) を参照。"
21852 #. type: Plain text
21853 #: build/C/man7/udp.7:137
21855 "When the B<IP_RECVERR> option is enabled, all errors are stored in the "
21856 "socket error queue, and can be received by B<recvmsg>(2) with the "
21857 "B<MSG_ERRQUEUE> flag set."
21859 "B<IP_RECVERR> オプションが有効になっていると、 すべてのエラーはソケットのエ"
21860 "ラーキューに保存される。 これは B<MSG_ERRQUEUE> フラグをセットして B<recvmsg>"
21863 #. type: Plain text
21864 #: build/C/man7/udp.7:140
21866 "System-wide UDP parameter settings can be accessed by files in the directory "
21867 "I</proc/sys/net/ipv4/>."
21869 "システム全体の UDP パラメータ設定には、 I</proc/sys/net/ipv4/> ディレクトリ内"
21870 "のファイルの読み書きでアクセスできる。"
21873 #: build/C/man7/udp.7:140
21875 msgid "I<udp_mem> (since Linux 2.6.25)"
21876 msgstr "I<udp_mem> (Linux 2.6.25 以降)"
21878 #. type: Plain text
21879 #: build/C/man7/udp.7:144
21881 "This is a vector of three integers governing the number of pages allowed for "
21882 "queueing by all UDP sockets."
21884 "これは 3 つの整数からなるベクトル値で、 UDP の全ソケットのキューで利用可能な"
21887 #. type: Plain text
21888 #: build/C/man7/udp.7:151
21890 "Below this number of pages, UDP is not bothered about its memory appetite. "
21891 "When the amount of memory allocated by UDP exceeds this number, UDP starts "
21892 "to moderate memory usage."
21894 "このページ数より少なければ、UDP はそのメモリ使用に関して 干渉されない。 UDP "
21895 "に割り当てられたメモリ総量がこの値を超過すると、 UDP はメモリ使用量を調整し始"
21898 #. type: Plain text
21899 #: build/C/man7/udp.7:157
21901 "This value was introduced to follow the format of I<tcp_mem> (see B<tcp>(7))."
21903 "この値は I<tcp_mem> の形式 (B<tcp>(7) 参照) と合わせるために導入された"
21905 #. type: Plain text
21906 #: build/C/man7/udp.7:160
21907 msgid "Number of pages allowed for queueing by all UDP sockets."
21908 msgstr "UDP の全ソケットのキューで利用可能なページ数。"
21910 #. type: Plain text
21911 #: build/C/man7/udp.7:164
21913 "Defaults values for these three items are calculated at boot time from the "
21914 "amount of available memory."
21916 "これらの 3 つの値のデフォルト値は、 ブート時に利用可能なメモリ総量から計算さ"
21920 #: build/C/man7/udp.7:164
21922 msgid "I<udp_rmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
21923 msgstr "I<udp_rmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
21925 #. type: Plain text
21926 #: build/C/man7/udp.7:171
21928 "Minimal size, in bytes, of receive buffers used by UDP sockets in "
21929 "moderation. Each UDP socket is able to use the size for receiving data, "
21930 "even if total pages of UDP sockets exceed I<udp_mem> pressure."
21932 "メモリ使用量の調整中に、UDP ソケットが使用できる受信バッファの最小値 (バイト"
21933 "単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過して"
21934 "いる場合であっても、 各 UDP ソケットはデータの受信にこのサイズ分だけは使用す"
21938 #: build/C/man7/udp.7:171
21940 msgid "I<udp_wmem_min> (integer; default value: PAGE_SIZE; since Linux 2.6.25)"
21941 msgstr "I<udp_wmem_min> (integer; デフォルト値: PAGE_SIZE; Linux 2.6.25 以降)"
21943 #. type: Plain text
21944 #: build/C/man7/udp.7:178
21946 "Minimal size, in bytes, of send buffer used by UDP sockets in moderation. "
21947 "Each UDP socket is able to use the size for sending data, even if total "
21948 "pages of UDP sockets exceed I<udp_mem> pressure."
21950 "メモリ使用量の調整中に、UDP ソケットが使用できる送信バッファの最小値 (バイト"
21951 "単位)。 UDP の全ソケットのページ使用量の合計が I<udp_mem> pressure を超過して"
21952 "いる場合であっても、 各 UDP ソケットはデータの送信にこのサイズ分だけは使用す"
21955 #. type: Plain text
21956 #: build/C/man7/udp.7:189
21958 "To set or get a UDP socket option, call B<getsockopt>(2) to read or "
21959 "B<setsockopt>(2) to write the option with the option level argument set to "
21960 "B<IPPROTO_UDP>. Unless otherwise noted, I<optval> is a pointer to an I<int>."
21962 "UDP ソケットオプションを設定または取得するには、 取得には B<getsockopt>(2) "
21963 "を、設定には B<setsockopt>(2) をオプションレベル引数に B<IPPROTO_UDP> を指定"
21964 "して呼び出す。 注釈がない限り、 I<optval> は I<int> へのポインタである。"
21967 #: build/C/man7/udp.7:189
21969 msgid "B<UDP_CORK> (since Linux 2.5.44)"
21970 msgstr "B<UDP_CORK> (Linux 2.5.44 以降)"
21972 #. FIXME document UDP_ENCAP (new in kernel 2.5.67)
21973 #. From include/linux/udp.h:
21974 #. /* UDP encapsulation types */
21975 #. #define UDP_ENCAP_ESPINUDP_NON_IKE 1 /* draft-ietf-ipsec-nat-t-ike-00/01 */
21976 #. #define UDP_ENCAP_ESPINUDP 2 /* draft-ietf-ipsec-udp-encaps-06 */
21977 #. #define UDP_ENCAP_L2TPINUDP 3 /* rfc2661 */
21978 #. type: Plain text
21979 #: build/C/man7/udp.7:202
21981 "If this option is enabled, then all data output on this socket is "
21982 "accumulated into a single datagram that is transmitted when the option is "
21983 "disabled. This option should not be used in code intended to be portable."
21985 "このオプションが指定されると、このソケットの全てのデータ出力は 一つのデータグ"
21986 "ラムに蓄積され、このオプションが無効化された時に 送信される。 このオプション"
21987 "は移植性を考慮したコードでは用いるべきではない。"
21989 #. type: Plain text
21990 #: build/C/man7/udp.7:206
21991 msgid "These ioctls can be accessed using B<ioctl>(2). The correct syntax is:"
21993 "以下に示す ioctl は B<ioctl>(2) を使ってアクセスできる。 正しい文法は以下の"
21996 #. type: Plain text
21997 #: build/C/man7/udp.7:211
22000 "B<int>I< value>B<;>\n"
22001 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22003 "B<int>I< value>B<;>\n"
22004 "I<error>B< = ioctl(>I<udp_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22007 #: build/C/man7/udp.7:213
22009 msgid "B<FIONREAD> (B<SIOCINQ>)"
22010 msgstr "B<FIONREAD> (B<SIOCINQ>)"
22012 #. See http://www.securiteam.com/unixfocus/5KP0I15IKO.html
22013 #. "GNUnet DoS (UDP Socket Unreachable)", 14 May 2006
22014 #. type: Plain text
22015 #: build/C/man7/udp.7:231
22017 "Gets a pointer to an integer as argument. Returns the size of the next "
22018 "pending datagram in the integer in bytes, or 0 when no datagram is pending. "
22019 "B<Warning:> Using B<FIONREAD>, it is impossible to distinguish the case "
22020 "where no datagram is pending from the case where the next pending datagram "
22021 "contains zero bytes of data. It is safer to use B<select>(2), B<poll>(2), "
22022 "or B<epoll>(7) to distinguish these cases."
22024 "整数へのポインタを引き数に取り、そのポインタに、次の処理待ちのデータグラム"
22026 "サイズをバイト単位で返す。処理待ちのデータグラムがない場合は 0 を返す。\n"
22027 "B<警告>: B<FIONREAD> を使った場合、処理待ちのデータグラムがない場合と、\n"
22028 "次の処理待ちデータグラムが 0 バイトのデータの場合を区別することができない。\n"
22029 "この両者を区別したい場合は、B<select>(2), B<poll>(2), B<epoll>(7) \n"
22033 #: build/C/man7/udp.7:231
22035 msgid "B<TIOCOUTQ> (B<SIOCOUTQ>)"
22036 msgstr "B<TIOCOUTQ> (B<SIOCOUTQ>)"
22038 #. type: Plain text
22039 #: build/C/man7/udp.7:235
22041 "Returns the number of data bytes in the local send queue. Only supported "
22042 "with Linux 2.4 and above."
22044 "ローカル送信キューにあるデータサイズをバイト単位で返す。 Linux 2.4 以上でのみ"
22047 #. type: Plain text
22048 #: build/C/man7/udp.7:241
22050 "In addition, all ioctls documented in B<ip>(7) and B<socket>(7) are "
22053 "さらに、 B<ip>(7) と B<socket>(7) で述べられている全ての ioctl も対応してい"
22056 #. type: Plain text
22057 #: build/C/man7/udp.7:247
22059 "All errors documented for B<socket>(7) or B<ip>(7) may be returned by a "
22060 "send or receive on a UDP socket."
22062 "B<socket>(7) や B<ip>(7) に記述されている全てのエラーが、 UDP ソケットの送"
22066 #: build/C/man7/udp.7:247 build/C/man7/unix.7:327
22068 msgid "B<ECONNREFUSED>"
22069 msgstr "B<ECONNREFUSED>"
22071 #. type: Plain text
22072 #: build/C/man7/udp.7:251
22074 "No receiver was associated with the destination address. This might be "
22075 "caused by a previous packet sent over the socket."
22077 "行き先アドレスに関連づけられている受信者がいない。 これは以前のパケットがその"
22078 "パケットを 上書き送信してしまっているからであることが多い。"
22081 #. This man page was written by Andi Kleen.
22082 #. type: Plain text
22083 #: build/C/man7/udp.7:256
22084 msgid "B<IP_RECVERR> is a new feature in Linux 2.2."
22085 msgstr "B<IP_RECVERR> は Linux 2.2 の新しい機能である。"
22087 #. type: Plain text
22088 #: build/C/man7/udp.7:261
22089 msgid "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
22090 msgstr "B<ip>(7), B<raw>(7), B<socket>(7), B<udplite>(7)"
22092 #. type: Plain text
22093 #: build/C/man7/udp.7:263
22094 msgid "RFC\\ 768 for the User Datagram Protocol."
22095 msgstr "RFC\\ 768 : User Datagram Protocol"
22097 #. type: Plain text
22098 #: build/C/man7/udp.7:265
22099 msgid "RFC\\ 1122 for the host requirements."
22100 msgstr "RFC\\ 1122 : ホストの必要条件"
22102 #. type: Plain text
22103 #: build/C/man7/udp.7:267
22104 msgid "RFC\\ 1191 for a description of path MTU discovery."
22105 msgstr "RFC\\ 1191 : path MTU discovery の記述"
22108 #: build/C/man7/udplite.7:27
22114 #: build/C/man7/udplite.7:27
22117 msgstr "2008-12-03"
22119 #. type: Plain text
22120 #: build/C/man7/udplite.7:30
22121 msgid "udplite - Lightweight User Datagram Protocol"
22122 msgstr "udplite - 軽量なユーザーデータグラムプロトコル"
22124 #. type: Plain text
22125 #: build/C/man7/udplite.7:38
22126 msgid "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
22127 msgstr "B<sockfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDPLITE);>"
22129 #. type: Plain text
22130 #: build/C/man7/udplite.7:41
22132 "This is an implementation of the Lightweight User Datagram Protocol (UDP-"
22133 "Lite), as described in RFC\\ 3828."
22135 "これは RFC\\ 3828 に書かれている軽量なユーザーデータグラムプロトコル "
22136 "(Lightweight User Datagram Protocol; UDP-Lite) の実装である。"
22138 #. type: Plain text
22139 #: build/C/man7/udplite.7:47
22141 "UDP-Lite is an extension of UDP (RFC\\ 768) to support variable-length "
22142 "checksums. This has advantages for some types of multimedia transport that "
22143 "may be able to make use of slightly damaged datagrams, rather than having "
22144 "them discarded by lower-layer protocols."
22146 "UDP-Lite は UDP (RFC\\ 768) の拡張で、可変長のチェックサムをサポートしてい"
22147 "る。 このプロトコルが効果を発揮するのは、少しだけ壊れたデータグラムがあった場"
22148 "合に、 そのデータグラムを下位レイヤーのプロトコルに廃棄させるのではなく、 そ"
22149 "れを利用することができるような、ある種のマルチメディア転送においてである。"
22151 #. type: Plain text
22152 #: build/C/man7/udplite.7:53
22154 "The variable-length checksum coverage is set via a B<setsockopt>(2) "
22155 "option. If this option is not set, the only difference to UDP is in using a "
22156 "different IP protocol identifier (IANA number 136)."
22158 "可変長のチェックサムの対象範囲は B<setsockopt>(2) オプション経由で設定され"
22159 "る。 このオプションが設定されていない場合、UDP と異なるのは 違う IP プロトコ"
22160 "ル識別子 (IANA 番号 136) を使用する点だけである。"
22162 #. type: Plain text
22163 #: build/C/man7/udplite.7:58
22165 "The UDP-Lite implementation is a full extension of B<udp>(7)\\(emthat is, it "
22166 "shares the same API and API behaviour, and in addition offers two socket "
22167 "options to control the checksum coverage."
22169 "UDP-Lite の実装は B<udp>(7) の完全な拡張、すなわち API と API の動作は同じで"
22170 "ある。 これに加えて、2 つのソケットオプションがチェックサムの対象範囲を 制御"
22173 #. type: Plain text
22174 #: build/C/man7/udplite.7:67
22176 "UDP-Litev4 uses the I<sockaddr_in> address format described in B<ip>(7). "
22177 "UDP-Litev6 uses the I<sockaddr_in6> address format described in B<ipv6>(7)."
22179 "UDP-Litev4 は B<ip>(7) で説明されている I<sockaddr_in> アドレスを使用する。 "
22180 "UDP-Litev6 は B<ipv6>(7) で説明されている I<sockaddr_in6> アドレスを使用す"
22183 #. type: Plain text
22184 #: build/C/man7/udplite.7:80
22186 "To set or get a UDP-Lite socket option, call B<getsockopt>(2) to read or "
22187 "B<setsockopt>(2) to write the option with the option level argument set to "
22188 "B<IPPROTO_UDPLITE>. In addition, all B<IPPROTO_UDP> socket options are "
22189 "valid on a UDP-Lite socket. See B<udp>(7) for more information."
22191 "UDP-Lite のソケットオプションを設定/取得するには、 オプションレベル引き数に "
22192 "B<IPPROTO_UDPLITE> を指定して、取得時には B<getsockopt>(2) を、設定時には "
22193 "B<setsockopt>(2) を呼び出す。さらに、全ての B<IPPROTO_UDP> のソケットオプ"
22194 "ションが UDP-Lite ソケットでも使用できる。 詳細は B<udp>(7) を参照のこと。"
22196 #. type: Plain text
22197 #: build/C/man7/udplite.7:82
22198 msgid "The following two options are specific to UDP-Lite."
22199 msgstr "以下の 2 つが UDP-Lite に固有のオプションである。"
22202 #: build/C/man7/udplite.7:82
22204 msgid "B<UDPLITE_SEND_CSCOV>"
22205 msgstr "B<UDPLITE_SEND_CSCOV>"
22207 #. type: Plain text
22208 #: build/C/man7/udplite.7:87
22210 "This option sets the sender checksum coverage and takes an I<int> as "
22211 "argument, with a checksum coverage value in the range 0..2^16-1."
22213 "このオプションは送信側のチェックサムの対象範囲を設定する。 I<int> 型を引き数"
22214 "として取り、設定可能な値の範囲は 0 から 2^16-1 までである。"
22216 #. type: Plain text
22217 #: build/C/man7/udplite.7:91
22219 "A value of 0 means that the entire datagram is always covered. Values from "
22220 "1-7 are illegal (RFC\\ 3828, 3.1) and are rounded up to the minimum coverage "
22223 "値 0 はデータグラム全体が常にチェックサムの対象となることを意味する。 値 1〜"
22224 "7 は不正であり (RFC\\ 3828 の 3.1 章)、範囲の設定として最小値である 8 に切り"
22227 #. type: Plain text
22228 #: build/C/man7/udplite.7:97
22230 "With regard to IPv6 jumbograms (RFC\\ 2675), the UDP-Litev6 checksum "
22231 "coverage is limited to the first 2^16-1 octets, as per RFC\\ 3828, 3.5. "
22232 "Higher values are therefore silently truncated to 2^16-1. If in doubt, the "
22233 "current coverage value can always be queried using B<getsockopt>(2)."
22235 "IPv6 の jumbograms (巨大なデータグラム; RFC\\ 2675) の場合には、 UDP-Litev6 "
22236 "のチェックサムの対象範囲は、RFC\\ 3828 の 3.5 章にあるように、 先頭から "
22237 "2^16-1 オクテットまでに限定される。 そのため、それより大きな値は 2^16-1 に"
22238 "黙って切り詰められる。 現在の対象範囲の値を知りたければ、いつでも "
22239 "B<getsockopt>(2) を使って値を問い合わせることができる。"
22242 #: build/C/man7/udplite.7:97
22244 msgid "B<UDPLITE_RECV_CSCOV>"
22245 msgstr "B<UDPLITE_RECV_CSCOV>"
22247 #. type: Plain text
22248 #: build/C/man7/udplite.7:108
22250 "This is the receiver-side analogue and uses the same argument format and "
22251 "value range as B<UDPLITE_SEND_CSCOV>. This option is not required to enable "
22252 "traffic with partial checksum coverage. Its function is that of a traffic "
22253 "filter: when enabled, it instructs the kernel to drop all packets which have "
22254 "a coverage I<less> than the specified coverage value."
22256 "これは受信側のチェックサムの対象範囲を設定するもので、 使用される引き数形式と"
22257 "値の範囲は B<UDPLITE_SEND_CSCOV> と同じである。 このオプションは、部分的な"
22258 "チェックサム対象範囲を持つトラフィックを 有効にするのに必要なわけではなく、ト"
22259 "ラフィックフィルターとして機能する。 このオプションが有効にすると、カーネルは"
22260 "指定されたチェックサム対象範囲 よりも「短かい」対象範囲を持つパケットを全て廃"
22263 #. SO_NO_CHECK exists and is supported by UDPv4, but is
22264 #. commented out in socket(7), hence also commented out here
22266 #. Since UDP-Lite mandates checksums, checksumming can not be disabled
22271 #. type: Plain text
22272 #: build/C/man7/udplite.7:121
22274 "When the value of B<UDPLITE_RECV_CSCOV> exceeds the actual packet coverage, "
22275 "incoming packets are silently dropped, but may generate a warning message in "
22278 "B<UDPLITE_RECV_CSCOV> の値が実際のパケットのチェックサム対象範囲よりも大きい"
22279 "場合、 受信したパケットは黙って廃棄される。 ただし、システムログに対して警告"
22280 "メッセージが生成されるかもしれない。"
22282 #. type: Plain text
22283 #: build/C/man7/udplite.7:126
22285 "All errors documented for B<udp>(7) may be returned. UDP-Lite does not add "
22288 "B<udp>(7) について書かれている全てのエラーは返る可能性がある。 UDP-Lite 自体"
22291 #. type: Plain text
22292 #: build/C/man7/udplite.7:129
22293 msgid "I</proc/net/snmp> - basic UDP-Litev4 statistics counters."
22294 msgstr "I</proc/net/snmp> - UDP-Litev4 の基本的な統計情報カウンター。"
22296 #. type: Plain text
22297 #: build/C/man7/udplite.7:132
22298 msgid "I</proc/net/snmp6> - basic UDP-Litev6 statistics counters."
22299 msgstr "I</proc/net/snmp6> - UDP-Litev6 の基本的な統計情報カウンター。"
22301 #. type: Plain text
22302 #: build/C/man7/udplite.7:134
22303 msgid "UDP-Litev4/v6 first appeared in Linux 2.6.20."
22304 msgstr "UDP-Litev4/v6 は Linux 2.6.20 で初めて登場した。"
22306 #. FIXME . remove this section once glibc supports UDP-Lite
22307 #. type: Plain text
22308 #: build/C/man7/udplite.7:137
22309 msgid "Where glibc support is missing, the following definitions are needed:"
22310 msgstr "glibc によるサポートがない場合は、以下の定義を行う必要がある。"
22312 #. The following two are defined in the kernel in linux/net/udplite.h
22313 #. type: Plain text
22314 #: build/C/man7/udplite.7:144
22317 "#define IPPROTO_UDPLITE 136\n"
22318 "#define UDPLITE_SEND_CSCOV 10\n"
22319 "#define UDPLITE_RECV_CSCOV 11\n"
22321 "#define IPPROTO_UDPLITE 136\n"
22322 "#define UDPLITE_SEND_CSCOV 10\n"
22323 "#define UDPLITE_RECV_CSCOV 11\n"
22325 #. type: Plain text
22326 #: build/C/man7/udplite.7:151
22327 msgid "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
22328 msgstr "B<ip>(7), B<ipv6>(7), B<socket>(7), B<udp>(7)"
22330 #. type: Plain text
22331 #: build/C/man7/udplite.7:153
22332 msgid "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)."
22333 msgstr "RFC\\ 3828 for the Lightweight User Datagram Protocol (UDP-Lite)."
22335 #. type: Plain text
22336 #: build/C/man7/udplite.7:156
22337 msgid "I<Documentation/networking/udplite.txt> in the Linux kernel source tree"
22338 msgstr "Linux カーネルソース内の I<Documentation/networking/udplite.txt>"
22341 #: build/C/man7/unix.7:18
22346 #. type: Plain text
22347 #: build/C/man7/unix.7:21
22348 msgid "unix - sockets for local interprocess communication"
22349 msgstr "unix - ローカルな プロセス間通信用のソケット"
22351 #. type: Plain text
22352 #: build/C/man7/unix.7:25
22353 msgid "B<#include E<lt>sys/un.hE<gt>>"
22354 msgstr "B<#include E<lt>sys/un.hE<gt>>"
22356 #. type: Plain text
22357 #: build/C/man7/unix.7:27
22358 msgid "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
22359 msgstr "I<unix_socket>B< = socket(AF_UNIX, type, 0);>"
22361 #. type: Plain text
22362 #: build/C/man7/unix.7:29
22363 msgid "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
22364 msgstr "I<error>B< = socketpair(AF_UNIX, type, 0, int *>I<sv>B<);>"
22366 #. type: Plain text
22367 #: build/C/man7/unix.7:40
22369 "The B<AF_UNIX> (also known as B<AF_LOCAL>) socket family is used to "
22370 "communicate between processes on the same machine efficiently. "
22371 "Traditionally, UNIX domain sockets can be either unnamed, or bound to a "
22372 "filesystem pathname (marked as being of type socket). Linux also supports "
22373 "an abstract namespace which is independent of the filesystem."
22375 "B<AF_UNIX> (B<AF_LOCAL> とも言われる) ソケットファミリーは、同じマシン上で\n"
22376 "プロセス同士が 効率的に通信するために用いられる。伝統的に、UNIX ドメイン\n"
22377 "ソケットは、名前なしにもできるし、 (ソケット型であると印のついた) ファイル\n"
22378 "システムのパス名に 結び付けることもできる。さらに Linux では、ファイル\n"
22379 "システムに依存しない抽象名前空間 (abstract namespace) もサポートしている。"
22381 #. type: Plain text
22382 #: build/C/man7/unix.7:52
22384 "Valid types are: B<SOCK_STREAM>, for a stream-oriented socket and "
22385 "B<SOCK_DGRAM>, for a datagram-oriented socket that preserves message "
22386 "boundaries (as on most UNIX implementations, UNIX domain datagram sockets "
22387 "are always reliable and don't reorder datagrams); and (since Linux 2.6.4) "
22388 "B<SOCK_SEQPACKET>, for a connection-oriented socket that preserves message "
22389 "boundaries and delivers messages in the order that they were sent."
22391 "有効なタイプを以下に示す。 B<SOCK_STREAM> はストリーム指向のソケットであ"
22393 "B<SOCK_DGRAM> はメッセージ境界を保存するデータグラム指向のソケットである\n"
22394 "(ほとんどの UNIX の実装では、UNIX ドメイン・データグラム・ソケットは 常に\n"
22395 "信頼でき、データグラムの並び替えは行わない)。 \n"
22396 "B<SOCK_SEQPACKET> はメッセージ境界を保存し、送信された順序でメッセージを\n"
22397 "届ける接続指向ソケット である (Linux 2.6.4 以降で利用できる)。"
22399 #. type: Plain text
22400 #: build/C/man7/unix.7:55
22402 "UNIX domain sockets support passing file descriptors or process credentials "
22403 "to other processes using ancillary data."
22405 "UNIX ドメインソケットでは、補助データを使って ファイルディスクリプタや\n"
22406 "プロセスの信任状 (credential) を 送受信することもできる。"
22408 #. type: Plain text
22409 #: build/C/man7/unix.7:57
22410 msgid "A UNIX domain socket address is represented in the following structure:"
22411 msgstr "UNIX ドメインソケットのアドレスは以下の構造体で表現される。"
22413 #. type: Plain text
22414 #: build/C/man7/unix.7:61
22416 msgid "#define UNIX_PATH_MAX 108\n"
22417 msgstr "#define UNIX_PATH_MAX 108\n"
22419 #. type: Plain text
22420 #: build/C/man7/unix.7:66
22423 "struct sockaddr_un {\n"
22424 " sa_family_t sun_family; /* AF_UNIX */\n"
22425 " char sun_path[UNIX_PATH_MAX]; /* pathname */\n"
22428 "struct sockaddr_un {\n"
22429 " sa_family_t sun_family; /* AF_UNIX */\n"
22430 " char sun_path[UNIX_PATH_MAX]; /* pathname */\n"
22433 #. type: Plain text
22434 #: build/C/man7/unix.7:72
22435 msgid "I<sun_family> always contains B<AF_UNIX>."
22436 msgstr "I<sun_family> には必ず B<AF_UNIX> が入っている。"
22438 #. type: Plain text
22439 #: build/C/man7/unix.7:74
22440 msgid "Three types of address are distinguished in this structure:"
22441 msgstr "この構造体では 3 種類のアドレスが区別される。"
22443 #. type: Plain text
22444 #: build/C/man7/unix.7:85
22446 "I<pathname>: a UNIX domain socket can be bound to a null-terminated "
22447 "filesystem pathname using B<bind>(2). When the address of the socket is "
22448 "returned by B<getsockname>(2), B<getpeername>(2), and B<accept>(2), its "
22451 "I<pathname (パス名)>: B<bind>(2) を使って、UNIX ドメインソケットを NULL 終端"
22452 "されたファイルシステム上の パス名に結び付けることができる。 B<getsockname>"
22453 "(2), B<getpeername>(2), B<accept>(2) がソケットのアドレスを返す際には、その長"
22456 #. type: Plain text
22457 #: build/C/man7/unix.7:87
22459 msgid " offsetof(struct sockaddr_un, sun_path) + strlen(sun_path) + 1\n"
22460 msgstr " offsetof(struct sockaddr_un, sun_path) + strlen(sun_path) + 1\n"
22462 #. type: Plain text
22463 #: build/C/man7/unix.7:91
22464 msgid "and I<sun_path> contains the null-terminated pathname."
22465 msgstr "であり、 I<sun_path> に NULL 終端されたパス名が格納される。"
22467 #. There is quite some variation across implementations: FreeBSD
22468 #. says the length is 16 bytes, HP-UX 11 says it's zero bytes.
22469 #. type: Plain text
22470 #: build/C/man7/unix.7:111
22472 "I<unnamed>: A stream socket that has not been bound to a pathname using "
22473 "B<bind>(2) has no name. Likewise, the two sockets created by B<socketpair>"
22474 "(2) are unnamed. When the address of an unnamed socket is returned by "
22475 "B<getsockname>(2), B<getpeername>(2), and B<accept>(2), its length is "
22476 "I<sizeof(sa_family_t)>, and I<sun_path> should not be inspected."
22478 "I<unnamed (名前なし)>: B<bind>(2) を使ってパス名に結び付けることができないス"
22479 "トリーム型のソケットは 名前を持たない。同様に、 B<socketpair>(2) で作成され"
22480 "る 2 つのソケットも名前を持たない。 B<getsockname>(2), B<getpeername>(2), "
22481 "B<accept>(2) が名前なしのソケットのアドレスを返す際には、 その長さは "
22482 "I<sizeof(sa_family_t)> であり、 I<sun_path> は検査すべきではない。"
22484 #. type: Plain text
22485 #: build/C/man7/unix.7:137
22487 "I<abstract>: an abstract socket address is distinguished by the fact that "
22488 "I<sun_path[0]> is a null byte (\\(aq\\e0\\(aq). The socket's address in "
22489 "this namespace is given by the additional bytes in I<sun_path> that are "
22490 "covered by the specified length of the address structure. (Null bytes in "
22491 "the name have no special significance.) The name has no connection with "
22492 "filesystem pathnames. When the address of an abstract socket is returned by "
22493 "B<getsockname>(2), B<getpeername>(2), and B<accept>(2), the returned "
22494 "I<addrlen> is greater than I<sizeof(sa_family_t)> (i.e., greater than 2), "
22495 "and the name of the socket is contained in the first I<(addrlen - sizeof"
22496 "(sa_family_t))> bytes of I<sun_path>. The abstract socket namespace is a "
22497 "nonportable Linux extension."
22499 "I<abstract (抽象)>: 抽象ソケットアドレスは、 I<sun_path[0]> が NULL バイト\n"
22500 "(\\(aq\\e0\\(aq) であることで区別される。この名前空間におけるソケットのアドレ"
22502 "は、 I<sun_path> の残りのバイトの、アドレス構造体の指定された長さの範囲で表"
22504 "れる (名前中の NULL バイトには特別な意味はない)。この名前はファイルシステム"
22506 "パス名とは何の関係もない。 B<getsockname>(2), B<getpeername>(2),\n"
22507 "B<accept>(2) が抽象ソケットのアドレスを返す際には、返される I<addrlen> は\n"
22508 "I<sizeof(sa_family_t)> より大きく (つまり 2 より大きく)、ソケットの名前は\n"
22509 "I<sun_path> の最初の I<(addrlen - sizeof(sa_family_t))> バイトに格納され"
22511 "ソケットの抽象名前空間は Linux による拡張であり、移植性はない。"
22513 #. type: Plain text
22514 #: build/C/man7/unix.7:150
22516 "For historical reasons these socket options are specified with a "
22517 "B<SOL_SOCKET> type even though they are B<AF_UNIX> specific. They can be "
22518 "set with B<setsockopt>(2) and read with B<getsockopt>(2) by specifying "
22519 "B<SOL_SOCKET> as the socket family."
22521 "歴史的な理由により、これらのオプションは たとえ B<AF_UNIX> 固有のオプションで"
22522 "あっても B<SOL_SOCKET> 型で指定する。 ソケットファミリーとして B<SOL_SOCKET> "
22523 "を指定すると、 B<setsockopt>(2) でオプションが設定でき、 B<getsockopt>(2) "
22527 #: build/C/man7/unix.7:150
22529 msgid "B<SO_PASSCRED>"
22530 msgstr "B<SO_PASSCRED>"
22532 #. type: Plain text
22533 #: build/C/man7/unix.7:157
22535 "Enables the receiving of the credentials of the sending process in an "
22536 "ancillary message. When this option is set and the socket is not yet "
22537 "connected a unique name in the abstract namespace will be generated "
22538 "automatically. Expects an integer boolean flag."
22540 "送信プロセスの補助メッセージで信任状を受信できるようにする。このオプション"
22542 "セットされていて、まだソケットが接続されていないと、抽象名前空間に他と重な"
22544 "ない名前が自動的に生成される。ブール整数値のフラグを取る。"
22547 #: build/C/man7/unix.7:157
22549 msgid "Autobind feature"
22550 msgstr "自動バインド (autobind) 機能"
22552 #. i.e., sizeof(short)
22553 #. type: Plain text
22554 #: build/C/man7/unix.7:177
22556 "If a B<bind>(2) call specifies I<addrlen> as I<sizeof(sa_family_t)>, or the "
22557 "B<SO_PASSCRED> socket option was specified for a socket that was not "
22558 "explicitly bound to an address, then the socket is autobound to an abstract "
22559 "address. The address consists of a null byte followed by 5 bytes in the "
22560 "character set I<[0-9a-f]>. Thus, there is a limit of 2^20 autobind "
22561 "addresses. (From Linux 2.1.15, when the autobind feature was added, 8 bytes "
22562 "were used, and the limit was thus 2^32 autobind addresses. The change to 5 "
22563 "bytes came in Linux 2.3.15.)"
22565 "B<bind>(2) 呼び出しで I<sizeof(sa_family_t)> として I<addrlen> を指定する"
22567 "アドレスに明示的にバインドされていないソケットに対して\n"
22568 "B<SO_PASSCRED> ソケットオプションが指定されていた場合、\n"
22569 "そのソケットは抽象アドレスに自動的にバインドされる。\n"
22570 "このアドレスは、1 個の NULL バイトの後に、文字集合 I<[0-9a-f]> のバイトが\n"
22571 "5 個続く形式である。したがって、自動的にバインドされるアドレス数には\n"
22572 "2^20 個という上限が存在する。\n"
22573 "(Linux 2.1.15 以降で、自動バインド機能が追加されたときには、\n"
22574 "8 バイトが使われており、自動バインドアドレス数の上限は 2^32 であった。\n"
22575 "Linux 2.3.15 で 5 バイトに変更された。)"
22577 #. type: Plain text
22578 #: build/C/man7/unix.7:180
22580 "The following paragraphs describe domain-specific details and unsupported "
22581 "features of the sockets API for UNIX domain sockets on Linux."
22583 "この節では、Linux の UNIX ドメインソケットでの、ドメイン固有の詳細仕様と\n"
22584 "ソケット API でサポートされていない機能について説明する。"
22586 #. type: Plain text
22587 #: build/C/man7/unix.7:188
22589 "UNIX domain sockets do not support the transmission of out-of-band data (the "
22590 "B<MSG_OOB> flag for B<send>(2) and B<recv>(2))."
22592 "UNIX ドメインソケットでは、帯域外データ (out-of-band data) の 送信\n"
22593 "(B<send>(2) と B<recv>(2) の B<MSG_OOB> フラグ) はサポートされていない。"
22595 #. type: Plain text
22596 #: build/C/man7/unix.7:193
22598 "The B<send>(2) B<MSG_MORE> flag is not supported by UNIX domain sockets."
22600 "B<send>(2) B<MSG_MORE> フラグは UNIX ドメインソケットではサポートされていな"
22603 #. type: Plain text
22604 #: build/C/man7/unix.7:201
22606 "The use of B<MSG_TRUNC> in the I<flags> argument of B<recv>(2) is not "
22607 "supported by UNIX domain sockets."
22609 "B<recv>(2) の I<flags> 引き数での B<MSG_TRUNC> の使用は UNIX ドメイン\n"
22610 "ソケットではサポートされていない。"
22612 #. type: Plain text
22613 #: build/C/man7/unix.7:213
22615 "The B<SO_SNDBUF> socket option does have an effect for UNIX domain sockets, "
22616 "but the B<SO_RCVBUF> option does not. For datagram sockets, the "
22617 "B<SO_SNDBUF> value imposes an upper limit on the size of outgoing "
22618 "datagrams. This limit is calculated as the doubled (see B<socket>(7)) "
22619 "option value less 32 bytes used for overhead."
22621 "B<SO_SNDBUF> ソケットオプションは UNIX ドメインソケットで効果を持つが、\n"
22622 "B<SO_RCVBUF> は効果がない。 データグラム・ソケットでは、 B<SO_SNDBUF> の値"
22624 "出力データグラムの上限サイズとなる。 実際の上限値は、 B<SO_SNDBUF> オプショ"
22626 "として設定された値の 2倍 (B<socket>(7) 参照) からオーバヘッドとして使用され"
22631 #: build/C/man7/unix.7:213
22633 msgid "Ancillary messages"
22636 #. type: Plain text
22637 #: build/C/man7/unix.7:235
22639 "Ancillary data is sent and received using B<sendmsg>(2) and B<recvmsg>(2). "
22640 "For historical reasons the ancillary message types listed below are "
22641 "specified with a B<SOL_SOCKET> type even though they are B<AF_UNIX> "
22642 "specific. To send them set the I<cmsg_level> field of the struct I<cmsghdr> "
22643 "to B<SOL_SOCKET> and the I<cmsg_type> field to the type. For more "
22644 "information see B<cmsg>(3)."
22646 "補助データを送受するには、 B<sendmsg>(2) や B<recvmsg>(2) を使用する。 歴史"
22647 "的な理由により、以下に示す補助メッセージの型は たとえ B<AF_UNIX> 固有のもので"
22648 "あっても B<SOL_SOCKET> 型で指定する。 これらを送るには、構造体 I<cmsghdr> の "
22649 "I<cmsg_level> フィールドに B<SOL_SOCKET> をセットし、 I<cmsg_type> フィールド"
22650 "にタイプをセットする。 詳細は B<cmsg>(3) を見よ。"
22653 #: build/C/man7/unix.7:235
22655 msgid "B<SCM_RIGHTS>"
22656 msgstr "B<SCM_RIGHTS>"
22658 #. type: Plain text
22659 #: build/C/man7/unix.7:241
22661 "Send or receive a set of open file descriptors from another process. The "
22662 "data portion contains an integer array of the file descriptors. The passed "
22663 "file descriptors behave as though they have been created with B<dup>(2)."
22665 "他のプロセスでオープンされたファイルディスクリプタのセットを送受信する。 デー"
22666 "タ部分にファイルディスクリプタの整数配列が入っている。 渡されたファイルディス"
22667 "クリプタは、あたかも B<dup>(2) で生成されたかのように振る舞う。"
22670 #: build/C/man7/unix.7:241
22672 msgid "B<SCM_CREDENTIALS>"
22673 msgstr "B<SCM_CREDENTIALS>"
22675 #. type: Plain text
22676 #: build/C/man7/unix.7:251
22678 "Send or receive UNIX credentials. This can be used for authentication. The "
22679 "credentials are passed as a I<struct ucred> ancillary message. Thus "
22680 "structure is defined in I<E<lt>sys/socket.hE<gt>> as follows:"
22682 "UNIX 信任状を送受信する。これは認証に用いることができる。\n"
22683 "信任状は I<struct ucred> の補助メッセージとして渡される。\n"
22684 "この構造体は I<E<lt>sys/socket.hE<gt>> で以下のように定義されている。"
22686 #. type: Plain text
22687 #: build/C/man7/unix.7:259
22691 " pid_t pid; /* process ID of the sending process */\n"
22692 " uid_t uid; /* user ID of the sending process */\n"
22693 " gid_t gid; /* group ID of the sending process */\n"
22697 " pid_t pid; /* process ID of the sending process */\n"
22698 " uid_t uid; /* user ID of the sending process */\n"
22699 " gid_t gid; /* group ID of the sending process */\n"
22702 #. type: Plain text
22703 #: build/C/man7/unix.7:268
22705 "Since glibc 2.8, the B<_GNU_SOURCE> feature test macro must be defined "
22706 "(before including I<any> header files) in order to obtain the definition of "
22709 "glibc 2.8 以降では、この構造体の定義を得るためには\n"
22710 "(I<どの>ヘッダファイルをインクルードするよりも前に)\n"
22711 "機能検査マクロ B<_GNU_SOURCE> を定義しなければならない。"
22713 #. type: Plain text
22714 #: build/C/man7/unix.7:284
22716 "The credentials which the sender specifies are checked by the kernel. A "
22717 "process with effective user ID 0 is allowed to specify values that do not "
22718 "match its own. The sender must specify its own process ID (unless it has "
22719 "the capability B<CAP_SYS_ADMIN>), its user ID, effective user ID, or saved "
22720 "set-user-ID (unless it has B<CAP_SETUID>), and its group ID, effective group "
22721 "ID, or saved set-group-ID (unless it has B<CAP_SETGID>). To receive a "
22722 "I<struct ucred> message the B<SO_PASSCRED> option must be enabled on the "
22725 "送信側が指定した信任状は、カーネルがチェックする。 実効ユーザー ID が 0 のプ"
22726 "ロセスには、 自分自身以外の値を指定する事が許される。 送信側は以下の 3 つを指"
22727 "定しなければならない。 1) 自分自身のプロセス ID (B<CAP_SYS_ADMIN> 権限を持っ"
22728 "ていない場合)、 2) 自分自身のユーザー ID あるいは実効ユーザー ID か保存 set-"
22729 "user-ID (B<CAP_SETUID> 権限を持っていない場合)、 3) 自分自身のグループ ID あ"
22730 "るいは実行グループ ID か保存 set-group-ID (B<CAP_SETGID> を持っていない場"
22731 "合)。 I<struct ucred> メッセージを受信するためには、ソケットに対し "
22732 "B<SO_PASSCRED> オプションを有効にしなくてはならない。"
22734 #. type: Plain text
22735 #: build/C/man7/unix.7:295
22738 "B<int>I< value>B<;>\n"
22739 "I<error>B< = ioctl(>I<unix_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22741 "B<int>I< value>B<;>\n"
22742 "I<error>B< = ioctl(>I<unix_socket>B<, >I<ioctl_type>B<, &>I<value>B<);>\n"
22744 #. type: Plain text
22745 #: build/C/man7/unix.7:300
22746 msgid "I<ioctl_type> can be:"
22747 msgstr "I<ioctl_type> には以下を指定できる:"
22749 #. type: Plain text
22750 #: build/C/man7/unix.7:327
22752 "The specified local address is already in use or the filesystem socket "
22753 "object already exists."
22755 "指定したローカルアドレスが既に使用されているか、ファイルシステムの\n"
22756 "ソケットオブジェクトが既に存在している。"
22758 #. type: Plain text
22759 #: build/C/man7/unix.7:333
22761 "The remote address specified by B<connect>(2) was not a listening socket. "
22762 "This error can also occur if the target filename is not a socket."
22764 "B<connect>(2) により指定されたリモートアドレスが接続待ちソケットではなかっ"
22766 "ターゲットアドレスがソケットではない場合にもこのエラーが発生する。"
22769 #: build/C/man7/unix.7:333
22771 msgid "B<ECONNRESET>"
22772 msgstr "B<ECONNRESET>"
22774 #. type: Plain text
22775 #: build/C/man7/unix.7:336
22776 msgid "Remote socket was unexpectedly closed."
22777 msgstr "リモートソケットが予期しないかたちでクローズされた。"
22779 #. type: Plain text
22780 #: build/C/man7/unix.7:339
22781 msgid "User memory address was not valid."
22782 msgstr "ユーザーメモリアドレスが不正。"
22784 #. type: Plain text
22785 #: build/C/man7/unix.7:348
22787 "Invalid argument passed. A common cause is that the value B<AF_UNIX> was "
22788 "not specified in the I<sun_type> field of passed addresses, or the socket "
22789 "was in an invalid state for the applied operation."
22791 "渡した引数が不正。よくある原因としては、渡したアドレスの I<sun_type> フィー"
22793 "ドに B<AF_UNIX> が指定されていなかった、行おうとした操作に対してソケットが"
22797 #. type: Plain text
22798 #: build/C/man7/unix.7:353
22800 "B<connect>(2) called on an already connected socket or a target address was "
22801 "specified on a connected socket."
22803 "既に接続されているソケットに対して B<connect>(2) が呼ばれた。または、指定し"
22804 "たターゲットアドレスが 既に接続済みのソケットだった。"
22806 #. type: Plain text
22807 #: build/C/man7/unix.7:358
22809 "The pathname in the remote address specified to B<connect>(2) did not exist."
22810 msgstr "B<connect>(2) に指定されたリモートアドレスのパス名が存在しなかった。"
22813 #: build/C/man7/unix.7:358
22818 #. type: Plain text
22819 #: build/C/man7/unix.7:364
22821 "Socket operation needs a target address, but the socket is not connected."
22823 "ソケット操作にターゲットアドレスが必要だが、 このソケットは接続されていない。"
22825 #. type: Plain text
22826 #: build/C/man7/unix.7:368
22828 "Stream operation called on non-stream oriented socket or tried to use the "
22829 "out-of-band data option."
22831 "ストリーム指向でないソケットに対してストリーム操作が呼び出された。 または帯域"
22832 "外データオプションを用いようとした。"
22834 #. type: Plain text
22835 #: build/C/man7/unix.7:372
22836 msgid "The sender passed invalid credentials in the I<struct ucred>."
22837 msgstr "送信者が I<struct ucred> に不正な信任状を渡した。"
22839 #. type: Plain text
22840 #: build/C/man7/unix.7:384
22842 "Remote socket was closed on a stream socket. If enabled, a B<SIGPIPE> is "
22843 "sent as well. This can be avoided by passing the B<MSG_NOSIGNAL> flag to "
22844 "B<sendmsg>(2) or B<recvmsg>(2)."
22846 "リモートソケットがストリームソケット上でクローズされた。 可能な場合は "
22847 "B<SIGPIPE> も同時に送られる。これを避けるには B<MSG_NOSIGNAL> フラグを "
22848 "B<sendmsg>(2) や B<recvmsg>(2) に渡す。"
22851 #: build/C/man7/unix.7:384
22853 msgid "B<EPROTONOSUPPORT>"
22854 msgstr "B<EPROTONOSUPPORT>"
22856 #. type: Plain text
22857 #: build/C/man7/unix.7:388
22858 msgid "Passed protocol is not B<AF_UNIX>."
22859 msgstr "渡されたプロトコルが B<AF_UNIX> でない。"
22862 #: build/C/man7/unix.7:388
22864 msgid "B<EPROTOTYPE>"
22865 msgstr "B<EPROTOTYPE>"
22867 #. type: Plain text
22868 #: build/C/man7/unix.7:394
22870 "Remote socket does not match the local socket type (B<SOCK_DGRAM> versus "
22873 "リモートソケットとローカルソケットのタイプが一致していなかった "
22874 "(B<SOCK_DGRAM> と B<SOCK_STREAM>)。"
22876 #. type: Plain text
22877 #: build/C/man7/unix.7:397
22878 msgid "Unknown socket type."
22879 msgstr "未知のソケットタイプ。"
22881 #. type: Plain text
22882 #: build/C/man7/unix.7:401
22884 "Other errors can be generated by the generic socket layer or by the "
22885 "filesystem while generating a filesystem socket object. See the appropriate "
22886 "manual pages for more information."
22888 "他にも汎用のソケット層でエラーが起こったり、 ファイルシステム上にソケットオブ"
22889 "ジェクトを作ろうとした場合に ファイルシステムのエラーが起こることがある。 そ"
22890 "れぞれの詳細は適切な man ページを参照すること。"
22892 #. type: Plain text
22893 #: build/C/man7/unix.7:407
22895 "B<SCM_CREDENTIALS> and the abstract namespace were introduced with Linux 2.2 "
22896 "and should not be used in portable programs. (Some BSD-derived systems also "
22897 "support credential passing, but the implementation details differ.)"
22899 "B<SCM_CREDENTIALS> と抽象名前空間は、Linux 2.2 で導入された。 移植性が必要な"
22900 "プログラムでは使うべきではない。 (BSD 由来のシステムの中にも信任状の送受信を"
22901 "サポートしているものがあるが、 その実装の詳細はシステムによって異なる)"
22903 #. type: Plain text
22904 #: build/C/man7/unix.7:418
22906 "In the Linux implementation, sockets which are visible in the filesystem "
22907 "honor the permissions of the directory they are in. Their owner, group and "
22908 "their permissions can be changed. Creation of a new socket will fail if the "
22909 "process does not have write and search (execute) permission on the directory "
22910 "the socket is created in. Connecting to the socket object requires read/"
22911 "write permission. This behavior differs from many BSD-derived systems which "
22912 "ignore permissions for UNIX domain sockets. Portable programs should not "
22913 "rely on this feature for security."
22915 "Linux の実装では、 ファイルシステム上から見えるソケットは、 それらが置かれて"
22916 "いるディレクトリのパーミッションに従う。 ソケットの所有者、 グループ、 パー"
22917 "ミッションは変更できる。 新しいソケットを作るとき、 作ろうとするディレクトリ"
22918 "に対して プロセスが書き込みと検索 (実行) 権限を持っていなければ、 作成に失敗"
22919 "する。 ソケットオブジェクトに接続するには、 read/write 権限が必要である。 こ"
22920 "の動作は、 多くの BSD 由来のシステムとは異なっている (BSD では UNIX ドメイン"
22921 "ソケットに対してはパーミッションを無視する)。 移植性の必要なプログラムでは、"
22922 "セキュリティをこの仕様に依存してはならない。"
22924 #. type: Plain text
22925 #: build/C/man7/unix.7:426
22927 "Binding to a socket with a filename creates a socket in the filesystem that "
22928 "must be deleted by the caller when it is no longer needed (using B<unlink>"
22929 "(2)). The usual UNIX close-behind semantics apply; the socket can be "
22930 "unlinked at any time and will be finally removed from the filesystem when "
22931 "the last reference to it is closed."
22933 "ファイル名を指定してソケットにバインドすると、ファイルシステムにソケットが\n"
22934 "生成される。これは必要なくなったときに呼びだしたユーザーが削除しなければ\n"
22935 "ならない (B<unlink>(2) を用いる)。 UNIX で通常使われる「背後で閉じる方式」\n"
22936 "が適用される。ソケットはいつでも unlink することができ、最後の参照が\n"
22937 "クローズされたときにファイルシステムから削除される。"
22939 #. type: Plain text
22940 #: build/C/man7/unix.7:435
22942 "To pass file descriptors or credentials over a B<SOCK_STREAM>, you need to "
22943 "send or receive at least one byte of nonancillary data in the same B<sendmsg>"
22944 "(2) or B<recvmsg>(2) call."
22946 "B<SOCK_STREAM> 上でファイルディスクリプタや信任状を渡すためには、同じ "
22947 "B<sendmsg>(2) や B<recvmsg>(2) コールで補助データ以外のデータを少なくとも "
22948 "1 バイト送信/受信する必要がある。"
22950 #. type: Plain text
22951 #: build/C/man7/unix.7:437
22953 "UNIX domain stream sockets do not support the notion of out-of-band data."
22955 "UNIX ドメインのストリーム・ソケットでは、 帯域外データの概念はサポートされな"
22958 #. type: Plain text
22959 #: build/C/man7/unix.7:440
22960 msgid "See B<bind>(2)."
22961 msgstr "B<bind>(2) 参照。"
22963 #. type: Plain text
22964 #: build/C/man7/unix.7:445
22965 msgid "For an example of the use of B<SCM_RIGHTS> see B<cmsg>(3)."
22966 msgstr "B<SCM_RIGHTS> の使用例については B<cmsg>(3) を参照。"
22968 #. type: Plain text
22969 #: build/C/man7/unix.7:454
22971 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
22972 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
22974 "B<recvmsg>(2), B<sendmsg>(2), B<socket>(2), B<socketpair>(2), B<cmsg>(3), "
22975 "B<capabilities>(7), B<credentials>(7), B<socket>(7)"
22978 #: build/C/man7/x25.7:12
22983 #. type: Plain text
22984 #: build/C/man7/x25.7:15
22985 msgid "x25 - ITU-T X.25 / ISO-8208 protocol interface."
22986 msgstr "x25 - ITU-T X.25 / ISO-8208 プロトコルインターフェース"
22988 #. type: Plain text
22989 #: build/C/man7/x25.7:19
22990 msgid "B<#include E<lt>linux/x25.hE<gt>>"
22991 msgstr "B<#include E<lt>linux/x25.hE<gt>>"
22993 #. type: Plain text
22994 #: build/C/man7/x25.7:21
22995 msgid "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
22996 msgstr "B<x25_socket = socket(AF_X25, SOCK_SEQPACKET, 0);>"
22998 #. type: Plain text
22999 #: build/C/man7/x25.7:30
23001 "X25 sockets provide an interface to the X.25 packet layer protocol. This "
23002 "allows applications to communicate over a public X.25 data network as "
23003 "standardized by International Telecommunication Union's recommendation X.25 "
23004 "(X.25 DTE-DCE mode). X25 sockets can also be used for communication without "
23005 "an intermediate X.25 network (X.25 DTE-DTE mode) as described in ISO-8208."
23007 "X25 ソケットは X.25 パケット層プロトコルに対するインターフェースを提供する。 "
23008 "これにより、アプリケーションはパブリックな X.25 データネットワークで 通信する"
23009 "ことができるようになる。 X.25 は International Telecommunication Union's "
23010 "recommendation X.25 (X.25 DTE-DCE mode) で標準化されている。 X25 ソケットは、"
23011 "中間層のない X.25 ネットワーク (X.25 DTE-DTE mode) での通信にも用いることが"
23012 "できる。 DTE-DTE モードは ISO-8208 に記述されている。"
23014 #. type: Plain text
23015 #: build/C/man7/x25.7:47
23017 "Message boundaries are preserved \\(em a B<read>(2) from a socket will "
23018 "retrieve the same chunk of data as output with the corresponding B<write>"
23019 "(2) to the peer socket. When necessary, the kernel takes care of "
23020 "segmenting and reassembling long messages by means of the X.25 M-bit. There "
23021 "is no hard-coded upper limit for the message size. However, reassembling of "
23022 "a long message might fail if there is a temporary lack of system resources "
23023 "or when other constraints (such as socket memory or buffer size limits) "
23024 "become effective. If that occurs, the X.25 connection will be reset."
23026 "メッセージ境界は保存される。ソケットからの B<read>(2) は、反対側のソケットか"
23027 "らの対応する B<write>(2) と同じ大きさのデータを受け取り、出力する。 必要があ"
23028 "る場合は、カーネルが長いメッセージの 分割 (segmenting) と再構成 "
23029 "(reassembling) を行う。 これには X.25 の M ビットが用いられる。 メッセージサ"
23030 "イズには、ハードコーディングされた上限はない。 しかし、一時的にシステムリソー"
23031 "スが足りなかったり、 他の制約 (ソケットメモリバッファのサイズ制限など) が 効"
23032 "いてしまうと、長いメッセージの再構成には失敗するかもしれない。 この場合、そ"
23033 "の X.25 接続はリセットされることになる。"
23036 #: build/C/man7/x25.7:47
23038 msgid "Socket addresses"
23041 #. type: Plain text
23042 #: build/C/man7/x25.7:54
23044 "The B<AF_X25> socket address family uses the I<struct sockaddr_x25> for "
23045 "representing network addresses as defined in ITU-T recommendation X.121."
23047 "B<AF_X25> ソケットアドレスファミリーは、ネットワークアドレスを表すために "
23048 "I<struct sockaddr_x25> を用いる。これは ITU-T recommendation X.121 で定義され"
23051 #. type: Plain text
23052 #: build/C/man7/x25.7:61
23055 "struct sockaddr_x25 {\n"
23056 " sa_family_t sx25_family; /* must be AF_X25 */\n"
23057 " x25_address sx25_addr; /* X.121 Address */\n"
23060 "struct sockaddr_x25 {\n"
23061 " sa_family_t sx25_family; /* must be AF_X25 */\n"
23062 " x25_address sx25_addr; /* X.121 Address */\n"
23065 #. type: Plain text
23066 #: build/C/man7/x25.7:72
23068 "I<sx25_addr> contains a char array I<x25_addr[]> to be interpreted as a null-"
23069 "terminated string. I<sx25_addr.x25_addr[]> consists of up to 15 (not "
23070 "counting the terminating null byte) ASCII characters forming the X.121 "
23071 "address. Only the decimal digit characters from \\(aq0\\(aq to \\(aq9\\(aq "
23074 "I<sx25_addr> には char 配列 I<x25_addr[]> を含まれる。これは 0 で終端する文字"
23075 "列として解釈される。 I<sx25_addr.x25_addr[]> は 15 個までの ASCII 文字を含む"
23076 "ことができ (終端のヌルバイトは含まない)、 これが X.121 アドレスをなす。 10 進"
23077 "の数文字、\\(aq0\\(aq から \\(aq9\\(aq までだけが許される。"
23079 #. type: Plain text
23080 #: build/C/man7/x25.7:81
23082 "The following X.25-specific socket options can be set by using B<setsockopt>"
23083 "(2) and read with B<getsockopt>(2) with the I<level> argument set to "
23086 "以下の X.25 特有のソケットオプションは、 B<setsockopt>(2) で設定でき、 "
23087 "B<getsockopt>(2) で取得できる。このとき I<level> 引き数には B<SOL_X25> を指"
23091 #: build/C/man7/x25.7:81
23093 msgid "B<X25_QBITINCL>"
23094 msgstr "B<X25_QBITINCL>"
23096 #. type: Plain text
23097 #: build/C/man7/x25.7:100
23099 "Controls whether the X.25 Q-bit (Qualified Data Bit) is accessible by the "
23100 "user. It expects an integer argument. If set to 0 (default), the Q-bit is "
23101 "never set for outgoing packets and the Q-bit of incoming packets is "
23102 "ignored. If set to 1, an additional first byte is prepended to each message "
23103 "read from or written to the socket. For data read from the socket, a 0 "
23104 "first byte indicates that the Q-bits of the corresponding incoming data "
23105 "packets were not set. A first byte with value 1 indicates that the Q-bit of "
23106 "the corresponding incoming data packets was set. If the first byte of the "
23107 "data written to the socket is 1, the Q-bit of the corresponding outgoing "
23108 "data packets will be set. If the first byte is 0, the Q-bit will not be set."
23110 "X.25 の Q ビット (Qualified データビット) にユーザーがアクセス できるかどうか"
23111 "をコントロールする。整数の引数を取る。 0 にセットすると、 Q ビットは発信パ"
23112 "ケットには決してセットされず、 受信パケットでは無視される (デフォルト)。 1 に"
23113 "セットすると、ソケットから読む、あるいはソケットに送る メッセージそれぞれに先"
23114 "頭バイトが前置される。 ソケットから読んだデータでは、先頭バイトが 0 だと、 こ"
23115 "の到着データパケットに対応する Q ビットはセットされていなかったことになる。 "
23116 "先頭バイトが 1 だと、到着データパケットの Q ビットがセットされていたことにな"
23117 "る。 ソケットに書き込むデータの先頭バイトが 1 だと、 その発信パケットの Q "
23118 "ビットをセットする。 0 だと、 Q ビットをセットしない。"
23120 #. type: Plain text
23121 #: build/C/man7/x25.7:102
23122 msgid "The AF_X25 protocol family is a new feature of Linux 2.2."
23123 msgstr "AF_X25 プロトコルファミリは Linux 2.2 の新機能である。"
23125 #. type: Plain text
23126 #: build/C/man7/x25.7:105
23127 msgid "Plenty, as the X.25 PLP implementation is B<CONFIG_EXPERIMENTAL>."
23128 msgstr "X.25 PLP 実装は B<CONFIG_EXPERIMENTAL> なので、たくさんあるだろう。"
23130 #. type: Plain text
23131 #: build/C/man7/x25.7:107
23132 msgid "This man page is incomplete."
23133 msgstr "この man ページは完成していない。"
23135 #. type: Plain text
23136 #: build/C/man7/x25.7:114
23138 "There is no dedicated application programmer's header file yet; you need to "
23139 "include the kernel header file I<E<lt>linux/x25.hE<gt>>. "
23140 "B<CONFIG_EXPERIMENTAL> might also imply that future versions of the "
23141 "interface are not binary compatible."
23143 "まだアプリケーションプログラマー用のヘッダファイルがない。 カーネルのヘッダ"
23144 "ファイル I<E<lt>linux/x25.hE<gt>> をインクルードしなければならない。 "
23145 "B<CONFIG_EXPERIMENTAL> なので、将来のバージョンのインターフェースでは バイナ"
23148 #. type: Plain text
23149 #: build/C/man7/x25.7:118
23151 "X.25 N-Reset events are not propagated to the user process yet. Thus, if a "
23152 "reset occurred, data might be lost without notice."
23154 "X.25 N-Reset イベントは、まだユーザープロセスに伝播しない。 したがってリセッ"
23155 "トが起こると、データは通知無しに失われる。"
23157 #. type: Plain text
23158 #: build/C/man7/x25.7:121
23159 msgid "B<socket>(2), B<socket>(7)"
23160 msgstr "B<socket>(2), B<socket>(7)"
23162 #. type: Plain text
23163 #: build/C/man7/x25.7:127
23165 "Jonathan Simon Naylor: \\(lqThe Re-Analysis and Re-Implementation of X.25."
23166 "\\(rq The URL is E<.UR ftp://ftp.pspt.fi\\:/pub\\:/ham\\:/linux\\:/ax25\\:/"
23167 "x25doc.tgz> E<.UE .>"
23169 "Jonathan Simon Naylor: \\(lqThe Re-Analysis and Re-Implementation of X.25."
23170 "\\(rq The URL is E<.UR ftp://ftp.pspt.fi\\:/pub\\:/ham\\:/linux\\:/ax25\\:/"
23171 "x25doc.tgz> E<.UE .>"