OSDN Git Service

0d550551b49144e52ea03efa3179a69790ade450
[linuxjm/LDP_man-pages.git] / po4a / netlink / po / ja.po
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.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2015-01-23 22:25+0900\n"
10 "PO-Revision-Date: 2015-01-24 20:52+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man3/netlink.3:10 build/C/man7/netlink.7:11
20 #, no-wrap
21 msgid "NETLINK"
22 msgstr "NETLINK"
23
24 #. type: TH
25 #: build/C/man3/netlink.3:10
26 #, no-wrap
27 msgid "2014-03-20"
28 msgstr "2014-03-20"
29
30 #. type: TH
31 #: build/C/man3/netlink.3:10 build/C/man3/rtnetlink.3:12
32 #, no-wrap
33 msgid "GNU"
34 msgstr "GNU"
35
36 #. type: TH
37 #: build/C/man3/netlink.3:10 build/C/man7/netlink.7:11
38 #: build/C/man3/rtnetlink.3:12 build/C/man7/rtnetlink.7:15
39 #, no-wrap
40 msgid "Linux Programmer's Manual"
41 msgstr "Linux Programmer's Manual"
42
43 #. type: SH
44 #: build/C/man3/netlink.3:11 build/C/man7/netlink.7:12
45 #: build/C/man3/rtnetlink.3:13 build/C/man7/rtnetlink.7:16
46 #, no-wrap
47 msgid "NAME"
48 msgstr "名前"
49
50 #. type: Plain text
51 #: build/C/man3/netlink.3:13
52 msgid "netlink - Netlink macros"
53 msgstr "netlink - netlink マクロ"
54
55 #. type: SH
56 #: build/C/man3/netlink.3:13 build/C/man7/netlink.7:14
57 #: build/C/man3/rtnetlink.3:15 build/C/man7/rtnetlink.7:18
58 #, no-wrap
59 msgid "SYNOPSIS"
60 msgstr "書式"
61
62 #. type: Plain text
63 #: build/C/man3/netlink.3:16
64 #, no-wrap
65 msgid "B<#include E<lt>asm/types.hE<gt>>\n"
66 msgstr "B<#include E<lt>asm/types.hE<gt>>\n"
67
68 #. type: Plain text
69 #: build/C/man3/netlink.3:18
70 #, no-wrap
71 msgid "B<#include E<lt>linux/netlink.hE<gt>>\n"
72 msgstr "B<#include E<lt>linux/netlink.hE<gt>>\n"
73
74 #. type: Plain text
75 #: build/C/man3/netlink.3:20
76 #, no-wrap
77 msgid "B<int NLMSG_ALIGN(size_t >I<len>B<);>\n"
78 msgstr "B<int NLMSG_ALIGN(size_t >I<len>B<);>\n"
79
80 #. type: Plain text
81 #: build/C/man3/netlink.3:22
82 #, no-wrap
83 msgid "B<int NLMSG_LENGTH(size_t >I<len>B<);>\n"
84 msgstr "B<int NLMSG_LENGTH(size_t >I<len>B<);>\n"
85
86 #. type: Plain text
87 #: build/C/man3/netlink.3:24
88 #, no-wrap
89 msgid "B<int NLMSG_SPACE(size_t >I<len>B<);>\n"
90 msgstr "B<int NLMSG_SPACE(size_t >I<len>B<);>\n"
91
92 #. type: Plain text
93 #: build/C/man3/netlink.3:26
94 #, no-wrap
95 msgid "B<void *NLMSG_DATA(struct nlmsghdr *>I<nlh>B<);>\n"
96 msgstr "B<void *NLMSG_DATA(struct nlmsghdr *>I<nlh>B<);>\n"
97
98 #. type: Plain text
99 #: build/C/man3/netlink.3:28
100 #, no-wrap
101 msgid "B<struct nlmsghdr *NLMSG_NEXT(struct nlmsghdr *>I<nlh>B<, int >I<len>B<);>\n"
102 msgstr "B<struct nlmsghdr *NLMSG_NEXT(struct nlmsghdr *>I<nlh>B<, int >I<len>B<);>\n"
103
104 #. type: Plain text
105 #: build/C/man3/netlink.3:30
106 #, no-wrap
107 msgid "B<int NLMSG_OK(struct nlmsghdr *>I<nlh>B<, int >I<len>B<);>\n"
108 msgstr "B<int NLMSG_OK(struct nlmsghdr *>I<nlh>B<, int >I<len>B<);>\n"
109
110 #. type: Plain text
111 #: build/C/man3/netlink.3:32
112 #, no-wrap
113 msgid "B<int NLMSG_PAYLOAD(struct nlmsghdr *>I<nlh>B<, int >I<len>B<);>\n"
114 msgstr "B<int NLMSG_PAYLOAD(struct nlmsghdr *>I<nlh>B<, int >I<len>B<);>\n"
115
116 #. type: SH
117 #: build/C/man3/netlink.3:33 build/C/man7/netlink.7:22
118 #: build/C/man3/rtnetlink.3:39 build/C/man7/rtnetlink.7:28
119 #, no-wrap
120 msgid "DESCRIPTION"
121 msgstr "説明"
122
123 #. type: Plain text
124 #: build/C/man3/netlink.3:41
125 msgid "I<E<lt>linux/netlink.hE<gt>> defines several standard macros to access or create a netlink datagram.  They are similar in spirit to the macros defined in B<cmsg>(3)  for auxiliary data.  The buffer passed to and from a netlink socket should be accessed using only these macros."
126 msgstr "I<E<lt>linux/netlink.hE<gt>> では、 netlink データグラムにアクセスしたり、これを作成するための 標準マクロがいくつか定義されている。 これらは B<cmsg>(3)  で定義されている補助データ (auxiliary data) 用のマクロと、 その精神において似ているものである。 netlink ソケットに対してやりとりされるバッファーには、 必ずこれらのマクロだけを使ってアクセスすべきである。"
127
128 #. type: TP
129 #: build/C/man3/netlink.3:41
130 #, no-wrap
131 msgid "B<NLMSG_ALIGN>()"
132 msgstr "B<NLMSG_ALIGN>"
133
134 #. type: Plain text
135 #: build/C/man3/netlink.3:44
136 msgid "Round the length of a netlink message up to align it properly."
137 msgstr "netlink メッセージの長さを丸めて正しく揃える。"
138
139 #. type: TP
140 #: build/C/man3/netlink.3:44
141 #, no-wrap
142 msgid "B<NLMSG_LENGTH>()"
143 msgstr "B<NLMSG_LENGTH>"
144
145 #. type: Plain text
146 #: build/C/man3/netlink.3:52
147 msgid "Given the payload length, I<len>, this macro returns the aligned length to store in the I<nlmsg_len> field of the I<nlmsghdr>."
148 msgstr "格納領域 (payload) の長さ I<len> を引数にとり、 I<nlmsghdr> の I<nlmsg_len> フィールドに代入できる 揃えられた長さ (aligned length) を返す。"
149
150 #. type: TP
151 #: build/C/man3/netlink.3:52
152 #, no-wrap
153 msgid "B<NLMSG_SPACE>()"
154 msgstr "B<NLMSG_SPACE>"
155
156 #. type: Plain text
157 #: build/C/man3/netlink.3:57
158 msgid "Return the number of bytes that a netlink message with payload of I<len> would occupy."
159 msgstr "ペイロードの長さが I<len> の netlink メッセージのバイト数を返す。"
160
161 #. type: TP
162 #: build/C/man3/netlink.3:57
163 #, no-wrap
164 msgid "B<NLMSG_DATA>()"
165 msgstr "B<NLMSG_DATA>"
166
167 #. type: Plain text
168 #: build/C/man3/netlink.3:61
169 msgid "Return a pointer to the payload associated with the passed I<nlmsghdr>."
170 msgstr "与えた I<nlmsghdr> に関連づけられた格納領域へのポインターを返す。"
171
172 #.  this is bizarre, maybe the interface should be fixed.
173 #. type: TP
174 #: build/C/man3/netlink.3:61
175 #, no-wrap
176 msgid "B<NLMSG_NEXT>()"
177 msgstr "B<NLMSG_NEXT>"
178
179 #. type: Plain text
180 #: build/C/man3/netlink.3:77
181 msgid "Get the next I<nlmsghdr> in a multipart message.  The caller must check if the current I<nlmsghdr> didn't have the B<NLMSG_DONE> set\\(emthis function doesn't return NULL on end.  The I<len> argument is an lvalue containing the remaining length of the message buffer.  This macro decrements it by the length of the message header."
182 msgstr "マルチパートメッセージにおいて、次の I<nlmsghdr> を入手する。これを呼び出すときには、 現在の nlmsghdr で NLMSG_DONE がセットされていないことを 確認しなければならない。この関数は終端で NULL を返さないからである。 I<len> 引数はメッセージバッファーの残り長さが入った左辺値である。 このマクロはこの引数からメッセージヘッダの長さ分を差し引く。"
183
184 #. type: TP
185 #: build/C/man3/netlink.3:77
186 #, no-wrap
187 msgid "B<NLMSG_OK>()"
188 msgstr "B<NLMSG_OK>"
189
190 #. type: Plain text
191 #: build/C/man3/netlink.3:81
192 msgid "Return true if the netlink message is not truncated and is in a form suitable for parsing."
193 msgstr "Netlink メッセージが途切れておらず、かつ解釈可能な形の場合であれば真を返す。"
194
195 #. type: TP
196 #: build/C/man3/netlink.3:81
197 #, no-wrap
198 msgid "B<NLMSG_PAYLOAD>()"
199 msgstr "B<NLMSG_PAYLOAD>"
200
201 #. type: Plain text
202 #: build/C/man3/netlink.3:85
203 msgid "Return the length of the payload associated with the I<nlmsghdr>."
204 msgstr "I<nlmsghdr> に関連づけられた格納領域の長さを返す。"
205
206 #. type: SH
207 #: build/C/man3/netlink.3:85 build/C/man3/rtnetlink.3:82
208 #, no-wrap
209 msgid "CONFORMING TO"
210 msgstr "準拠"
211
212 #. type: Plain text
213 #: build/C/man3/netlink.3:87 build/C/man3/rtnetlink.3:84
214 msgid "These macros are nonstandard Linux extensions."
215 msgstr "これらのマクロは非標準で、Linux での拡張である。"
216
217 #. type: SH
218 #: build/C/man3/netlink.3:87 build/C/man7/netlink.7:391
219 #, no-wrap
220 msgid "NOTES"
221 msgstr "注意"
222
223 #. type: Plain text
224 #: build/C/man3/netlink.3:91
225 msgid "It is often better to use netlink via I<libnetlink> than via the low-level kernel interface."
226 msgstr "通常はカーネルの低レベルインターフェイスよりも、 I<libnetlink> 経由で netlink を用いるほうが良い。"
227
228 #. type: SH
229 #: build/C/man3/netlink.3:91 build/C/man7/netlink.7:474
230 #: build/C/man3/rtnetlink.3:121 build/C/man7/rtnetlink.7:460
231 #, no-wrap
232 msgid "SEE ALSO"
233 msgstr "関連項目"
234
235 #. type: Plain text
236 #: build/C/man3/netlink.3:94
237 msgid "B<libnetlink>(3), B<netlink>(7)"
238 msgstr "B<libnetlink>(3), B<netlink>(7)"
239
240 #. type: SH
241 #: build/C/man3/netlink.3:94 build/C/man7/netlink.7:489
242 #: build/C/man3/rtnetlink.3:125 build/C/man7/rtnetlink.7:465
243 #, no-wrap
244 msgid "COLOPHON"
245 msgstr "この文書について"
246
247 #. type: Plain text
248 #: build/C/man3/netlink.3:102 build/C/man7/netlink.7:497
249 #: build/C/man3/rtnetlink.3:133 build/C/man7/rtnetlink.7:473
250 msgid "This page is part of release 3.78 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \\%http://www.kernel.org/doc/man-pages/."
251 msgstr ""
252 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部\n"
253 "である。プロジェクトの説明とバグ報告に関する情報は\n"
254 "http://www.kernel.org/doc/man-pages/ に書かれている。"
255
256 #. type: TH
257 #: build/C/man7/netlink.7:11
258 #, no-wrap
259 msgid "2015-01-10"
260 msgstr "2015-01-10"
261
262 #. type: TH
263 #: build/C/man7/netlink.7:11 build/C/man7/rtnetlink.7:15
264 #, no-wrap
265 msgid "Linux"
266 msgstr "Linux"
267
268 #. type: Plain text
269 #: build/C/man7/netlink.7:14
270 msgid "netlink - communication between kernel and user space (AF_NETLINK)"
271 msgstr "netlink - カーネルとユーザー空間の通信 (AF_NETLINK)"
272
273 #. type: Plain text
274 #: build/C/man7/netlink.7:19
275 #, no-wrap
276 msgid ""
277 "B<#include E<lt>asm/types.hE<gt>>\n"
278 "B<#include E<lt>sys/socket.hE<gt>>\n"
279 "B<#include E<lt>linux/netlink.hE<gt>>\n"
280 msgstr ""
281 "B<#include E<lt>asm/types.hE<gt>>\n"
282 "B<#include E<lt>sys/socket.hE<gt>>\n"
283 "B<#include E<lt>linux/netlink.hE<gt>>\n"
284
285 #. type: Plain text
286 #: build/C/man7/netlink.7:21
287 #, no-wrap
288 msgid "B<netlink_socket = socket(AF_NETLINK, >I<socket_type>B<, >I<netlink_family>B<);>\n"
289 msgstr "B<netlink_socket = socket(AF_NETLINK, >I<socket_type>B<, >I<netlink_family>B<);>\n"
290
291 #. type: Plain text
292 #: build/C/man7/netlink.7:31
293 msgid "Netlink is used to transfer information between kernel and user-space processes.  It consists of a standard sockets-based interface for user space processes and an internal kernel API for kernel modules.  The internal kernel interface is not documented in this manual page.  There is also an obsolete netlink interface via netlink character devices; this interface is not documented here and is provided only for backward compatibility."
294 msgstr "netlink はカーネルモジュールとユーザー空間のプロセス間で 情報をやりとりするために用いられる。 netlink は、ユーザープロセスに対しては 標準的なソケットベースのインターフェースを、 カーネルモジュールにはカーネルの内部 API を提供する。 カーネル内部のインターフェースについてはこの man ページでは記述しない。 また、netlink キャラクタデバイスを用いた obsolete な netlink インターフェースもあるが、これもこの文書では解説しない。 これは過去互換性のためだけに用意されている。"
295
296 #. type: Plain text
297 #: build/C/man7/netlink.7:41
298 msgid "Netlink is a datagram-oriented service.  Both B<SOCK_RAW> and B<SOCK_DGRAM> are valid values for I<socket_type>.  However, the netlink protocol does not distinguish between datagram and raw sockets."
299 msgstr "netlink はデータグラム指向のサービスである。 I<socket_type> には B<SOCK_RAW> と B<SOCK_DGRAM> の両方とも指定可能である。 しかし netlink プロトコルはデータグラムと raw ソケットの区別をしない。"
300
301 #. type: Plain text
302 #: build/C/man7/netlink.7:45
303 msgid "I<netlink_family> selects the kernel module or netlink group to communicate with.  The currently assigned netlink families are:"
304 msgstr "I<netlink_family> は、通信するカーネルモジュールや netlink グループの選択に用いる。 現在割り当てられている netlink ファミリーは以下の通り。"
305
306 #. type: TP
307 #: build/C/man7/netlink.7:45
308 #, no-wrap
309 msgid "B<NETLINK_ROUTE>"
310 msgstr "B<NETLINK_ROUTE>"
311
312 #. type: Plain text
313 #: build/C/man7/netlink.7:52
314 msgid "Receives routing and link updates and may be used to modify the routing tables (both IPv4 and IPv6), IP addresses, link parameters, neighbor setups, queueing disciplines, traffic classes and packet classifiers (see B<rtnetlink>(7))."
315 msgstr "ルーティングとリンクの更新を受信する。 (IPv4 と IPv6 両方の) ルーティングテーブル・ IP アドレス・リンクパラメーター・近傍設定 (neighbor setup)・ キューイングルール (queueing dicipline)・トラフィッククラス・ パケットのクラス分類の修正に用いることができるだろう (B<rtnetlink>(7)  を見よ)。"
316
317 #. type: TP
318 #: build/C/man7/netlink.7:52
319 #, no-wrap
320 msgid "B<NETLINK_W1>"
321 msgstr "B<NETLINK_W1>"
322
323 #. type: Plain text
324 #: build/C/man7/netlink.7:55
325 msgid "Messages from 1-wire subsystem."
326 msgstr "単線 (1-wire) のサブシステムからのメッセージ。"
327
328 #. type: TP
329 #: build/C/man7/netlink.7:55
330 #, no-wrap
331 msgid "B<NETLINK_USERSOCK>"
332 msgstr "B<NETLINK_USERSOCK>"
333
334 #. type: Plain text
335 #: build/C/man7/netlink.7:58
336 msgid "Reserved for user-mode socket protocols."
337 msgstr "ユーザーモードソケットプロトコルのために予約されている。"
338
339 #. type: TP
340 #: build/C/man7/netlink.7:58
341 #, no-wrap
342 msgid "B<NETLINK_FIREWALL>"
343 msgstr "B<NETLINK_FIREWALL>"
344
345 #. type: Plain text
346 #: build/C/man7/netlink.7:64
347 msgid "Transport IPv4 packets from netfilter to user space.  Used by I<ip_queue> kernel module."
348 msgstr "IPv4 パケットを netfilter からユーザー空間へ転送する。 I<ip_queue> カーネルモジュールで使用される。"
349
350 #. type: TP
351 #: build/C/man7/netlink.7:64
352 #, no-wrap
353 msgid "B<NETLINK_INET_DIAG>"
354 msgstr "B<NETLINK_INET_DIAG>"
355
356 #.  FIXME More details on NETLINK_INET_DIAG needed.
357 #. type: Plain text
358 #: build/C/man7/netlink.7:68
359 msgid "INET socket monitoring."
360 msgstr "INET ソケットをモニタリングする。"
361
362 #. type: TP
363 #: build/C/man7/netlink.7:68
364 #, no-wrap
365 msgid "B<NETLINK_NFLOG>"
366 msgstr "B<NETLINK_NFLOG>"
367
368 #. type: Plain text
369 #: build/C/man7/netlink.7:71
370 msgid "Netfilter/iptables ULOG."
371 msgstr "Netfilter/iptables ULOG."
372
373 #. type: TP
374 #: build/C/man7/netlink.7:71
375 #, no-wrap
376 msgid "B<NETLINK_XFRM>"
377 msgstr "B<NETLINK_XFRM>"
378
379 #.  FIXME More details on NETLINK_XFRM needed.
380 #. type: Plain text
381 #: build/C/man7/netlink.7:75
382 msgid "IPsec."
383 msgstr "IPsec."
384
385 #. type: TP
386 #: build/C/man7/netlink.7:75
387 #, no-wrap
388 msgid "B<NETLINK_SELINUX>"
389 msgstr "B<NETLINK_SELINUX>"
390
391 #. type: Plain text
392 #: build/C/man7/netlink.7:78
393 msgid "SELinux event notifications."
394 msgstr "SELinux のイベント通知。"
395
396 #. type: TP
397 #: build/C/man7/netlink.7:78
398 #, no-wrap
399 msgid "B<NETLINK_ISCSI>"
400 msgstr "B<NETLINK_ISCSI>"
401
402 #.  FIXME More details on NETLINK_ISCSI needed.
403 #. type: Plain text
404 #: build/C/man7/netlink.7:82
405 msgid "Open-iSCSI."
406 msgstr "Open-iSCSI."
407
408 #. type: TP
409 #: build/C/man7/netlink.7:82
410 #, no-wrap
411 msgid "B<NETLINK_AUDIT>"
412 msgstr "B<NETLINK_AUDIT>"
413
414 #.  FIXME More details on NETLINK_AUDIT needed.
415 #. type: Plain text
416 #: build/C/man7/netlink.7:86
417 msgid "Auditing."
418 msgstr "監査 (audit) を行う。"
419
420 #. type: TP
421 #: build/C/man7/netlink.7:86
422 #, no-wrap
423 msgid "B<NETLINK_FIB_LOOKUP>"
424 msgstr "B<NETLINK_FIB_LOOKUP>"
425
426 #.  FIXME More details on NETLINK_FIB_LOOKUP needed.
427 #. type: Plain text
428 #: build/C/man7/netlink.7:90
429 msgid "Access to FIB lookup from user space."
430 msgstr "ユーザー空間から FIB ルックアップにアクセスする。"
431
432 #. type: TP
433 #: build/C/man7/netlink.7:90
434 #, no-wrap
435 msgid "B<NETLINK_CONNECTOR>"
436 msgstr "B<NETLINK_CONNECTOR>"
437
438 #. type: Plain text
439 #: build/C/man7/netlink.7:96
440 msgid "Kernel connector.  See I<Documentation/connector/*> in the Linux kernel source tree for further information."
441 msgstr "カーネルコネクタ。より詳しい情報は Linux カーネルソースの I<Documentation/connector/*> を参照すること。"
442
443 #. type: TP
444 #: build/C/man7/netlink.7:96
445 #, no-wrap
446 msgid "B<NETLINK_NETFILTER>"
447 msgstr "B<NETLINK_NETFILTER>"
448
449 #.  FIXME More details on NETLINK_NETFILTER needed.
450 #. type: Plain text
451 #: build/C/man7/netlink.7:100
452 msgid "Netfilter subsystem."
453 msgstr "netfilter サブシステム。"
454
455 #. type: TP
456 #: build/C/man7/netlink.7:100
457 #, no-wrap
458 msgid "B<NETLINK_IP6_FW>"
459 msgstr "B<NETLINK_IP6_FW>"
460
461 #. type: Plain text
462 #: build/C/man7/netlink.7:106
463 msgid "Transport IPv6 packets from netfilter to user space.  Used by I<ip6_queue> kernel module."
464 msgstr "IPv6 パケットを netfilter からユーザー空間へ転送する。 I<ip6_queue> カーネルモジュールで使用される。"
465
466 #. type: TP
467 #: build/C/man7/netlink.7:106
468 #, no-wrap
469 msgid "B<NETLINK_DNRTMSG>"
470 msgstr "B<NETLINK_DNRTMSG>"
471
472 #. type: Plain text
473 #: build/C/man7/netlink.7:109
474 msgid "DECnet routing messages."
475 msgstr "DECnet ルーティングメッセージ。"
476
477 #. type: TP
478 #: build/C/man7/netlink.7:109
479 #, no-wrap
480 msgid "B<NETLINK_KOBJECT_UEVENT>"
481 msgstr "B<NETLINK_KOBJECT_UEVENT>"
482
483 #.  FIXME More details on NETLINK_KOBJECT_UEVENT needed.
484 #. type: Plain text
485 #: build/C/man7/netlink.7:113
486 msgid "Kernel messages to user space."
487 msgstr "ユーザー空間へのカーネルメッセージ"
488
489 #. type: TP
490 #: build/C/man7/netlink.7:113
491 #, no-wrap
492 msgid "B<NETLINK_GENERIC>"
493 msgstr "B<NETLINK_GENERIC>"
494
495 #. type: Plain text
496 #: build/C/man7/netlink.7:116
497 msgid "Generic netlink family for simplified netlink usage."
498 msgstr "netlink を簡単に使用するための一般的な netlink ファミリー。"
499
500 #. type: TP
501 #: build/C/man7/netlink.7:116
502 #, no-wrap
503 msgid "B<NETLINK_CRYPTO> (since Linux 3.2)"
504 msgstr "B<NETLINK_CRYPTO> (Linux 3.2 以降)"
505
506 #.  commit a38f7907b926e4c6c7d389ad96cc38cec2e5a9e9
507 #.  Author: Steffen Klassert <steffen.klassert@secunet.com>
508 #. type: Plain text
509 #: build/C/man7/netlink.7:123
510 msgid "Netlink interface to request information about ciphers registered with the kernel crypto API as well as allow configuration of the kernel crypto API."
511 msgstr "カーネル暗号 API で登録された暗号に関する情報を要求したり、 カーネル暗号 API の設定を行ったりするための netlink インターフェース。"
512
513 #. type: Plain text
514 #: build/C/man7/netlink.7:133
515 msgid "Netlink messages consist of a byte stream with one or multiple I<nlmsghdr> headers and associated payload.  The byte stream should be accessed only with the standard B<NLMSG_*> macros.  See B<netlink>(3)  for further information."
516 msgstr "netlink メッセージはバイトストリームからなり、 一つ以上の I<nlmsghdr> ヘッダと、それに対応するペイロード (payload) が含まれる。 バイトストリームには、標準の B<NLMSG_*> マクロによってのみアクセスすべきである。 より詳しい情報は B<netlink>(3)  を見よ。"
517
518 #. type: Plain text
519 #: build/C/man7/netlink.7:141
520 msgid "In multipart messages (multiple I<nlmsghdr> headers with associated payload in one byte stream) the first and all following headers have the B<NLM_F_MULTI> flag set, except for the last header which has the type B<NLMSG_DONE>."
521 msgstr "マルチパートメッセージ (一つ以上の I<nlmsghdr> ヘッダと、それに対応するペイロードが 一つバイトストリームに含まれる) においては、 先頭のヘッダ・後続のヘッダには B<NLM_F_MULTI> フラグがセットされる。ただし最後のヘッダだけは例外で、 B<NLMSG_DONE> タイプとなる。"
522
523 #. type: Plain text
524 #: build/C/man7/netlink.7:145
525 msgid "After each I<nlmsghdr> the payload follows."
526 msgstr "それぞれの B<nlmsghdr> の後にはペイロードが続く。"
527
528 #. type: Plain text
529 #: build/C/man7/netlink.7:155
530 #, no-wrap
531 msgid ""
532 "struct nlmsghdr {\n"
533 "    __u32 nlmsg_len;    /* Length of message including header. */\n"
534 "    __u16 nlmsg_type;   /* Type of message content. */\n"
535 "    __u16 nlmsg_flags;  /* Additional flags. */\n"
536 "    __u32 nlmsg_seq;    /* Sequence number. */\n"
537 "    __u32 nlmsg_pid;    /* Sender port ID. */\n"
538 "};\n"
539 msgstr ""
540 "struct nlmsghdr {\n"
541 "    __u32 nlmsg_len;    /* ヘッダを含むメッセージの長さ */\n"
542 "    __u16 nlmsg_type;   /* メッセージの内容のタイプ */\n"
543 "    __u16 nlmsg_flags;  /* 追加フラグ */\n"
544 "    __u32 nlmsg_seq;    /* シーケンス番号 */\n"
545 "    __u32 nlmsg_pid;    /* 送信者のポート ID */\n"
546 "};\n"
547
548 #. type: Plain text
549 #: build/C/man7/netlink.7:168
550 msgid "I<nlmsg_type> can be one of the standard message types: B<NLMSG_NOOP> message is to be ignored, B<NLMSG_ERROR> message signals an error and the payload contains an I<nlmsgerr> structure, B<NLMSG_DONE> message terminates a multipart message."
551 msgstr "I<nlmsg_type> は標準のメッセージタイプのどれか一つである: B<NLMSG_NOOP> メッセージは無視される。 B<NLMSG_ERROR> メッセージはエラーを示し、ペイロードには I<nlmsgerr> 構造体が入る。 B<NLMSG_DONE> メッセージはマルチパートメッセージの終了を伝える。"
552
553 #. type: Plain text
554 #: build/C/man7/netlink.7:175
555 #, no-wrap
556 msgid ""
557 "struct nlmsgerr {\n"
558 "    int error;        /* Negative errno or 0 for acknowledgements */\n"
559 "    struct nlmsghdr msg;  /* Message header that caused the error */\n"
560 "};\n"
561 msgstr ""
562 "struct nlmsgerr {\n"
563 "    int error;        /* 負または 0 の errno は応答を表す */\n"
564 "    struct nlmsghdr msg;  /* エラーを起こしたメッセージのヘッダ */\n"
565 "};\n"
566
567 #. type: Plain text
568 #: build/C/man7/netlink.7:183
569 msgid "A netlink family usually specifies more message types, see the appropriate manual pages for that, for example, B<rtnetlink>(7)  for B<NETLINK_ROUTE>."
570 msgstr "ある netlink ファミリーで指定できるメッセージタイプは、 通常もっと多い。これらに関しては適切な man ページを見てほしい。 たとえば B<NETLINK_ROUTE> に関しては B<rtnetlink>(7)  に書いてある。"
571
572 #. type: tbl table
573 #: build/C/man7/netlink.7:187
574 #, no-wrap
575 msgid "Standard flag bits in I<nlmsg_flags>\n"
576 msgstr "I<nlmsg_flags> の標準フラグビット\n"
577
578 #. type: tbl table
579 #: build/C/man7/netlink.7:188 build/C/man7/netlink.7:204
580 #: build/C/man7/netlink.7:229 build/C/man7/rtnetlink.7:98
581 #: build/C/man7/rtnetlink.7:165 build/C/man7/rtnetlink.7:215
582 #: build/C/man7/rtnetlink.7:239 build/C/man7/rtnetlink.7:314
583 #: build/C/man7/rtnetlink.7:432
584 #, no-wrap
585 msgid "_\n"
586 msgstr "_\n"
587
588 #. type: tbl table
589 #: build/C/man7/netlink.7:189
590 #, no-wrap
591 msgid "NLM_F_REQUEST:Must be set on all request messages.\n"
592 msgstr "NLM_F_REQUEST:要求メッセージ全てでセットされなければならない。\n"
593
594 #. type: tbl table
595 #: build/C/man7/netlink.7:190
596 #, no-wrap
597 msgid "NLM_F_MULTI:T{\n"
598 msgstr "NLM_F_MULTI:T{\n"
599
600 #. type: tbl table
601 #: build/C/man7/netlink.7:191
602 #, no-wrap
603 msgid "The message is part of a multipart message terminated by\n"
604 msgstr "このメッセージはマルチパートメッセージの一部である。\n"
605
606 #. type: tbl table
607 #: build/C/man7/netlink.7:192
608 #, no-wrap
609 msgid "B<NLMSG_DONE>.\n"
610 msgstr "マルチパートメッセージは B<NLMSG_DONE> で終端する。\n"
611
612 #. type: tbl table
613 #: build/C/man7/netlink.7:193 build/C/man7/netlink.7:209
614 #: build/C/man7/netlink.7:216 build/C/man7/rtnetlink.7:221
615 #: build/C/man7/rtnetlink.7:224 build/C/man7/rtnetlink.7:233
616 #: build/C/man7/rtnetlink.7:243 build/C/man7/rtnetlink.7:266
617 #: build/C/man7/rtnetlink.7:286
618 #, no-wrap
619 msgid "T}\n"
620 msgstr "T}\n"
621
622 #. type: tbl table
623 #: build/C/man7/netlink.7:194
624 #, no-wrap
625 msgid "NLM_F_ACK:Request for an acknowledgment on success.\n"
626 msgstr "NLM_F_ACK:成功した場合の応答を要求する。\n"
627
628 #. type: tbl table
629 #: build/C/man7/netlink.7:195
630 #, no-wrap
631 msgid "NLM_F_ECHO:Echo this request.\n"
632 msgstr "NLM_F_ECHO:この要求をエコーする。\n"
633
634 #. type: tbl table
635 #: build/C/man7/netlink.7:203
636 #, no-wrap
637 msgid "Additional flag bits for GET requests\n"
638 msgstr "GET 要求における追加フラグビット\n"
639
640 #. type: tbl table
641 #: build/C/man7/netlink.7:205
642 #, no-wrap
643 msgid "NLM_F_ROOT:Return the complete table instead of a single entry.\n"
644 msgstr "NLM_F_ROOT:単一のエントリではなくテーブル全体を返す。\n"
645
646 #. type: tbl table
647 #: build/C/man7/netlink.7:206
648 #, no-wrap
649 msgid "NLM_F_MATCH:T{\n"
650 msgstr "NLM_F_MATCH:T{\n"
651
652 #. type: tbl table
653 #: build/C/man7/netlink.7:207
654 #, no-wrap
655 msgid "Return all entries matching criteria passed in message content.\n"
656 msgstr "メッセージの内容で渡された基準 (criteria) にマッチする全てのエントリを返す。\n"
657
658 #. type: tbl table
659 #: build/C/man7/netlink.7:208
660 #, no-wrap
661 msgid "Not implemented yet.\n"
662 msgstr "まだ実装されていない。\n"
663
664 #.  FIXME NLM_F_ATOMIC is not used anymore?
665 #. type: tbl table
666 #: build/C/man7/netlink.7:211
667 #, no-wrap
668 msgid "NLM_F_ATOMIC:Return an atomic snapshot of the table.\n"
669 msgstr "NLM_F_ATOMIC:テーブルのアトミックなスナップショットを返す。\n"
670
671 #. type: tbl table
672 #: build/C/man7/netlink.7:212
673 #, no-wrap
674 msgid "NLM_F_DUMP:T{\n"
675 msgstr "NLM_F_DUMP:T{\n"
676
677 #. type: tbl table
678 #: build/C/man7/netlink.7:213
679 #, no-wrap
680 msgid "Convenience macro; equivalent to\n"
681 msgstr "便利なマクロ。\n"
682
683 #. type: tbl table
684 #: build/C/man7/netlink.7:214
685 #, no-wrap
686 msgid ".br\n"
687 msgstr ".br\n"
688
689 #. type: tbl table
690 #: build/C/man7/netlink.7:215
691 #, no-wrap
692 msgid "(NLM_F_ROOT|NLM_F_MATCH).\n"
693 msgstr "(NLM_F_ROOT|NLM_F_MATCH) と等価.\n"
694
695 #. type: Plain text
696 #: build/C/man7/netlink.7:224
697 msgid "Note that B<NLM_F_ATOMIC> requires the B<CAP_NET_ADMIN> capability or an effective UID of 0."
698 msgstr "B<NLM_F_ATOMIC> を使う場合は、 B<CAP_NET_ADMIN> 権限を持つか実効ユーザー ID が 0 でなければならない点に注意すること。"
699
700 #. type: tbl table
701 #: build/C/man7/netlink.7:228
702 #, no-wrap
703 msgid "Additional flag bits for NEW requests\n"
704 msgstr "NEW 要求における追加フラグビット\n"
705
706 #. type: tbl table
707 #: build/C/man7/netlink.7:230
708 #, no-wrap
709 msgid "NLM_F_REPLACE:Replace existing matching object.\n"
710 msgstr "NLM_F_REPLACE:現存のオブジェクトを置換する。\n"
711
712 #. type: tbl table
713 #: build/C/man7/netlink.7:231
714 #, no-wrap
715 msgid "NLM_F_EXCL:Don't replace if the object already exists.\n"
716 msgstr "NLM_F_EXCL:すでにオブジェクトがあったら置換しない。\n"
717
718 #. type: tbl table
719 #: build/C/man7/netlink.7:232
720 #, no-wrap
721 msgid "NLM_F_CREATE:Create object if it doesn't already exist.\n"
722 msgstr "NLM_F_CREATE:まだオブジェクトがなければ作成する。\n"
723
724 #. type: tbl table
725 #: build/C/man7/netlink.7:233
726 #, no-wrap
727 msgid "NLM_F_APPEND:Add to the end of the object list.\n"
728 msgstr "NLM_F_APPEND:オブジェクトリストの最後に追加する。\n"
729
730 #. type: Plain text
731 #: build/C/man7/netlink.7:249
732 msgid "I<nlmsg_seq> and I<nlmsg_pid> are used to track messages.  I<nlmsg_pid> shows the origin of the message.  Note that there isn't a 1:1 relationship between I<nlmsg_pid> and the PID of the process if the message originated from a netlink socket.  See the B<ADDRESS FORMATS> section for further information."
733 msgstr "I<nlmsg_seq> と I<nlmsg_pid> はメッセージの追跡に使用される。 I<nlmsg_pid> はメッセージの送信元を表す。 メッセージが netlink ソケットで送信されている場合、 I<nlmsg_pid> とプロセスの PID は 1:1 の関係ではない点に注意すること。 より詳しい情報は、 「B<アドレスのフォーマット>」 のセクションを参照すること。"
734
735 #.  FIXME Explain more about nlmsg_seq and nlmsg_pid.
736 #. type: Plain text
737 #: build/C/man7/netlink.7:256
738 msgid "Both I<nlmsg_seq> and I<nlmsg_pid> are opaque to netlink core."
739 msgstr "I<nlmsg_seq> と I<nlmsg_pid> は netlink のコアには見えない (opaque)。"
740
741 #. type: Plain text
742 #: build/C/man7/netlink.7:274
743 msgid "Netlink is not a reliable protocol.  It tries its best to deliver a message to its destination(s), but may drop messages when an out-of-memory condition or other error occurs.  For reliable transfer the sender can request an acknowledgement from the receiver by setting the B<NLM_F_ACK> flag.  An acknowledgment is an B<NLMSG_ERROR> packet with the error field set to 0.  The application must generate acknowledgements for received messages itself.  The kernel tries to send an B<NLMSG_ERROR> message for every failed packet.  A user process should follow this convention too."
744 msgstr "netlink は信頼性の高いプロトコルではない。 netlink はメッセージを行き先に届けるために最善を尽くすが、 メモリが足りなかったりエラーが起こったりすると メッセージを取りこぼすこともある。 信頼性の高い転送を行いたいときは、 送信者は受信者に応答を要求することもできる。 これには B<NLM_F_ACK> フラグをセットする。 応答は B<NLMSG_ERROR> パケットのエラーフィールドを 0 にしたものになる。 アプリケーションは自分自身のメッセージを受けたときには、 応答を生成しなければならない。 カーネルは失敗したパケットに対して、 B<NLMSG_ERROR> メッセージを送ろうとする。 ユーザープロセスはこの慣習にも従う必要がある。"
745
746 #. type: Plain text
747 #: build/C/man7/netlink.7:285
748 msgid "However, reliable transmissions from kernel to user are impossible in any case.  The kernel can't send a netlink message if the socket buffer is full: the message will be dropped and the kernel and the user-space process will no longer have the same view of kernel state.  It is up to the application to detect when this happens (via the B<ENOBUFS> error returned by B<recvmsg>(2))  and resynchronize."
749 msgstr "しかし、どのような場合でもカーネルからユーザーへの 信頼性の高い転送は不可能である。 ソケットバッファーが満杯の場合、カーネルは netlink メッセージを送信できない。 メッセージは取りこぼされて、カーネルとユーザー空間プロセスは、 カーネルの状態についての同じビューを持つことができなくなる。 これが起こったこと (B<recvmsg>(2)  によって B<ENOBUFS> エラーが返される) を検知して再び同期させるのは、 アプリケーションの責任である。"
750
751 #. type: SS
752 #: build/C/man7/netlink.7:285
753 #, no-wrap
754 msgid "Address formats"
755 msgstr "アドレスのフォーマット"
756
757 #. type: Plain text
758 #: build/C/man7/netlink.7:295
759 msgid "The I<sockaddr_nl> structure describes a netlink client in user space or in the kernel.  A I<sockaddr_nl> can be either unicast (only sent to one peer) or sent to netlink multicast groups (I<nl_groups> not equal 0)."
760 msgstr "I<sockaddr_nl> 構造体はユーザー空間やカーネル空間で netlink クライアントを記述する。 I<sockaddr_nl> はユニキャスト (単一の接続先にだけ送られる) にもできるし、 netlink マルチキャストグループ (I<nl_groups> が 0 でない場合) にも送ることができる。"
761
762 #. type: Plain text
763 #: build/C/man7/netlink.7:304
764 #, no-wrap
765 msgid ""
766 "struct sockaddr_nl {\n"
767 "    sa_family_t     nl_family;  /* AF_NETLINK */\n"
768 "    unsigned short  nl_pad;     /* Zero. */\n"
769 "    pid_t           nl_pid;     /* Port ID. */\n"
770 "    __u32           nl_groups;  /* Multicast groups mask. */\n"
771 "};\n"
772 msgstr ""
773 "struct sockaddr_nl {\n"
774 "    sa_family_t     nl_family;  /* AF_NETLINK */\n"
775 "    unsigned short  nl_pad;     /* 0 である */\n"
776 "    pid_t           nl_pid;     /* ポート ID */\n"
777 "    __u32           nl_groups;  /* マルチキャストグループマスク */\n"
778 "};\n"
779
780 #. type: Plain text
781 #: build/C/man7/netlink.7:335
782 msgid "I<nl_pid> is the unicast address of netlink socket.  It's always 0 if the destination is in the kernel.  For a user-space process, I<nl_pid> is usually the PID of the process owning the destination socket.  However, I<nl_pid> identifies a netlink socket, not a process.  If a process owns several netlink sockets, then I<nl_pid> can be equal to the process ID only for at most one socket.  There are two ways to assign I<nl_pid> to a netlink socket.  If the application sets I<nl_pid> before calling B<bind>(2), then it is up to the application to make sure that I<nl_pid> is unique.  If the application sets it to 0, the kernel takes care of assigning it.  The kernel assigns the process ID to the first netlink socket the process opens and assigns a unique I<nl_pid> to every netlink socket that the process subsequently creates."
783 msgstr "I<nl_pid> は netlink ソケットのユニキャストアドレスである。 行き先がカーネルの場合は、常に 0 である。 ユーザー空間プロセスの場合、通常は I<nl_pid> は行き先のソケットを所有しているプロセスの PID である。 ただし、 I<nl_pid> はプロセスではなく netlink ソケットを同定する。 プロセスが複数の netlink ソケットを所有する場合、 I<nl_pid> は最大でも一つのソケットのプロセス ID としか等しくならない。 I<nl_pid> を netlink ソケットに割り当てる方法は 2 つある。 アプリケーションが B<bind>(2)  を呼ぶ前に I<nl_pid> を設定する場合、 I<nl_pid> が一意であることを確認するのはアプリケーションの責任となる。 アプリケーションが I<nl_pid> を 0 に設定した場合、カーネルがこの値を割り当てる。 カーネルはプロセスが最初にオープンした netlink ソケットに対してプロセス ID を割り当て、 それ以降にプロセスが作成した全ての netlink ソケットにも一意な I<nl_pid> を割り当てる。"
784
785 #.  commit d629b836d151d43332492651dd841d32e57ebe3b
786 #. type: Plain text
787 #: build/C/man7/netlink.7:372
788 msgid "I<nl_groups> is a bit mask with every bit representing a netlink group number.  Each netlink family has a set of 32 multicast groups.  When B<bind>(2)  is called on the socket, the I<nl_groups> field in the I<sockaddr_nl> should be set to a bit mask of the groups which it wishes to listen to.  The default value for this field is zero which means that no multicasts will be received.  A socket may multicast messages to any of the multicast groups by setting I<nl_groups> to a bit mask of the groups it wishes to send to when it calls B<sendmsg>(2)  or does a B<connect>(2).  Only processes with an effective UID of 0 or the B<CAP_NET_ADMIN> capability may send or listen to a netlink multicast group.  Since Linux 2.6.13, messages can't be broadcast to multiple groups.  Any replies to a message received for a multicast group should be sent back to the sending PID and the multicast group.  Some Linux kernel subsystems may additionally allow other users to send and/or receive messages.  As at Linux 3.0, the B<NETLINK_KOBJECT_UEVENT>, B<NETLINK_GENERIC>, B<NETLINK_ROUTE>, and B<NETLINK_SELINUX> groups allow other users to receive messages.  No groups allow other users to send messages."
789 msgstr ""
790 "I<nl_groups> はビットマスクで、すべてのビットが netlink グループ番号を表す。\n"
791 "それぞれの netlink ファミリーは 32 のマルチキャストグループのセットを持つ。\n"
792 "それぞれの netlink ファミリーは 32 のマルチキャストグループの セットを持つ。\n"
793 "B<bind>(2) がソケットに対して呼ばれると、 I<sockaddr_nl> の I<nl_groups> \n"
794 "フィールドには listen したいグループのビットマスクがセットされる。\n"
795 "デフォルトの値は 0 で、マルチキャストを一切受信しない。\n"
796 "B<sendmsg>(2) や B<connect>(2) によって、あるソケットからメッセージを\n"
797 "マルチキャストしたいときは、 I<nl_groups> に送信したいグループのビットマスク\n"
798 "をセットすればよい。\n"
799 "netlink マルチキャストグループに送信したり、これを listen したりできるのは、\n"
800 "実効ユーザー ID が 0 のプロセスか、 B<CAP_NET_ADMIN> 権限を持つプロセスのみである。\n"
801 "Linux 2.6.13 以降では、メッセージを複数のグループへのブロードキャストすることはできない。\n"
802 "マルチキャストグループ向けメッセージを受信した場合、これ対する応答は\n"
803 "送り主の PID とマルチキャストグループとに送り返すべきである。\n"
804 "さらに、Linux のカーネルサブシステムによっては、\n"
805 "他のユーザーもメッセージの送受信ができる場合がある。\n"
806 "Linux 3.0 の時点では、\n"
807 "B<NETLINK_KOBJECT_UEVENT>, B<NETLINK_GENERIC>, B<NETLINK_ROUTE>,\n"
808 "B<NETLINK_SELINUX> グループでは他のユーザーがメッセージを受信することができる。\n"
809 "他のユーザーがメッセージを送信できるグループは存在しない。"
810
811 #. type: SH
812 #: build/C/man7/netlink.7:372 build/C/man7/rtnetlink.7:455
813 #, no-wrap
814 msgid "VERSIONS"
815 msgstr "バージョン"
816
817 #. type: Plain text
818 #: build/C/man7/netlink.7:374
819 msgid "The socket interface to netlink is a new feature of Linux 2.2."
820 msgstr "netlink へのソケットインターフェースは Linux 2.2 の新機能である。"
821
822 #. type: Plain text
823 #: build/C/man7/netlink.7:378
824 msgid "Linux 2.0 supported a more primitive device-based netlink interface (which is still available as a compatibility option).  This obsolete interface is not described here."
825 msgstr "Linux 2.0 は、もっと原始的なデバイスベースの netlink インターフェースを サポートしていた (これも互換性のために今でも使用できる)。 古いインターフェースに関してはここでは記述しない。"
826
827 #. type: Plain text
828 #: build/C/man7/netlink.7:380
829 msgid "NETLINK_SELINUX appeared in Linux 2.6.4."
830 msgstr "NETLINK_SELINUX は Linux 2.6.4 で登場した。"
831
832 #. type: Plain text
833 #: build/C/man7/netlink.7:382
834 msgid "NETLINK_AUDIT appeared in Linux 2.6.6."
835 msgstr "NETLINK_AUDIT は Linux 2.6.6 で登場した。"
836
837 #. type: Plain text
838 #: build/C/man7/netlink.7:384
839 msgid "NETLINK_KOBJECT_UEVENT appeared in Linux 2.6.10."
840 msgstr "NETLINK_KOBJECT_UEVENT は Linux 2.6.10 で登場した。"
841
842 #. type: Plain text
843 #: build/C/man7/netlink.7:386
844 msgid "NETLINK_W1 and NETLINK_FIB_LOOKUP appeared in Linux 2.6.13."
845 msgstr "NETLINK_W1, NETLINK_FIB_LOOKUP は Linux 2.6.13 で登場した。"
846
847 #. type: Plain text
848 #: build/C/man7/netlink.7:389
849 msgid "NETLINK_INET_DIAG, NETLINK_CONNECTOR and NETLINK_NETFILTER appeared in Linux 2.6.14."
850 msgstr "NETLINK_INET_DIAG, NETLINK_CONNECTOR, NETLINK_NETFILTER は Linux 2.6.14 で登場した。"
851
852 #. type: Plain text
853 #: build/C/man7/netlink.7:391
854 msgid "NETLINK_GENERIC and NETLINK_ISCSI appeared in Linux 2.6.15."
855 msgstr "NETLINK_GENERIC, NETLINK_ISCSI は Linux 2.6.15 で登場した。"
856
857 #. type: Plain text
858 #: build/C/man7/netlink.7:397
859 msgid "It is often better to use netlink via I<libnetlink> or I<libnl> than via the low-level kernel interface."
860 msgstr "低レベルのカーネルインターフェースより、 I<libnetlink> または I<libnl> を通して netlink を利用するほうが良いことが多い。"
861
862 #. type: SH
863 #: build/C/man7/netlink.7:397 build/C/man3/rtnetlink.3:84
864 #: build/C/man7/rtnetlink.7:458
865 #, no-wrap
866 msgid "BUGS"
867 msgstr "バグ"
868
869 #. type: Plain text
870 #: build/C/man7/netlink.7:399
871 msgid "This manual page is not complete."
872 msgstr "この man ページは完成していない。"
873
874 #. type: SH
875 #: build/C/man7/netlink.7:399 build/C/man3/rtnetlink.3:86
876 #, no-wrap
877 msgid "EXAMPLE"
878 msgstr "例"
879
880 #. type: Plain text
881 #: build/C/man7/netlink.7:407
882 msgid "The following example creates a B<NETLINK_ROUTE> netlink socket which will listen to the B<RTMGRP_LINK> (network interface create/delete/up/down events) and B<RTMGRP_IPV4_IFADDR> (IPv4 addresses add/delete events) multicast groups."
883 msgstr "以下の例では、 B<RTMGRP_LINK> (ネットワークインターフェースの create/delete/up/down イベント) と B<RTMGRP_IPV4_IFADDR> (IPv4 アドレスの add/delete イベント) マルチキャストグループを listen する B<NETLINK_ROUTE> netlink を作成している。"
884
885 #. type: Plain text
886 #: build/C/man7/netlink.7:411
887 #, no-wrap
888 msgid "struct sockaddr_nl sa;\n"
889 msgstr "struct sockaddr_nl sa;\n"
890
891 #. type: Plain text
892 #: build/C/man7/netlink.7:415
893 #, no-wrap
894 msgid ""
895 "memset(&sa, 0, sizeof(sa));\n"
896 "sa.nl_family = AF_NETLINK;\n"
897 "sa.nl_groups = RTMGRP_LINK | RTMGRP_IPV4_IFADDR;\n"
898 msgstr ""
899 "memset(&sa, 0, sizeof(sa));\n"
900 "sa.nl_family = AF_NETLINK;\n"
901 "sa.nl_groups = RTMGRP_LINK | RTMGRP_IPV4_IFADDR;\n"
902
903 #. type: Plain text
904 #: build/C/man7/netlink.7:418
905 #, no-wrap
906 msgid ""
907 "fd = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE);\n"
908 "bind(fd, (struct sockaddr *) &sa, sizeof(sa));\n"
909 msgstr ""
910 "fd = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE);\n"
911 "bind(fd, (struct sockaddr *) &sa, sizeof(sa));\n"
912
913 #. type: Plain text
914 #: build/C/man7/netlink.7:425
915 msgid "The next example demonstrates how to send a netlink message to the kernel (pid 0).  Note that the application must take care of message sequence numbers in order to reliably track acknowledgements."
916 msgstr "次の例では、netlink メッセージをカーネル (pid 0) に送る方法を示している。 応答を追跡する際の信頼性を高めるために、アプリケーションが メッセージのシーケンス番号を正しく処理しなければならない点に注意すること。"
917
918 #. type: Plain text
919 #: build/C/man7/netlink.7:432
920 #, no-wrap
921 msgid ""
922 "struct nlmsghdr *nh;    /* The nlmsghdr with payload to send. */\n"
923 "struct sockaddr_nl sa;\n"
924 "struct iovec iov = { nh, nh-E<gt>nlmsg_len };\n"
925 "struct msghdr msg;\n"
926 msgstr ""
927 "struct nlmsghdr *nh;    /* 送信する nlmsghdr とペイロード */\n"
928 "struct sockaddr_nl sa;\n"
929 "struct iovec iov = { nh, nh-E<gt>nlmsg_len };\n"
930 "struct msghdr msg;\n"
931
932 #. type: Plain text
933 #: build/C/man7/netlink.7:440
934 #, no-wrap
935 msgid ""
936 "msg = { &sa, sizeof(sa), &iov, 1, NULL, 0, 0 };\n"
937 "memset(&sa, 0, sizeof(sa));\n"
938 "sa.nl_family = AF_NETLINK;\n"
939 "nh-E<gt>nlmsg_pid = 0;\n"
940 "nh-E<gt>nlmsg_seq = ++sequence_number;\n"
941 "/* Request an ack from kernel by setting NLM_F_ACK. */\n"
942 "nh-E<gt>nlmsg_flags |= NLM_F_ACK;\n"
943 msgstr ""
944 "msg = { &sa, sizeof(sa), &iov, 1, NULL, 0, 0 };\n"
945 "memset(&sa, 0, sizeof(sa));\n"
946 "sa.nl_family = AF_NETLINK;\n"
947 "nh-E<gt>nlmsg_pid = 0;\n"
948 "nh-E<gt>nlmsg_seq = ++sequence_number;\n"
949 "/* NLM_F_ACK を設定することで、カーネルに応答を要求する */\n"
950 "nh-E<gt>nlmsg_flags |= NLM_F_ACK;\n"
951
952 #. type: Plain text
953 #: build/C/man7/netlink.7:442
954 #, no-wrap
955 msgid "sendmsg(fd, &msg, 0);\n"
956 msgstr "sendmsg(fd, &msg, 0);\n"
957
958 #. type: Plain text
959 #: build/C/man7/netlink.7:446
960 msgid "And the last example is about reading netlink message."
961 msgstr "最後は、netlink メッセージの読み込みの例である。"
962
963 #. type: Plain text
964 #: build/C/man7/netlink.7:455
965 #, no-wrap
966 msgid ""
967 "int len;\n"
968 "char buf[4096];\n"
969 "struct iovec iov = { buf, sizeof(buf) };\n"
970 "struct sockaddr_nl sa;\n"
971 "struct msghdr msg;\n"
972 "struct nlmsghdr *nh;\n"
973 msgstr ""
974 "int len;\n"
975 "char buf[4096];\n"
976 "struct iovec iov = { buf, sizeof(buf) };\n"
977 "struct sockaddr_nl sa;\n"
978 "struct msghdr msg;\n"
979 "struct nlmsghdr *nh;\n"
980
981 #. type: Plain text
982 #: build/C/man7/netlink.7:458
983 #, no-wrap
984 msgid ""
985 "msg = { &sa, sizeof(sa), &iov, 1, NULL, 0, 0 };\n"
986 "len = recvmsg(fd, &msg, 0);\n"
987 msgstr ""
988 "msg = { &sa, sizeof(sa), &iov, 1, NULL, 0, 0 };\n"
989 "len = recvmsg(fd, &msg, 0);\n"
990
991 #. type: Plain text
992 #: build/C/man7/netlink.7:464
993 #, no-wrap
994 msgid ""
995 "for (nh = (struct nlmsghdr *) buf; NLMSG_OK (nh, len);\n"
996 "     nh = NLMSG_NEXT (nh, len)) {\n"
997 "    /* The end of multipart message. */\n"
998 "    if (nh-E<gt>nlmsg_type == NLMSG_DONE)\n"
999 "        return;\n"
1000 msgstr ""
1001 "for (nh = (struct nlmsghdr *) buf; NLMSG_OK (nh, len);\n"
1002 "     nh = NLMSG_NEXT (nh, len)) {\n"
1003 "    /* マルチパートメッセージの終わり */\n"
1004 "    if (nh-E<gt>nlmsg_type == NLMSG_DONE)\n"
1005 "        return;\n"
1006
1007 #. type: Plain text
1008 #: build/C/man7/netlink.7:468
1009 #, no-wrap
1010 msgid ""
1011 "    if (nh-E<gt>nlmsg_type == NLMSG_ERROR)\n"
1012 "        /* Do some error handling. */\n"
1013 "    ...\n"
1014 msgstr ""
1015 "    if (nh-E<gt>nlmsg_type == NLMSG_ERROR)\n"
1016 "        /* 何らかのエラー処理を行う */\n"
1017 "    ...\n"
1018
1019 #. type: Plain text
1020 #: build/C/man7/netlink.7:472
1021 #, no-wrap
1022 msgid ""
1023 "    /* Continue with parsing payload. */\n"
1024 "    ...\n"
1025 "}\n"
1026 msgstr ""
1027 "    /* ペイロードの解析を続ける */\n"
1028 "    ...\n"
1029 "}\n"
1030
1031 #. type: Plain text
1032 #: build/C/man7/netlink.7:479
1033 msgid "B<cmsg>(3), B<netlink>(3), B<capabilities>(7), B<rtnetlink>(7)"
1034 msgstr "B<cmsg>(3), B<netlink>(3), B<capabilities>(7), B<rtnetlink>(7)"
1035
1036 #. type: Plain text
1037 #: build/C/man7/netlink.7:483
1038 msgid "E<.UR ftp://ftp.inr.ac.ru\\:/ip-routing\\:/iproute2*> information about libnetlink E<.UE>"
1039 msgstr "E<.UR ftp://ftp.inr.ac.ru\\:/ip-routing\\:/iproute2*> libnetlink に関する情報 E<.UE>"
1040
1041 #. type: Plain text
1042 #: build/C/man7/netlink.7:487
1043 msgid "E<.UR http://people.suug.ch\\:/~tgr\\:/libnl/> information about libnl E<.UE>"
1044 msgstr "E<.UR http://people.suug.ch\\:/~tgr\\:/libnl/> libnl に関する情報 E<.UE>"
1045
1046 #. type: Plain text
1047 #: build/C/man7/netlink.7:489
1048 msgid "RFC 3549 \"Linux Netlink as an IP Services Protocol\""
1049 msgstr "RFC 3549 \"Linux Netlink as an IP Services Protocol\""
1050
1051 #. type: TH
1052 #: build/C/man3/rtnetlink.3:12 build/C/man7/rtnetlink.7:15
1053 #, no-wrap
1054 msgid "RTNETLINK"
1055 msgstr "RTNETLINK"
1056
1057 #. type: TH
1058 #: build/C/man3/rtnetlink.3:12
1059 #, no-wrap
1060 msgid "2014-09-06"
1061 msgstr "2014-09-06"
1062
1063 #. type: Plain text
1064 #: build/C/man3/rtnetlink.3:15
1065 msgid "rtnetlink - macros to manipulate rtnetlink messages"
1066 msgstr "rtnetlink - rtnetlink メッセージを操作するマクロ"
1067
1068 #. type: Plain text
1069 #: build/C/man3/rtnetlink.3:17 build/C/man7/rtnetlink.7:20
1070 msgid "B<#include E<lt>asm/types.hE<gt>>"
1071 msgstr "B<#include E<lt>asm/types.hE<gt>>"
1072
1073 #. type: Plain text
1074 #: build/C/man3/rtnetlink.3:19 build/C/man7/rtnetlink.7:22
1075 msgid "B<#include E<lt>linux/netlink.hE<gt>>"
1076 msgstr "B<#include E<lt>linux/netlink.hE<gt>>"
1077
1078 #. type: Plain text
1079 #: build/C/man3/rtnetlink.3:21 build/C/man7/rtnetlink.7:24
1080 msgid "B<#include E<lt>linux/rtnetlink.hE<gt>>"
1081 msgstr "B<#include E<lt>linux/rtnetlink.hE<gt>>"
1082
1083 #. type: Plain text
1084 #: build/C/man3/rtnetlink.3:23 build/C/man7/rtnetlink.7:26
1085 msgid "B<#include E<lt>sys/socket.hE<gt>>"
1086 msgstr "B<#include E<lt>sys/socket.hE<gt>>"
1087
1088 #. type: Plain text
1089 #: build/C/man3/rtnetlink.3:26 build/C/man7/rtnetlink.7:28
1090 msgid "B<rtnetlink_socket = socket(AF_NETLINK, int >I<socket_type>B<, NETLINK_ROUTE);>"
1091 msgstr "B<rtnetlink_socket = socket(AF_NETLINK, int >I<socket_type>B<, NETLINK_ROUTE);>"
1092
1093 #. type: Plain text
1094 #: build/C/man3/rtnetlink.3:28
1095 msgid "B<int RTA_OK(struct rtattr *>I<rta>B<, int >I<rtabuflen>B<);>"
1096 msgstr "B<int RTA_OK(struct rtattr *>I<rta>B<, int >I<rtabuflen>B<);>"
1097
1098 #. type: Plain text
1099 #: build/C/man3/rtnetlink.3:30
1100 msgid "B<void *RTA_DATA(struct rtattr *>I<rta>B<);>"
1101 msgstr "B<void *RTA_DATA(struct rtattr *>I<rta>B<);>"
1102
1103 #. type: Plain text
1104 #: build/C/man3/rtnetlink.3:32
1105 msgid "B<unsigned int RTA_PAYLOAD(struct rtattr *>I<rta>B<);>"
1106 msgstr "B<unsigned int RTA_PAYLOAD(struct rtattr *>I<rta>B<);>"
1107
1108 #. type: Plain text
1109 #: build/C/man3/rtnetlink.3:35
1110 msgid "B<struct rtattr *RTA_NEXT(struct rtattr *>I<rta>B<, unsigned int >I<rtabuflen>B<);>"
1111 msgstr "B<struct rtattr *RTA_NEXT(struct rtattr *>I<rta>B<, unsigned int >I<rtabuflen>B<);>"
1112
1113 #. type: Plain text
1114 #: build/C/man3/rtnetlink.3:37
1115 msgid "B<unsigned int RTA_LENGTH(unsigned int >I<length>B<);>"
1116 msgstr "B<unsigned int RTA_LENGTH(unsigned int >I<length>B<);>"
1117
1118 #. type: Plain text
1119 #: build/C/man3/rtnetlink.3:39
1120 msgid "B<unsigned int RTA_SPACE(unsigned int >I<length>B<);>"
1121 msgstr "B<unsigned int RTA_SPACE(unsigned int >I<length>B<);>"
1122
1123 #. type: Plain text
1124 #: build/C/man3/rtnetlink.3:46
1125 msgid "All B<rtnetlink>(7)  messages consist of a B<netlink>(7)  message header and appended attributes.  The attributes should be manipulated only using the macros provided here."
1126 msgstr "全ての B<rtnetlink>(7)  メッセージは B<netlink>(7)  メッセージヘッダと追加属性からなる。 属性の操作は、必ずここに挙げたマクロだけを使って行うべきである。"
1127
1128 #. type: Plain text
1129 #: build/C/man3/rtnetlink.3:57
1130 msgid "B<RTA_OK(>I<rta>B<, >I<attrlen>B<)> returns true if I<rta> points to a valid routing attribute; I<attrlen> is the running length of the attribute buffer.  When not true then you must assume there are no more attributes in the message, even if I<attrlen> is nonzero."
1131 msgstr "B<RTA_OK(>I<rta>B<, >I<attrlen>B<)> は I<rta> が有効なルーティング属性へのポインターであれば真を返す。 I<attrlen> は属性バッファーの実働時の長さ (running length) である。 真でなければ、例え I<attrlen> がゼロでなくても、 メッセージ中にはもうそれ以上属性は無いと考えなければならない。"
1132
1133 #. type: Plain text
1134 #: build/C/man3/rtnetlink.3:60
1135 msgid "B<RTA_DATA(>I<rta>B<)> returns a pointer to the start of this attribute's data."
1136 msgstr "B<RTA_DATA(>I<rta>B<)> はこの属性データの先頭へのポインターを返す。"
1137
1138 #. type: Plain text
1139 #: build/C/man3/rtnetlink.3:63
1140 msgid "B<RTA_PAYLOAD(>I<rta>B<)> returns the length of this attribute's data."
1141 msgstr "B<RTA_PAYLOAD(>I<rta>B<)> はこの属性データの長さを返す。"
1142
1143 #. type: Plain text
1144 #: build/C/man3/rtnetlink.3:72
1145 msgid "B<RTA_NEXT(>I<rta>B<, >I<attrlen>B<)> gets the next attribute after I<rta>.  Calling this macro will update I<attrlen>.  You should use B<RTA_OK> to check the validity of the returned pointer."
1146 msgstr "B<RTA_NEXT(>I<rta>B<, >I<attrlen>B<)> は I<rta> の次にある属性を取得する。 このマクロを呼ぶと I<attrlen> が更新される。 B<RTA_OK> を使って、返されたポインターが正しいかをチェックすべきである。"
1147
1148 #. type: Plain text
1149 #: build/C/man3/rtnetlink.3:77
1150 msgid "B<RTA_LENGTH(>I<len>B<)> returns the length which is required for I<len> bytes of data plus the header."
1151 msgstr "B<RTA_LENGTH(>I<len>B<)> は I<len> バイトのデータ + ヘッダに必要な長さを返す。"
1152
1153 #. type: Plain text
1154 #: build/C/man3/rtnetlink.3:82
1155 msgid "B<RTA_SPACE(>I<len>B<)> returns the amount of space which will be needed in a message with I<len> bytes of data."
1156 msgstr "B<RTA_SPACE(>I<len>B<)> は I<len> バイトのデータを持つメッセージに必要とされる容量を返す。"
1157
1158 #. type: Plain text
1159 #: build/C/man3/rtnetlink.3:86 build/C/man7/rtnetlink.7:460
1160 msgid "This manual page is incomplete."
1161 msgstr "このマニュアルは完全ではない。"
1162
1163 #.  FIXME . ? would be better to use libnetlink in the EXAMPLE code here
1164 #. type: Plain text
1165 #: build/C/man3/rtnetlink.3:89
1166 msgid "Creating a rtnetlink message to set the MTU of a device:"
1167 msgstr "デバイスの MTU をセットする rtnetlink メッセージを生成する"
1168
1169 #. type: Plain text
1170 #: build/C/man3/rtnetlink.3:91
1171 #, no-wrap
1172 msgid "    #include E<lt>linux/rtnetlink.hE<gt>\n"
1173 msgstr "    #include E<lt>linux/rtnetlink.hE<gt>\n"
1174
1175 #. type: Plain text
1176 #: build/C/man3/rtnetlink.3:93
1177 #, no-wrap
1178 msgid "    ...\n"
1179 msgstr "    ...\n"
1180
1181 #. type: Plain text
1182 #: build/C/man3/rtnetlink.3:99
1183 #, no-wrap
1184 msgid ""
1185 "    struct {\n"
1186 "        struct nlmsghdr  nh;\n"
1187 "        struct ifinfomsg if;\n"
1188 "        char             attrbuf[512];\n"
1189 "    } req;\n"
1190 msgstr ""
1191 "    struct {\n"
1192 "        struct nlmsghdr  nh;\n"
1193 "        struct ifinfomsg if;\n"
1194 "        char             attrbuf[512];\n"
1195 "    } req;\n"
1196
1197 #. type: Plain text
1198 #: build/C/man3/rtnetlink.3:102
1199 #, no-wrap
1200 msgid ""
1201 "    struct rtattr *rta;\n"
1202 "    unsigned int mtu = 1000;\n"
1203 msgstr ""
1204 "    struct rtattr *rta;\n"
1205 "    unsigned int mtu = 1000;\n"
1206
1207 #. type: Plain text
1208 #: build/C/man3/rtnetlink.3:104
1209 #, no-wrap
1210 msgid "    int rtnetlink_sk = socket(AF_NETLINK, SOCK_DGRAM, NETLINK_ROUTE);\n"
1211 msgstr "    int rtnetlink_sk = socket(AF_NETLINK, SOCK_DGRAM, NETLINK_ROUTE);\n"
1212
1213 #. type: Plain text
1214 #: build/C/man3/rtnetlink.3:120
1215 #, no-wrap
1216 msgid ""
1217 "    memset(&req, 0, sizeof(req));\n"
1218 "    req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(struct ifinfomsg));\n"
1219 "    req.nh.nlmsg_flags = NLM_F_REQUEST;\n"
1220 "    req.nh.nlmsg_type = RTM_NEWLINK;\n"
1221 "    req.if.ifi_family = AF_UNSPEC;\n"
1222 "    req.if.ifi_index = INTERFACE_INDEX;\n"
1223 "    req.if.ifi_change = 0xffffffff; /* ??? */\n"
1224 "    rta = (struct rtattr *)(((char *) &req) +\n"
1225 "                             NLMSG_ALIGN(req.nh.nlmsg_len));\n"
1226 "    rta-E<gt>rta_type = IFLA_MTU;\n"
1227 "    rta-E<gt>rta_len = RTA_LENGTH(sizeof(unsigned int));\n"
1228 "    req.n.nlmsg_len = NLMSG_ALIGN(req.nh.nlmsg_len) +\n"
1229 "                                  RTA_LENGTH(sizeof(mtu));\n"
1230 "    memcpy(RTA_DATA(rta), &mtu, sizeof(mtu));\n"
1231 "    send(rtnetlink_sk, &req, req.nh.nlmsg_len, 0);\n"
1232 msgstr ""
1233 "    memset(&req, 0, sizeof(req));\n"
1234 "    req.nh.nlmsg_len = NLMSG_LENGTH(sizeof(struct ifinfomsg));\n"
1235 "    req.nh.nlmsg_flags = NLM_F_REQUEST;\n"
1236 "    req.nh.nlmsg_type = RTM_NEWLINK;\n"
1237 "    req.if.ifi_family = AF_UNSPEC;\n"
1238 "    req.if.ifi_index = INTERFACE_INDEX;\n"
1239 "    req.if.ifi_change = 0xffffffff; /* ??? */\n"
1240 "    rta = (struct rtattr *)(((char *) &req) +\n"
1241 "                             NLMSG_ALIGN(req.nh.nlmsg_len));\n"
1242 "    rta-E<gt>rta_type = IFLA_MTU;\n"
1243 "    rta-E<gt>rta_len = RTA_LENGTH(sizeof(unsigned int));\n"
1244 "    req.n.nlmsg_len = NLMSG_ALIGN(req.nh.nlmsg_len) +\n"
1245 "                                  RTA_LENGTH(sizeof(mtu));\n"
1246 "    memcpy(RTA_DATA(rta), &mtu, sizeof(mtu));\n"
1247 "    send(rtnetlink_sk, &req, req.nh.nlmsg_len, 0);\n"
1248
1249 #. type: Plain text
1250 #: build/C/man3/rtnetlink.3:125
1251 msgid "B<netlink>(3), B<netlink>(7), B<rtnetlink>(7)"
1252 msgstr "B<netlink>(3), B<netlink>(7), B<rtnetlink>(7)"
1253
1254 #. type: TH
1255 #: build/C/man7/rtnetlink.7:15
1256 #, no-wrap
1257 msgid "2013-03-05"
1258 msgstr "2013-03-05"
1259
1260 #. type: Plain text
1261 #: build/C/man7/rtnetlink.7:18
1262 msgid "rtnetlink - Linux IPv4 routing socket"
1263 msgstr "rtnetlink - Linux IPv4 ルーティングソケット"
1264
1265 #.  FIXME . ? all these macros could be moved to rtnetlink(3)
1266 #. type: Plain text
1267 #: build/C/man7/rtnetlink.7:42
1268 msgid "Rtnetlink allows the kernel's routing tables to be read and altered.  It is used within the kernel to communicate between various subsystems, though this usage is not documented here, and for communication with user-space programs.  Network routes, IP addresses, link parameters, neighbor setups, queueing disciplines, traffic classes and packet classifiers may all be controlled through B<NETLINK_ROUTE> sockets.  It is based on netlink messages; see B<netlink>(7)  for more information."
1269 msgstr "B<rtnetlink> はカーネルのルーティングテーブルを読んだり変更したり するためのものである。これはカーネルが内部のサブシステムと 通信するためにも用いられているが、それはここでは記述しない。 この man ページではユーザー空間のプログラムとの通信に関してのみ述べる。 ネットワーク経路・IP アドレス・リンクパラメーター・ 近傍設定 (neighbor setup)・キューイングルール (queueing dicipline)・ トラフィッククラス・パケットのクラス分類などが、すべて B<NETLINK_ROUTE> ソケットを通して制御できる。 B<rtnetlink> は netlink メッセージをベースにしている。詳細は B<netlink>(7)  を見ること。"
1270
1271 #. type: SS
1272 #: build/C/man7/rtnetlink.7:42
1273 #, no-wrap
1274 msgid "Routing attributes"
1275 msgstr "ルーティング属性"
1276
1277 #. type: Plain text
1278 #: build/C/man7/rtnetlink.7:44
1279 msgid "Some rtnetlink messages have optional attributes after the initial header:"
1280 msgstr "rtnetlink メッセージには、初期ヘッダの後に付加的な属性を 持つものがある。"
1281
1282 #. type: Plain text
1283 #: build/C/man7/rtnetlink.7:52
1284 #, no-wrap
1285 msgid ""
1286 "struct rtattr {\n"
1287 "    unsigned short rta_len;    /* Length of option */\n"
1288 "    unsigned short rta_type;   /* Type of option */\n"
1289 "    /* Data follows */\n"
1290 "};\n"
1291 msgstr ""
1292 "struct rtattr {\n"
1293 "    unsigned short rta_len;    /* Length of option */\n"
1294 "    unsigned short rta_type;   /* Type of option */\n"
1295 "    /* Data follows */\n"
1296 "};\n"
1297
1298 #. type: Plain text
1299 #: build/C/man7/rtnetlink.7:58
1300 msgid "These attributes should be manipulated using only the RTA_* macros or libnetlink, see B<rtnetlink>(3)."
1301 msgstr "これらの属性の操作は、 RTA_* マクロか libnetlink のみを使って行うべきである。 B<rtnetlink>(3)  を見よ。"
1302
1303 #. type: SS
1304 #: build/C/man7/rtnetlink.7:58
1305 #, no-wrap
1306 msgid "Messages"
1307 msgstr "メッセージ"
1308
1309 #. type: Plain text
1310 #: build/C/man7/rtnetlink.7:61
1311 msgid "Rtnetlink consists of these message types (in addition to standard netlink messages):"
1312 msgstr "rtnetlink は (標準的な netlink メッセージに加えて)  以下のメッセージタイプから構成される。"
1313
1314 #. type: TP
1315 #: build/C/man7/rtnetlink.7:61
1316 #, no-wrap
1317 msgid "B<RTM_NEWLINK>, B<RTM_DELLINK>, B<RTM_GETLINK>"
1318 msgstr "B<RTM_NEWLINK>, B<RTM_DELLINK>, B<RTM_GETLINK>"
1319
1320 #. type: Plain text
1321 #: build/C/man7/rtnetlink.7:69
1322 msgid "Create, remove or get information about a specific network interface.  These messages contain an I<ifinfomsg> structure followed by a series of I<rtattr> structures."
1323 msgstr "指定したネットワークインターフェースの情報を、生成・削除・取得する。 これらのメッセージは I<ifinfomsg> 構造体と、それに続いていくつかの I<rtattr> 構造体を伴う。"
1324
1325 #. type: Plain text
1326 #: build/C/man7/rtnetlink.7:78
1327 #, no-wrap
1328 msgid ""
1329 "struct ifinfomsg {\n"
1330 "    unsigned char  ifi_family; /* AF_UNSPEC */\n"
1331 "    unsigned short ifi_type;   /* Device type */\n"
1332 "    int            ifi_index;  /* Interface index */\n"
1333 "    unsigned int   ifi_flags;  /* Device flags  */\n"
1334 "    unsigned int   ifi_change; /* change mask */\n"
1335 "};\n"
1336 msgstr ""
1337 "struct ifinfomsg {\n"
1338 "    unsigned char  ifi_family; /* AF_UNSPEC */\n"
1339 "    unsigned short ifi_type;   /* Device type */\n"
1340 "    int            ifi_index;  /* Interface index */\n"
1341 "    unsigned int   ifi_flags;  /* Device flags  */\n"
1342 "    unsigned int   ifi_change; /* change mask */\n"
1343 "};\n"
1344
1345 #.  FIXME Document ifinfomsg.ifi_type
1346 #. type: Plain text
1347 #: build/C/man7/rtnetlink.7:92
1348 msgid "I<ifi_flags> contains the device flags, see B<netdevice>(7); I<ifi_index> is the unique interface index (since Linux 3.7, it is possible to feed a nonzero value with the B<RTM_NEWLINK> message, thus creating a link with the given I<ifindex>); I<ifi_change> is reserved for future use and should be always set to 0xFFFFFFFF."
1349 msgstr "I<ifi_flags> はデバイスのフラグである。 B<netdevice>(7) を参照。 I<ifi_index> は他と重ならないインターフェースの index である (Linux 3.7 以降では、 B<RTMGRP_LINK> メッセージで 0 以外の値を指定することができ、そのため指定した I<ifindex> でリンクを作成できる)。 I<ifi_change> は将来の利用のために予約されており、常に 0xFFFFFFFF にセットすべきである。"
1350
1351 #. type: tbl table
1352 #: build/C/man7/rtnetlink.7:96
1353 #, no-wrap
1354 msgid "Routing attributes\n"
1355 msgstr "ルーティング属性\n"
1356
1357 #. type: tbl table
1358 #: build/C/man7/rtnetlink.7:97 build/C/man7/rtnetlink.7:164
1359 #: build/C/man7/rtnetlink.7:313
1360 #, no-wrap
1361 msgid "rta_type:value type:description\n"
1362 msgstr "rta_type:値の型:説明\n"
1363
1364 #. type: tbl table
1365 #: build/C/man7/rtnetlink.7:99
1366 #, no-wrap
1367 msgid "IFLA_UNSPEC:-:unspecified.\n"
1368 msgstr "IFLA_UNSPEC:-:指定されていない。\n"
1369
1370 #. type: tbl table
1371 #: build/C/man7/rtnetlink.7:100
1372 #, no-wrap
1373 msgid "IFLA_ADDRESS:hardware address:interface L2 address\n"
1374 msgstr "IFLA_ADDRESS:hardware address:インターフェース L2 アドレス\n"
1375
1376 #. type: tbl table
1377 #: build/C/man7/rtnetlink.7:101
1378 #, no-wrap
1379 msgid "IFLA_BROADCAST:hardware address:L2 broadcast address.\n"
1380 msgstr "IFLA_BROADCAST:hardware address:L2 ブロードキャストアドレス\n"
1381
1382 #. type: tbl table
1383 #: build/C/man7/rtnetlink.7:102
1384 #, no-wrap
1385 msgid "IFLA_IFNAME:asciiz string:Device name.\n"
1386 msgstr "IFLA_IFNAME:asciiz string:デバイス名\n"
1387
1388 #. type: tbl table
1389 #: build/C/man7/rtnetlink.7:103
1390 #, no-wrap
1391 msgid "IFLA_MTU:unsigned int:MTU of the device.\n"
1392 msgstr "IFLA_MTU:unsigned int:デバイスの MTU\n"
1393
1394 #. type: tbl table
1395 #: build/C/man7/rtnetlink.7:104
1396 #, no-wrap
1397 msgid "IFLA_LINK:int:Link type.\n"
1398 msgstr "IFLA_LINK:int:リンクタイプ\n"
1399
1400 #. type: tbl table
1401 #: build/C/man7/rtnetlink.7:105
1402 #, no-wrap
1403 msgid "IFLA_QDISC:asciiz string:Queueing discipline.\n"
1404 msgstr "IFLA_QDISC:asciiz string:キューイングのルール\n"
1405
1406 #. type: tbl table
1407 #: build/C/man7/rtnetlink.7:106
1408 #, no-wrap
1409 msgid "IFLA_STATS:T{\n"
1410 msgstr "IFLA_STATS:T{\n"
1411
1412 #. type: tbl table
1413 #: build/C/man7/rtnetlink.7:107
1414 #, no-wrap
1415 msgid "see below\n"
1416 msgstr "下記参照\n"
1417
1418 #. type: tbl table
1419 #: build/C/man7/rtnetlink.7:108
1420 #, no-wrap
1421 msgid "T}:Interface Statistics.\n"
1422 msgstr "T}:インターフェースの統計\n"
1423
1424 #. type: Plain text
1425 #: build/C/man7/rtnetlink.7:117
1426 msgid "The value type for B<IFLA_STATS> is I<struct rtnl_link_stats> (I<struct net_device_stats> in Linux 2.4 and earlier)."
1427 msgstr "B<IFLA_STATS> の値の型は I<struct rtnl_link_stats> (Linux 2.4 以前では I<struct net_device_stats>) である。"
1428
1429 #. type: TP
1430 #: build/C/man7/rtnetlink.7:117
1431 #, no-wrap
1432 msgid "B<RTM_NEWADDR>, B<RTM_DELADDR>, B<RTM_GETADDR>"
1433 msgstr "B<RTM_NEWADDR>, B<RTM_DELADDR>, B<RTM_GETADDR>"
1434
1435 #. type: Plain text
1436 #: build/C/man7/rtnetlink.7:130
1437 msgid "Add, remove or receive information about an IP address associated with an interface.  In Linux 2.2, an interface can carry multiple IP addresses, this replaces the alias device concept in 2.0.  In Linux 2.2, these messages support IPv4 and IPv6 addresses.  They contain an I<ifaddrmsg> structure, optionally followed by I<rtattr> routing attributes."
1438 msgstr "インターフェースの IP アドレスの情報を追加・削除・取得する。 Linux 2.2 では、一つのインターフェースに複数の IP アドレスを 保持させることができ、これは 2.0 の別名デバイスの概念を置き換える。 Linux 2.2 では、これらのメッセージは IPv4 と IPv6 の両方のアドレスをサポートしている。 これらは I<ifaddrmsg> 構造体を伴う。そのあとに I<rtattr> ルーティング属性が続くこともある。"
1439
1440 #. type: Plain text
1441 #: build/C/man7/rtnetlink.7:139
1442 #, no-wrap
1443 msgid ""
1444 "struct ifaddrmsg {\n"
1445 "    unsigned char ifa_family;    /* Address type */\n"
1446 "    unsigned char ifa_prefixlen; /* Prefixlength of address */\n"
1447 "    unsigned char ifa_flags;     /* Address flags */\n"
1448 "    unsigned char ifa_scope;     /* Address scope */\n"
1449 "    int           ifa_index;     /* Interface index */\n"
1450 "};\n"
1451 msgstr ""
1452 "struct ifaddrmsg {\n"
1453 "    unsigned char ifa_family;    /* Address type */\n"
1454 "    unsigned char ifa_prefixlen; /* Prefixlength of address */\n"
1455 "    unsigned char ifa_flags;     /* Address flags */\n"
1456 "    unsigned char ifa_scope;     /* Address scope */\n"
1457 "    int           ifa_index;     /* Interface index */\n"
1458 "};\n"
1459
1460 #. type: Plain text
1461 #: build/C/man7/rtnetlink.7:159
1462 msgid "I<ifa_family> is the address family type (currently B<AF_INET> or B<AF_INET6>), I<ifa_prefixlen> is the length of the address mask of the address if defined for the family (like for IPv4), I<ifa_scope> is the address scope, I<ifa_index> is the interface index of the interface the address is associated with.  I<ifa_flags> is a flag word of B<IFA_F_SECONDARY> for secondary address (old alias interface), B<IFA_F_PERMANENT> for a permanent address set by the user and other undocumented flags."
1463 msgstr "I<ifa_family> はアドレスファミリーのタイプである (現在は B<AF_INET> または B<AF_INET6>)。 I<ifa_prefixlen> はアドレスのアドレスマスクの長さである (IPv4 のように、 そのファミリーで定義されている場合)。 I<ifa_scope> はアドレスのスコープである。 I<ifa_index> はアドレスが関連づけられているインターフェースの index である。 I<ifa_flags> はフラグワードで、 二つめのアドレス (古い別名インターフェース) の場合は B<IFA_F_SECONDARY> に、永続的なアドレスの場合は B<IFA_F_PERMANENT> に適用される。ユーザーによってセットされるフラグと、 undocumented なフラグがある。"
1464
1465 #. type: tbl table
1466 #: build/C/man7/rtnetlink.7:163 build/C/man7/rtnetlink.7:312
1467 #: build/C/man7/rtnetlink.7:430
1468 #, no-wrap
1469 msgid "Attributes\n"
1470 msgstr "属性\n"
1471
1472 #. type: tbl table
1473 #: build/C/man7/rtnetlink.7:166
1474 #, no-wrap
1475 msgid "IFA_UNSPEC:-:unspecified.\n"
1476 msgstr "IFA_UNSPEC:-:指定されていない\n"
1477
1478 #. type: tbl table
1479 #: build/C/man7/rtnetlink.7:167
1480 #, no-wrap
1481 msgid "IFA_ADDRESS:raw protocol address:interface address\n"
1482 msgstr "IFA_ADDRESS:raw protocol address:インターフェースアドレス\n"
1483
1484 #. type: tbl table
1485 #: build/C/man7/rtnetlink.7:168
1486 #, no-wrap
1487 msgid "IFA_LOCAL:raw protocol address:local address\n"
1488 msgstr "IFA_LOCAL:raw protocol address:ローカルアドレス\n"
1489
1490 #. type: tbl table
1491 #: build/C/man7/rtnetlink.7:169
1492 #, no-wrap
1493 msgid "IFA_LABEL:asciiz string:name of the interface\n"
1494 msgstr "IFA_LABEL:asciiz string:インターフェースの名前\n"
1495
1496 #. type: tbl table
1497 #: build/C/man7/rtnetlink.7:170
1498 #, no-wrap
1499 msgid "IFA_BROADCAST:raw protocol address:broadcast address.\n"
1500 msgstr "IFA_BROADCAST:raw protocol address:ブロードキャストアドレス\n"
1501
1502 #. type: tbl table
1503 #: build/C/man7/rtnetlink.7:171
1504 #, no-wrap
1505 msgid "IFA_ANYCAST:raw protocol address:anycast address\n"
1506 msgstr "IFA_ANYCAST:raw protocol address:anycast アドレス\n"
1507
1508 #. type: tbl table
1509 #: build/C/man7/rtnetlink.7:172
1510 #, no-wrap
1511 msgid "IFA_CACHEINFO:struct ifa_cacheinfo:Address information.\n"
1512 msgstr "IFA_CACHEINFO:struct ifa_cacheinfo:アドレス情報\n"
1513
1514 #. type: TP
1515 #: build/C/man7/rtnetlink.7:175
1516 #, no-wrap
1517 msgid "B<RTM_NEWROUTE>, B<RTM_DELROUTE>, B<RTM_GETROUTE>"
1518 msgstr "B<RTM_NEWROUTE>, B<RTM_DELROUTE>, B<RTM_GETROUTE>"
1519
1520 #. type: Plain text
1521 #: build/C/man7/rtnetlink.7:195
1522 msgid "Create, remove or receive information about a network route.  These messages contain an I<rtmsg> structure with an optional sequence of I<rtattr> structures following.  For B<RTM_GETROUTE>, setting I<rtm_dst_len> and I<rtm_src_len> to 0 means you get all entries for the specified routing table.  For the other fields, except I<rtm_table> and I<rtm_protocol>, 0 is the wildcard."
1523 msgstr "ネットワーク経路の情報を生成・削除・取得する。 これらのメッセージは I<rtmsg> 構造体を伴う。そのあとにいくつかの I<rtattr> 構造体を続けることもできる。 B<RTM_GETROUTE> で I<rtm_dst_len> と I<rtm_src_len> に 0 をセットすると、 指定されたルーティングテーブルの全てのエントリを所得する。 I<rtm_table> と I<rtm_protocol> 以外の他のフィールドに 0 を入れると、ワイルドカードを意味する。"
1524
1525 #. type: Plain text
1526 #: build/C/man7/rtnetlink.7:202
1527 #, no-wrap
1528 msgid ""
1529 "struct rtmsg {\n"
1530 "    unsigned char rtm_family;   /* Address family of route */\n"
1531 "    unsigned char rtm_dst_len;  /* Length of destination */\n"
1532 "    unsigned char rtm_src_len;  /* Length of source */\n"
1533 "    unsigned char rtm_tos;      /* TOS filter */\n"
1534 msgstr ""
1535 "struct rtmsg {\n"
1536 "    unsigned char rtm_family;   /* Address family of route */\n"
1537 "    unsigned char rtm_dst_len;  /* Length of destination */\n"
1538 "    unsigned char rtm_src_len;  /* Length of source */\n"
1539 "    unsigned char rtm_tos;      /* TOS filter */\n"
1540
1541 #. type: Plain text
1542 #: build/C/man7/rtnetlink.7:207
1543 #, no-wrap
1544 msgid ""
1545 "    unsigned char rtm_table;    /* Routing table ID */\n"
1546 "    unsigned char rtm_protocol; /* Routing protocol; see below */\n"
1547 "    unsigned char rtm_scope;    /* See below */\n"
1548 "    unsigned char rtm_type;     /* See below */\n"
1549 msgstr ""
1550 "    unsigned char rtm_table;    /* Routing table ID */\n"
1551 "    unsigned char rtm_protocol; /* Routing protocol; see below */\n"
1552 "    unsigned char rtm_scope;    /* See below */\n"
1553 "    unsigned char rtm_type;     /* See below */\n"
1554
1555 #. type: Plain text
1556 #: build/C/man7/rtnetlink.7:210
1557 #, no-wrap
1558 msgid ""
1559 "    unsigned int  rtm_flags;\n"
1560 "};\n"
1561 msgstr ""
1562 "    unsigned int  rtm_flags;\n"
1563 "};\n"
1564
1565 #. type: tbl table
1566 #: build/C/man7/rtnetlink.7:214
1567 #, no-wrap
1568 msgid "rtm_type:Route type\n"
1569 msgstr "rtm_type:経路のタイプ\n"
1570
1571 #. type: tbl table
1572 #: build/C/man7/rtnetlink.7:216
1573 #, no-wrap
1574 msgid "RTN_UNSPEC:unknown route\n"
1575 msgstr "RTN_UNSPEC:未知の経路\n"
1576
1577 #. type: tbl table
1578 #: build/C/man7/rtnetlink.7:217
1579 #, no-wrap
1580 msgid "RTN_UNICAST:a gateway or direct route\n"
1581 msgstr "RTN_UNICAST:ゲートウェイまたはダイレクトな経路\n"
1582
1583 #. type: tbl table
1584 #: build/C/man7/rtnetlink.7:218
1585 #, no-wrap
1586 msgid "RTN_LOCAL:a local interface route\n"
1587 msgstr "RTN_LOCAL:ローカルインターフェースの経路\n"
1588
1589 #. type: tbl table
1590 #: build/C/man7/rtnetlink.7:219
1591 #, no-wrap
1592 msgid "RTN_BROADCAST:T{\n"
1593 msgstr "RTN_BROADCAST:T{\n"
1594
1595 #. type: tbl table
1596 #: build/C/man7/rtnetlink.7:220
1597 #, no-wrap
1598 msgid "a local broadcast route (sent as a broadcast)\n"
1599 msgstr "ローカルなブロードキャスト経路 (ブロードキャストとして送信される)\n"
1600
1601 #. type: tbl table
1602 #: build/C/man7/rtnetlink.7:222
1603 #, no-wrap
1604 msgid "RTN_ANYCAST:T{\n"
1605 msgstr "RTN_ANYCAST:T{\n"
1606
1607 #. type: tbl table
1608 #: build/C/man7/rtnetlink.7:223
1609 #, no-wrap
1610 msgid "a local broadcast route (sent as a unicast)\n"
1611 msgstr "ローカルなブロードキャスト経路 (ユニキャストとして送信される)\n"
1612
1613 #. type: tbl table
1614 #: build/C/man7/rtnetlink.7:225
1615 #, no-wrap
1616 msgid "RTN_MULTICAST:a multicast route\n"
1617 msgstr "RTN_MULTICAST:マルチキャスト経路\n"
1618
1619 #. type: tbl table
1620 #: build/C/man7/rtnetlink.7:226
1621 #, no-wrap
1622 msgid "RTN_BLACKHOLE:a packet dropping route\n"
1623 msgstr "RTN_BLACKHOLE:パケットを捨てる経路\n"
1624
1625 #. type: tbl table
1626 #: build/C/man7/rtnetlink.7:227
1627 #, no-wrap
1628 msgid "RTN_UNREACHABLE:an unreachable destination\n"
1629 msgstr "RTN_UNREACHABLE:到達できない行き先\n"
1630
1631 #. type: tbl table
1632 #: build/C/man7/rtnetlink.7:228
1633 #, no-wrap
1634 msgid "RTN_PROHIBIT:a packet rejection route\n"
1635 msgstr "RTN_PROHIBIT:パケットを拒否する経路\n"
1636
1637 #. type: tbl table
1638 #: build/C/man7/rtnetlink.7:229
1639 #, no-wrap
1640 msgid "RTN_THROW:continue routing lookup in another table\n"
1641 msgstr "RTN_THROW:経路探索を別のテーブルで継続\n"
1642
1643 #. type: tbl table
1644 #: build/C/man7/rtnetlink.7:230
1645 #, no-wrap
1646 msgid "RTN_NAT:a network address translation rule\n"
1647 msgstr "RTN_NAT:ネットワークアドレスの変換ルール\n"
1648
1649 #. type: tbl table
1650 #: build/C/man7/rtnetlink.7:231
1651 #, no-wrap
1652 msgid "RTN_XRESOLVE:T{\n"
1653 msgstr "RTN_XRESOLVE:T{\n"
1654
1655 #. type: tbl table
1656 #: build/C/man7/rtnetlink.7:232
1657 #, no-wrap
1658 msgid "refer to an external resolver (not implemented)\n"
1659 msgstr "外部レゾルバを参照 (実装されていない)\n"
1660
1661 #. type: tbl table
1662 #: build/C/man7/rtnetlink.7:238
1663 #, no-wrap
1664 msgid "rtm_protocol:Route origin.\n"
1665 msgstr "rtm_protocol:経路の情報源\n"
1666
1667 #. type: tbl table
1668 #: build/C/man7/rtnetlink.7:240
1669 #, no-wrap
1670 msgid "RTPROT_UNSPEC:unknown\n"
1671 msgstr "RTPROT_UNSPEC:不明\n"
1672
1673 #. type: tbl table
1674 #: build/C/man7/rtnetlink.7:241
1675 #, no-wrap
1676 msgid "RTPROT_REDIRECT:T{\n"
1677 msgstr "RTPROT_REDIRECT:T{\n"
1678
1679 #. type: tbl table
1680 #: build/C/man7/rtnetlink.7:242
1681 #, no-wrap
1682 msgid "by an ICMP redirect (currently unused)\n"
1683 msgstr "ICMP リダイレクトによる (現在は用いられない)\n"
1684
1685 #. type: tbl table
1686 #: build/C/man7/rtnetlink.7:244
1687 #, no-wrap
1688 msgid "RTPROT_KERNEL:by the kernel\n"
1689 msgstr "RTPROT_KERNEL:カーネルによる\n"
1690
1691 #. type: tbl table
1692 #: build/C/man7/rtnetlink.7:245
1693 #, no-wrap
1694 msgid "RTPROT_BOOT:during boot\n"
1695 msgstr "RTPROT_BOOT:ブート時\n"
1696
1697 #. type: tbl table
1698 #: build/C/man7/rtnetlink.7:246
1699 #, no-wrap
1700 msgid "RTPROT_STATIC:by the administrator\n"
1701 msgstr "RTPROT_STATIC:管理者による\n"
1702
1703 #. type: Plain text
1704 #: build/C/man7/rtnetlink.7:257
1705 msgid "Values larger than B<RTPROT_STATIC> are not interpreted by the kernel, they are just for user information.  They may be used to tag the source of a routing information or to distinguish between multiple routing daemons.  See I<E<lt>linux/rtnetlink.hE<gt>> for the routing daemon identifiers which are already assigned."
1706 msgstr "B<RTPROT_STATIC> よりも大きな値はカーネルによって解釈されない。これは 単なるユーザーへの情報である。これらは経路情報の情報源を タグ付けしたり、複数のルーティングデーモンからの情報を 区別するために用いることができる。 既に割り当てられているルーティングデーモンの識別子については I<E<lt>linux/rtnetlink.hE<gt>> を見よ。"
1707
1708 #. type: Plain text
1709 #: build/C/man7/rtnetlink.7:260
1710 msgid "I<rtm_scope> is the distance to the destination:"
1711 msgstr "I<rtm_scope> は行き先への距離である。"
1712
1713 #. type: tbl table
1714 #: build/C/man7/rtnetlink.7:263
1715 #, no-wrap
1716 msgid "RT_SCOPE_UNIVERSE:global route\n"
1717 msgstr "RT_SCOPE_UNIVERSE:グローバルな経路\n"
1718
1719 #. type: tbl table
1720 #: build/C/man7/rtnetlink.7:264
1721 #, no-wrap
1722 msgid "RT_SCOPE_SITE:T{\n"
1723 msgstr "RT_SCOPE_SITE:T{\n"
1724
1725 #. type: tbl table
1726 #: build/C/man7/rtnetlink.7:265
1727 #, no-wrap
1728 msgid "interior route in the local autonomous system\n"
1729 msgstr "ローカルな自律システムにおける内部経路\n"
1730
1731 #. type: tbl table
1732 #: build/C/man7/rtnetlink.7:267
1733 #, no-wrap
1734 msgid "RT_SCOPE_LINK:route on this link\n"
1735 msgstr "RT_SCOPE_LINK:このリンク上の経路\n"
1736
1737 #. type: tbl table
1738 #: build/C/man7/rtnetlink.7:268
1739 #, no-wrap
1740 msgid "RT_SCOPE_HOST:route on the local host\n"
1741 msgstr "RT_SCOPE_HOST:ローカルホスト上の経路\n"
1742
1743 #. type: tbl table
1744 #: build/C/man7/rtnetlink.7:269
1745 #, no-wrap
1746 msgid "RT_SCOPE_NOWHERE:destination doesn't exist\n"
1747 msgstr "RT_SCOPE_NOWHERE:行き先が存在しない\n"
1748
1749 #. type: Plain text
1750 #: build/C/man7/rtnetlink.7:277
1751 msgid "The values between B<RT_SCOPE_UNIVERSE> and B<RT_SCOPE_SITE> are available to the user."
1752 msgstr "ユーザーは B<RT_SCOPE_UNIVERSE> と B<RT_SCOPE_SITE> の間の値を用いることができる。"
1753
1754 #. type: Plain text
1755 #: build/C/man7/rtnetlink.7:281
1756 msgid "The I<rtm_flags> have the following meanings:"
1757 msgstr "I<rtm_flags> は以下の意味を持つ:"
1758
1759 #. type: tbl table
1760 #: build/C/man7/rtnetlink.7:284
1761 #, no-wrap
1762 msgid "RTM_F_NOTIFY:T{\n"
1763 msgstr "RTM_F_NOTIFY:T{\n"
1764
1765 #. type: tbl table
1766 #: build/C/man7/rtnetlink.7:285
1767 #, no-wrap
1768 msgid "if the route changes, notify the user via rtnetlink\n"
1769 msgstr "経路が変更されると、 rtnetlink を通してユーザーに通知が行く。\n"
1770
1771 #. type: tbl table
1772 #: build/C/man7/rtnetlink.7:287
1773 #, no-wrap
1774 msgid "RTM_F_CLONED:route is cloned from another route\n"
1775 msgstr "RTM_F_CLONED:経路は他の経路によって複製された。\n"
1776
1777 #. type: tbl table
1778 #: build/C/man7/rtnetlink.7:288
1779 #, no-wrap
1780 msgid "RTM_F_EQUALIZE:a multipath equalizer (not yet implemented)\n"
1781 msgstr "RTM_F_EQUALIZE:マルチパスイコライザ (まだ実装されていない)\n"
1782
1783 #. type: Plain text
1784 #: build/C/man7/rtnetlink.7:293
1785 msgid "I<rtm_table> specifies the routing table"
1786 msgstr "I<rtm_table> ではルーティングテーブルを指定する。"
1787
1788 #. type: tbl table
1789 #: build/C/man7/rtnetlink.7:296
1790 #, no-wrap
1791 msgid "RT_TABLE_UNSPEC:an unspecified routing table\n"
1792 msgstr "RT_TABLE_UNSPEC:指定されていないルーティングテーブル\n"
1793
1794 #. type: tbl table
1795 #: build/C/man7/rtnetlink.7:297
1796 #, no-wrap
1797 msgid "RT_TABLE_DEFAULT:the default table\n"
1798 msgstr "RT_TABLE_DEFAULT:デフォルトのテーブル\n"
1799
1800 #. type: tbl table
1801 #: build/C/man7/rtnetlink.7:298
1802 #, no-wrap
1803 msgid "RT_TABLE_MAIN:the main table\n"
1804 msgstr "RT_TABLE_MAIN:メインのテーブル\n"
1805
1806 #. type: tbl table
1807 #: build/C/man7/rtnetlink.7:299
1808 #, no-wrap
1809 msgid "RT_TABLE_LOCAL:the local table\n"
1810 msgstr "RT_TABLE_LOCAL:ローカルテーブル\n"
1811
1812 #.  Keep table on same page
1813 #. type: Plain text
1814 #: build/C/man7/rtnetlink.7:307
1815 msgid "The user may assign arbitrary values between B<RT_TABLE_UNSPEC> and B<RT_TABLE_DEFAULT>."
1816 msgstr "ユーザーは B<RT_TABLE_UNSPEC> と B<RT_TABLE_DEFAULT>.  の間の任意の値を用いることができる。"
1817
1818 #. type: tbl table
1819 #: build/C/man7/rtnetlink.7:315
1820 #, no-wrap
1821 msgid "RTA_UNSPEC:-:ignored.\n"
1822 msgstr "RTA_UNSPEC:-:無視される\n"
1823
1824 #. type: tbl table
1825 #: build/C/man7/rtnetlink.7:316
1826 #, no-wrap
1827 msgid "RTA_DST:protocol address:Route destination address.\n"
1828 msgstr "RTA_DST:protocol address:経路の行き先アドレス\n"
1829
1830 #. type: tbl table
1831 #: build/C/man7/rtnetlink.7:317
1832 #, no-wrap
1833 msgid "RTA_SRC:protocol address:Route source address.\n"
1834 msgstr "RTA_SRC:protocol address:経路の発信元アドレス\n"
1835
1836 #. type: tbl table
1837 #: build/C/man7/rtnetlink.7:318
1838 #, no-wrap
1839 msgid "RTA_IIF:int:Input interface index.\n"
1840 msgstr "RTA_IIF:int:入力インターフェースの index\n"
1841
1842 #. type: tbl table
1843 #: build/C/man7/rtnetlink.7:319
1844 #, no-wrap
1845 msgid "RTA_OIF:int:Output interface index.\n"
1846 msgstr "RTA_OIF:int:出力インターフェースの index\n"
1847
1848 #. type: tbl table
1849 #: build/C/man7/rtnetlink.7:320
1850 #, no-wrap
1851 msgid "RTA_GATEWAY:protocol address:The gateway of the route\n"
1852 msgstr "RTA_GATEWAY:protocol address:経路のゲートウェイ\n"
1853
1854 #. type: tbl table
1855 #: build/C/man7/rtnetlink.7:321
1856 #, no-wrap
1857 msgid "RTA_PRIORITY:int:Priority of route.\n"
1858 msgstr "RTA_PRIORITY:int:経路の優先度\n"
1859
1860 #. type: tbl table
1861 #: build/C/man7/rtnetlink.7:322
1862 #, no-wrap
1863 msgid "RTA_PREFSRC::\n"
1864 msgstr "RTA_PREFSRC::\n"
1865
1866 #. type: tbl table
1867 #: build/C/man7/rtnetlink.7:323
1868 #, no-wrap
1869 msgid "RTA_METRICS:int:Route metric\n"
1870 msgstr "RTA_METRICS:int:経路のメトリック\n"
1871
1872 #. type: tbl table
1873 #: build/C/man7/rtnetlink.7:324
1874 #, no-wrap
1875 msgid "RTA_MULTIPATH::\n"
1876 msgstr "RTA_MULTIPATH::\n"
1877
1878 #. type: tbl table
1879 #: build/C/man7/rtnetlink.7:325
1880 #, no-wrap
1881 msgid "RTA_PROTOINFO::\n"
1882 msgstr "RTA_PROTOINFO::\n"
1883
1884 #. type: tbl table
1885 #: build/C/man7/rtnetlink.7:326
1886 #, no-wrap
1887 msgid "RTA_FLOW::\n"
1888 msgstr "RTA_FLOW::\n"
1889
1890 #. type: tbl table
1891 #: build/C/man7/rtnetlink.7:327
1892 #, no-wrap
1893 msgid "RTA_CACHEINFO::\n"
1894 msgstr "RTA_CACHEINFO::\n"
1895
1896 #. type: Plain text
1897 #: build/C/man7/rtnetlink.7:331
1898 msgid "B<Fill these values in!>"
1899 msgstr "B<(これらの値を埋めること!)>"
1900
1901 #. type: TP
1902 #: build/C/man7/rtnetlink.7:331
1903 #, no-wrap
1904 msgid "B<RTM_NEWNEIGH>, B<RTM_DELNEIGH>, B<RTM_GETNEIGH>"
1905 msgstr "B<RTM_NEWNEIGH>, B<RTM_DELNEIGH>, B<RTM_GETNEIGH>"
1906
1907 #. type: Plain text
1908 #: build/C/man7/rtnetlink.7:338
1909 msgid "Add, remove or receive information about a neighbor table entry (e.g., an ARP entry).  The message contains an I<ndmsg> structure."
1910 msgstr "近傍テーブル (neighbor table) のエントリ (例えば ARP エントリ) の情報を追加・削除・取得する。 このメッセージは I<ndmsg> 構造体を伴う。"
1911
1912 #. type: Plain text
1913 #: build/C/man7/rtnetlink.7:347
1914 #, no-wrap
1915 msgid ""
1916 "struct ndmsg {\n"
1917 "    unsigned char ndm_family;\n"
1918 "    int           ndm_ifindex;  /* Interface index */\n"
1919 "    __u16         ndm_state;    /* State */\n"
1920 "    __u8          ndm_flags;    /* Flags */\n"
1921 "    __u8          ndm_type;\n"
1922 "};\n"
1923 msgstr ""
1924 "struct ndmsg {\n"
1925 "    unsigned char ndm_family;\n"
1926 "    int           ndm_ifindex;  /* Interface index */\n"
1927 "    __u16         ndm_state;    /* State */\n"
1928 "    __u8          ndm_flags;    /* Flags */\n"
1929 "    __u8          ndm_type;\n"
1930 "};\n"
1931
1932 #. type: Plain text
1933 #: build/C/man7/rtnetlink.7:354
1934 #, no-wrap
1935 msgid ""
1936 "struct nda_cacheinfo {\n"
1937 "    __u32         ndm_confirmed;\n"
1938 "    __u32         ndm_used;\n"
1939 "    __u32         ndm_updated;\n"
1940 "    __u32         ndm_refcnt;\n"
1941 "};\n"
1942 msgstr ""
1943 "struct nda_cacheinfo {\n"
1944 "    __u32         ndm_confirmed;\n"
1945 "    __u32         ndm_used;\n"
1946 "    __u32         ndm_updated;\n"
1947 "    __u32         ndm_refcnt;\n"
1948 "};\n"
1949
1950 #. type: Plain text
1951 #: build/C/man7/rtnetlink.7:358
1952 msgid "I<ndm_state> is a bit mask of the following states:"
1953 msgstr "I<ndm_state> は以下の状態のビットマスクである:"
1954
1955 #. type: tbl table
1956 #: build/C/man7/rtnetlink.7:361
1957 #, no-wrap
1958 msgid "NUD_INCOMPLETE:a currently resolving cache entry\n"
1959 msgstr "NUD_INCOMPLETE:現在レゾルブ中のキャッシュエントリ\n"
1960
1961 #. type: tbl table
1962 #: build/C/man7/rtnetlink.7:362
1963 #, no-wrap
1964 msgid "NUD_REACHABLE:a confirmed working cache entry\n"
1965 msgstr "NUD_REACHABLE:動作確認済みのキャッシュエントリ\n"
1966
1967 #. type: tbl table
1968 #: build/C/man7/rtnetlink.7:363
1969 #, no-wrap
1970 msgid "NUD_STALE:an expired cache entry\n"
1971 msgstr "NUD_STALE:期限切れのキャッシュエントリ\n"
1972
1973 #. type: tbl table
1974 #: build/C/man7/rtnetlink.7:364
1975 #, no-wrap
1976 msgid "NUD_DELAY:an entry waiting for a timer\n"
1977 msgstr "NUD_DELAY:タイマー待ちのキャッシュエントリ\n"
1978
1979 #. type: tbl table
1980 #: build/C/man7/rtnetlink.7:365
1981 #, no-wrap
1982 msgid "NUD_PROBE:a cache entry that is currently reprobed\n"
1983 msgstr "NUD_PROBE:再確認中のキャッシュエントリ\n"
1984
1985 #. type: tbl table
1986 #: build/C/man7/rtnetlink.7:366
1987 #, no-wrap
1988 msgid "NUD_FAILED:an invalid cache entry\n"
1989 msgstr "NUD_FAILED:不正なキャッシュエントリ\n"
1990
1991 #. type: tbl table
1992 #: build/C/man7/rtnetlink.7:367
1993 #, no-wrap
1994 msgid "NUD_NOARP:a device with no destination cache\n"
1995 msgstr "NUD_NOARP:行き先キャッシュのないデバイス\n"
1996
1997 #. type: tbl table
1998 #: build/C/man7/rtnetlink.7:368
1999 #, no-wrap
2000 msgid "NUD_PERMANENT:a static entry\n"
2001 msgstr "NUD_PERMANENT:静的なエントリ\n"
2002
2003 #. type: Plain text
2004 #: build/C/man7/rtnetlink.7:374
2005 msgid "Valid I<ndm_flags> are:"
2006 msgstr "有効な I<ndm_flags> は以下の通り:"
2007
2008 #. type: tbl table
2009 #: build/C/man7/rtnetlink.7:377
2010 #, no-wrap
2011 msgid "NTF_PROXY:a proxy arp entry\n"
2012 msgstr "NTF_PROXY:プロクシ arp エントリ\n"
2013
2014 #. type: tbl table
2015 #: build/C/man7/rtnetlink.7:378
2016 #, no-wrap
2017 msgid "NTF_ROUTER:an IPv6 router\n"
2018 msgstr "NTF_ROUTER:IPv6 ルータ\n"
2019
2020 #.  FIXME .
2021 #.  document the members of the struct better
2022 #. type: Plain text
2023 #: build/C/man7/rtnetlink.7:388
2024 msgid "The I<rtattr> struct has the following meanings for the I<rta_type> field:"
2025 msgstr "I<rtattr> 構造体は、 I<rta_type> フィールドに応じてそれぞれ以下の意味を持つ:"
2026
2027 #. type: tbl table
2028 #: build/C/man7/rtnetlink.7:391
2029 #, no-wrap
2030 msgid "NDA_UNSPEC:unknown type\n"
2031 msgstr "NDA_UNSPEC:未知のタイプ\n"
2032
2033 #. type: tbl table
2034 #: build/C/man7/rtnetlink.7:392
2035 #, no-wrap
2036 msgid "NDA_DST:a neighbor cache n/w layer destination address\n"
2037 msgstr "NDA_DST:近傍キャッシュネットワーク層の行き先アドレス\n"
2038
2039 #. type: tbl table
2040 #: build/C/man7/rtnetlink.7:393
2041 #, no-wrap
2042 msgid "NDA_LLADDR:a neighbor cache link layer address\n"
2043 msgstr "NDA_LLADDR:近傍キャッシュリンク層のアドレス\n"
2044
2045 #. type: tbl table
2046 #: build/C/man7/rtnetlink.7:394
2047 #, no-wrap
2048 msgid "NDA_CACHEINFO:cache statistics.\n"
2049 msgstr "NDA_CACHEINFO:キャッシュの統計\n"
2050
2051 #. type: Plain text
2052 #: build/C/man7/rtnetlink.7:404
2053 msgid "If the I<rta_type> field is B<NDA_CACHEINFO>, then a I<struct nda_cacheinfo> header follows"
2054 msgstr "I<rta_type> フィールドが B<NDA_CACHEINFO> の場合には、 I<struct nda_cacheinfo> ヘッダが続く。"
2055
2056 #. type: TP
2057 #: build/C/man7/rtnetlink.7:404
2058 #, no-wrap
2059 msgid "B<RTM_NEWRULE>, B<RTM_DELRULE>, B<RTM_GETRULE>"
2060 msgstr "B<RTM_NEWRULE>, B<RTM_DELRULE>, B<RTM_GETRULE>"
2061
2062 #. type: Plain text
2063 #: build/C/man7/rtnetlink.7:409
2064 msgid "Add, delete or retrieve a routing rule.  Carries a I<struct rtmsg>"
2065 msgstr "ルーティングルールを追加・削除・取得する。 I<struct rtmsg> を伴う。"
2066
2067 #. type: TP
2068 #: build/C/man7/rtnetlink.7:409
2069 #, no-wrap
2070 msgid "B<RTM_NEWQDISC>, B<RTM_DELQDISC>, B<RTM_GETQDISC>"
2071 msgstr "B<RTM_NEWQDISC>, B<RTM_DELQDISC>, B<RTM_GETQDISC>"
2072
2073 #. type: Plain text
2074 #: build/C/man7/rtnetlink.7:416
2075 msgid "Add, remove or get a queueing discipline.  The message contains a I<struct tcmsg> and may be followed by a series of attributes."
2076 msgstr "キューイングルールを追加・削除・取得する。 このメッセージは I<struct tcmsg> を伴い、またそのあとに属性がいくつか続くこともある。"
2077
2078 #. type: Plain text
2079 #: build/C/man7/rtnetlink.7:425
2080 #, no-wrap
2081 msgid ""
2082 "struct tcmsg {\n"
2083 "    unsigned char    tcm_family;\n"
2084 "    int              tcm_ifindex;   /* interface index */\n"
2085 "    __u32            tcm_handle;    /* Qdisc handle */\n"
2086 "    __u32            tcm_parent;    /* Parent qdisc */\n"
2087 "    __u32            tcm_info;\n"
2088 "};\n"
2089 msgstr ""
2090 "struct tcmsg {\n"
2091 "    unsigned char    tcm_family;\n"
2092 "    int              tcm_ifindex;   /* interface index */\n"
2093 "    __u32            tcm_handle;    /* Qdisc handle */\n"
2094 "    __u32            tcm_parent;    /* Parent qdisc */\n"
2095 "    __u32            tcm_info;\n"
2096 "};\n"
2097
2098 #. type: tbl table
2099 #: build/C/man7/rtnetlink.7:431
2100 #, no-wrap
2101 msgid "rta_type:value type:Description\n"
2102 msgstr "rta_type:値の型:説明\n"
2103
2104 #. type: tbl table
2105 #: build/C/man7/rtnetlink.7:433
2106 #, no-wrap
2107 msgid "TCA_UNSPEC:-:unspecified\n"
2108 msgstr "TCA_UNSPEC:-:指定されていない\n"
2109
2110 #. type: tbl table
2111 #: build/C/man7/rtnetlink.7:434
2112 #, no-wrap
2113 msgid "TCA_KIND:asciiz string:Name of queueing discipline\n"
2114 msgstr "TCA_KIND:asciiz string:キューイングルールの名前\n"
2115
2116 #. type: tbl table
2117 #: build/C/man7/rtnetlink.7:435
2118 #, no-wrap
2119 msgid "TCA_OPTIONS:byte sequence:Qdisc-specific options follow\n"
2120 msgstr "TCA_OPTIONS:byte sequence:Qdisc 特有のオプションが続く\n"
2121
2122 #. type: tbl table
2123 #: build/C/man7/rtnetlink.7:436
2124 #, no-wrap
2125 msgid "TCA_STATS:struct tc_stats:Qdisc statistics.\n"
2126 msgstr "TCA_STATS:struct tc_stats:Qdisc の統計\n"
2127
2128 #. type: tbl table
2129 #: build/C/man7/rtnetlink.7:437
2130 #, no-wrap
2131 msgid "TCA_XSTATS:qdisc-specific:Module-specific statistics.\n"
2132 msgstr "TCA_XSTATS:qdisc-specific:モジュール特有の統計\n"
2133
2134 #. type: tbl table
2135 #: build/C/man7/rtnetlink.7:438
2136 #, no-wrap
2137 msgid "TCA_RATE:struct tc_estimator:Rate limit.\n"
2138 msgstr "TCA_RATE:struct tc_estimator:レート制限\n"
2139
2140 #. type: Plain text
2141 #: build/C/man7/rtnetlink.7:443
2142 msgid "In addition, various other qdisc-module-specific attributes are allowed.  For more information see the appropriate include files."
2143 msgstr "さらに、 qdisc モジュール特有の様々な属性を指定できる。 詳細な情報は適切なインクルードファイルを見よ。"
2144
2145 #. type: TP
2146 #: build/C/man7/rtnetlink.7:443
2147 #, no-wrap
2148 msgid "B<RTM_NEWTCLASS>, B<RTM_DELTCLASS>, B<RTM_GETTCLASS>"
2149 msgstr "B<RTM_NEWTCLASS>, B<RTM_DELTCLASS>, B<RTM_GETTCLASS>"
2150
2151 #. type: Plain text
2152 #: build/C/man7/rtnetlink.7:449
2153 msgid "Add, remove or get a traffic class.  These messages contain a I<struct tcmsg> as described above."
2154 msgstr "トラフィッククラスを追加・削除・取得する。 これらのメッセージは、上述の I<struct tcmsg> を伴う。"
2155
2156 #. type: TP
2157 #: build/C/man7/rtnetlink.7:449
2158 #, no-wrap
2159 msgid "B<RTM_NEWTFILTER>, B<RTM_DELTFILTER>, B<RTM_GETTFILTER>"
2160 msgstr "B<RTM_NEWTFILTER>, B<RTM_DELTFILTER>, B<RTM_GETTFILTER>"
2161
2162 #. type: Plain text
2163 #: build/C/man7/rtnetlink.7:455
2164 msgid "Add, remove or receive information about a traffic filter.  These messages contain a I<struct tcmsg> as described above."
2165 msgstr "トラフィックフィルターの情報を追加・削除・取得する。 これらのメッセージは、上述の I<struct tcmsg> を伴う。"
2166
2167 #. type: Plain text
2168 #: build/C/man7/rtnetlink.7:458
2169 msgid "B<rtnetlink> is a new feature of Linux 2.2."
2170 msgstr "B<rtnetlink> は Linux 2.2 の新機能である。"
2171
2172 #. type: Plain text
2173 #: build/C/man7/rtnetlink.7:465
2174 msgid "B<cmsg>(3), B<rtnetlink>(3), B<ip>(7), B<netlink>(7)"
2175 msgstr "B<cmsg>(3), B<rtnetlink>(3), B<ip>(7), B<netlink>(7)"