OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man7 / ipv6.7
index 2c86229..5bf750e 100644 (file)
@@ -3,78 +3,46 @@
 .\" of this page provided the header is included verbatim,
 .\" and in case of nontrivial modification author and date
 .\" of the modification is added to the header.
-.\" $Id: ipv6.7,v 1.4 2001/08/15 18:01:06 hanataka Exp $
+.\" $Id: ipv6.7,v 1.3 2000/12/20 18:10:31 ak Exp $
+.\"*******************************************************************
 .\"
-.\" Japanese Version Copyright (c) 2001 NAKANO Takeo all rights reserved.
-.\" Translated Sun 18 Feb 2001 by NAKANO Takeo <nakano@apm.seikei.ac.jp>
-.\" Updated Wed  4 Apr 2001 by Yuichi SATO <ysato@h4.dion.ne.jp>
-.\" Updated Sat Dec 17 09:31:21 JST 2005 by Yuichi SATO <ysato444@yahoo.co.jp>
-.\" Updated 2007-05-28, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.50
-.\" Updated 2008-08-07, Akihiro MOTOKI, LDP v3.05
+.\" This file was generated with po4a. Translate the source file.
 .\"
-.\"WORD:       flow identifier         フロー指定子
-.\"WORD:       control message         制御メッセージ
-.\"WORD:       incoming 〜            受信 (パケット、データグラム)
-.\"WORD:       outgoing 〜            送信 (パケット、データグラム)
-.\"WORD:       asynchronous error      非同期エラー
-.\"
-.TH IPV6 7 2011-09-08 "Linux" "Linux Programmer's Manual"
+.\"*******************************************************************
+.TH IPV6 7 2011\-09\-08 Linux "Linux Programmer's Manual"
 .SH 名前
 ipv6, AF_INET6 \- Linux の IPv6 プロトコル実装
 .SH 書式
-.B #include <sys/socket.h>
+\fB#include <sys/socket.h>\fP
 .br
-.B #include <netinet/in.h>
+\fB#include <netinet/in.h>\fP
 .sp
-.IB tcp6_socket " = socket(AF_INET6, SOCK_STREAM, 0);"
+\fItcp6_socket\fP\fB = socket(AF_INET6, SOCK_STREAM, 0);\fP
 .br
-.IB raw6_socket " = socket(AF_INET6, SOCK_RAW, " protocol ");"
+\fIraw6_socket\fP\fB = socket(AF_INET6, SOCK_RAW, \fP\fIprotocol\fP\fB);\fP
 .br
-.IB udp6_socket " = socket(AF_INET6, SOCK_DGRAM, " protocol ");"
+\fIudp6_socket\fP\fB = socket(AF_INET6, SOCK_DGRAM, \fP\fIprotocol\fP\fB);\fP
 .SH 説明
-Linux 2.2 では、Internet Protocol, version 6 を
-オプションとして実装している。
-この man ページでは、Linux カーネルと glibc 2.1 での実装に基づいて、
-IPv6 の基本的な API を解説する。
-インターフェースは BSD ソケットインターフェースをもとにしている。
-.BR socket (7)
-を参照。
+Linux 2.2 では、Internet Protocol, version 6 を オプションとして実装している。 この man
+ページでは、Linux カーネルと glibc 2.1 での実装に基づいて、 IPv6 の基本的な API を解説する。 インターフェースは BSD
+ソケットインターフェースをもとにしている。 \fBsocket\fP(7)  を参照。
 .PP
-IPv6 API は、
-IPv4 API
-.RB ( ip (7)
-参照) とほぼ互換になることを目指している。
-この man ページでは相違点のみを解説する。
+IPv6 API は、 IPv4 API (\fBip\fP(7)  参照) とほぼ互換になることを目指している。 この man
+ページでは相違点のみを解説する。
 .PP
-.B AF_INET6
-ソケットを何らかのプロセスにバインドするには、
-ローカルアドレスを
-.I in6_addr
-型の変数
-.I in6addr_any
-からコピーしてくる必要がある。
-static な初期値
-.B IN6ADDR_ANY_INIT
-も用いることができ、これは定数式に展開される。
-これらの両者はネットワークバイトオーダーである。
+\fBAF_INET6\fP ソケットを何らかのプロセスにバインドするには、 ローカルアドレスを \fIin6_addr\fP 型の変数
+\fIin6addr_any\fP からコピーしてくる必要がある。 static な初期値 \fBIN6ADDR_ANY_INIT\fP
+も用いることができ、これは定数式に展開される。 これらの両者はネットワークバイトオーダーである。
 .PP
-IPv6 のループバックアドレス (::1) は global 変数
-.I in6addr_loopback
-から取得できる。初期化には
-.B IN6ADDR_LOOPBACK_INIT
-を用いるべきである。
+IPv6 のループバックアドレス (::1) は global 変数 \fIin6addr_loopback\fP から取得できる。初期化には
+\fBIN6ADDR_LOOPBACK_INIT\fP を用いるべきである。
 .PP
-v4-mapped-on-v6 アドレス型を用いることで、
-IPv4 接続も v6 API で扱うことができる。
-こうすれば、プログラムは v6 の API をサポートするだけで、
-両方のプロトコルをサポートできる。
-v4-mapped-on-v6 アドレス型は C ライブラリ内部のアドレスを
+v4\-mapped\-on\-v6 アドレス型を用いることで、 IPv4 接続も v6 API で扱うことができる。 こうすれば、プログラムは v6 の
+API をサポートするだけで、 両方のプロトコルをサポートできる。 v4\-mapped\-on\-v6 アドレス型は C ライブラリ内部のアドレスを
 扱う関数によって透過的に処理される。
 .PP
-IPv4 と IPv6 はローカルポート空間を共有する。
-IPv4 の接続 (またはパケット) を IPv6 ソケットが取得すると、
-発信元アドレスが v6 にマップされ、その接続 (パケット) も v6 にマップされる。
-.\"nakano: 最後の it がなにを指すのかわからん。
+IPv4 と IPv6 はローカルポート空間を共有する。 IPv4 の接続 (またはパケット) を IPv6 ソケットが取得すると、 発信元アドレスが
+v6 にマップされ、その接続 (パケット) も v6 にマップされる。
 .SS アドレスのフォーマット
 .in +4n
 .nf
@@ -92,245 +60,123 @@ struct in6_addr {
 .fi
 .in
 .sp
-.I sin6_family
-は常に
-.B AF_INET6
-に設定される。
-.I sin6_port
-はプロトコルポートである
-.RB ( ip (7)
-の
-.I sin_port
-を参照)。
-.I sin6_flowinfo
-は IPv6 のフロー指定子 (flow identifier) である。
-.I sin6_addr
-は 128 ビットの IPv6 アドレスである。
-.I sin6_scope_id
-はアドレスのスコープに依存した ID である
-(これは Linux 2.4 で導入された)。
-Linux の場合は、これはリンクスコープアドレスでしかサポートされない。
-この場合
-.I sin6_scope_id
-にはインターフェースのインデックスが含まれることになる
-.RB ( netdevice (7)
-を参照)。
+\fIsin6_family\fP は常に \fBAF_INET6\fP に設定される。 \fIsin6_port\fP はプロトコルポートである (\fBip\fP(7)
+の \fIsin_port\fP を参照)。 \fIsin6_flowinfo\fP は IPv6 のフロー指定子 (flow identifier) である。
+\fIsin6_addr\fP は 128 ビットの IPv6 アドレスである。 \fIsin6_scope_id\fP はアドレスのスコープに依存した ID
+である (これは Linux 2.4 で導入された)。 Linux の場合は、これはリンクスコープアドレスでしかサポートされない。 この場合
+\fIsin6_scope_id\fP にはインターフェースのインデックスが含まれることになる (\fBnetdevice\fP(7)  を参照)。
 .PP
-IPv6 は何種類かのアドレスタイプをサポートしている。
-単一のホストをアドレスするための unicast、
-ホストのグループをアドレスするための multicast、
-ホストのグループ中で最も近くにいるものをアドレスするための anycast
-(これは Linux では実装されていない)、
-IPv4 ホストをアドレスするための IPv4-on-IPv6。
-他にも予約済みのアドレスタイプがある。
+IPv6 は何種類かのアドレスタイプをサポートしている。 単一のホストをアドレスするための unicast、 ホストのグループをアドレスするための
+multicast、 ホストのグループ中で最も近くにいるものをアドレスするための anycast (これは Linux では実装されていない)、
+IPv4 ホストをアドレスするための IPv4\-on\-IPv6。 他にも予約済みのアドレスタイプがある。
 .PP
-IPv6 でのアドレス表記は 4 桁の 16 進数 8 個からなり、
-\(aq:\(aq は区切り文字はで、"::" は 0 ビットの文字列を表す。
-特殊なアドレスとして、ループバックを表す ::1、
-IPv4-mapped-on-IPv6 を表す ::FFFF::<IPv4 アドレス> がある。
+IPv6 でのアドレス表記は 4 桁の 16 進数 8 個からなり、 \(aq:\(aq は区切り文字はで、"::" は 0 ビットの文字列を表す。
+特殊なアドレスとして、ループバックを表す ::1、 IPv4\-mapped\-on\-IPv6 を表す ::FFFF::<IPv4
+アドレス> がある。
 .PP
 IPv6 のポート空間は IPv4 と共有されている。
 .SS ソケットオプション
-IPv6 はプロトコル固有のソケットオプションをいくつかサポートしている。
-これらは
-.BR setsockopt (2)
-で設定でき、
-.BR getsockopt (2)
-で取得できる。
-IPv6 のソケットオプションレベルは
-.B IPPROTO_IPV6
-である。
+IPv6 はプロトコル固有のソケットオプションをいくつかサポートしている。 これらは \fBsetsockopt\fP(2)  で設定でき、
+\fBgetsockopt\fP(2)  で取得できる。 IPv6 のソケットオプションレベルは \fBIPPROTO_IPV6\fP である。
 ブール整数のフラグは、0 が偽であり、それ以外は真である。
-.TP
-.B IPV6_ADDRFORM
-.B AF_INET6
-ソケットを別のアドレスファミリーのソケットに変える。
-現在は
-.B AF_INET
-のみが変更先のアドレスファミリーとしてサポートされている。
-これが許可されるのは、IPv6 が接続され、
-v4-mapped-on-v6 アドレスにバインドされた場合に限られる。
-引き数は
-.B AF_INET
-が入っている整数へのポインタである。
-v4-mapped ソケットを、IPv6 API を扱えないプログラムに対して
-ファイルディスクリプターとして渡す場合に便利。
-.TP
-.B IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP
-multicast グループのメンバーを制御する。
-引き数は
-.I struct ipv6_mreq
-構造体へのポインタ。
-.\" FIXME IPV6_CHECKSUM は記述されていないが、記述すべきだろう。
-.\" FIXME IPV6_JOIN_ANYCAST は記述されていないが、記述すべきだろう。
-.\" FIXME IPV6_LEAVE_ANYCAST は記述されていないが、記述すべきだろう。
-.\" FIXME IPV6_RECVPKTINFO は記述されていないが、記述すべきだろう。
-.\" FIXME IPV6_2292PKTINFO は記述されていないが、記述すべきだろう。
-.\" FIXME 他にも多くの記述すべき IPV6_* ソケットオプションがあるだろう。
-.TP
-.B IPV6_MTU
-そのソケットに対して用いる MTU の値を設定する。
-MTU の大きさは、
-そのデバイスの MTU または (Path MTU Discovery
-が可能なら) その経路の MTU の大きさ以下でなければならない。
-引き数は整数へのポインタ。
-.TP
-.B IPV6_MTU_DISCOVER
-そのソケットでの Path MTU Discovery を制御する。
-詳細は
-.BR ip (7)
-の
-.B IP_MTU_DISCOVER
-を参照。
-.TP
-.B IPV6_MULTICAST_HOPS
-そのソケットでの multicast の hop 数の上限値を設定する。
-引き数は整数へのポインタである。
-\-1 を指定すると経路のデフォルトを用いることを意味する。
-それ以外の場合は 0 から 255 の範囲を指定する。
-.TP
-.B IPV6_MULTICAST_IF
-そのソケットでの、送信 multicast パケットに用いるデバイスを設定する。
-これは
-.B SOCK_DGRAM
-および
-.B SOCK_RAW
-各ソケットでのみ許される。
-引き数はインターフェースのインデックスの整数値
-.RB ( netdevice (7)
-を参照) へのポインタである。
-.TP
-.B IPV6_MULTICAST_LOOP
-ソケットが、自分自身の送信した
-multicast パケットを監視するかどうかを制御する。
-引き数はブール値へのポインタ。
-.TP
-.B IPV6_PKTINFO
-データグラムの到着時における
-.B IPV6_PKTINFO
-制御メッセージを配送するかどうかを設定する。
-.B SOCK_DGRAM
-ソケットまたは
-.B SOCK_RAW
-ソケットに対してのみ許可される。
-引き数はブール値の入った整数。
-.TP
+.TP 
+\fBIPV6_ADDRFORM\fP
+\fBAF_INET6\fP ソケットを別のアドレスファミリーのソケットに変える。 現在は \fBAF_INET\fP
+のみが変更先のアドレスファミリーとしてサポートされている。 これが許可されるのは、IPv6 が接続され、 v4\-mapped\-on\-v6
+アドレスにバインドされた場合に限られる。 引き数は \fBAF_INET\fP が入っている整数へのポインタである。 v4\-mapped ソケットを、IPv6
+API を扱えないプログラムに対して ファイルディスクリプターとして渡す場合に便利。
+.TP 
+\fBIPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP\fP
+.\" FIXME IPV6_CHECKSUM is not documented, and probably should be
+.\" FIXME IPV6_JOIN_ANYCAST is not documented, and probably should be
+.\" FIXME IPV6_LEAVE_ANYCAST is not documented, and probably should be
+.\" FIXME IPV6_RECVPKTINFO is not documented, and probably should be
+.\" FIXME IPV6_2292PKTINFO is not documented, and probably should be
+.\" FIXME there are probably many other IPV6_* socket options that
+.\" should be documented
+multicast グループのメンバーを制御する。 引き数は \fIstruct ipv6_mreq\fP 構造体へのポインタ。
+.TP 
+\fBIPV6_MTU\fP
+そのソケットに対して用いる MTU の値を設定する。 MTU の大きさは、 そのデバイスの MTU または (Path MTU Discovery
+が可能なら) その経路の MTU の大きさ以下でなければならない。 引き数は整数へのポインタ。
+.TP 
+\fBIPV6_MTU_DISCOVER\fP
+そのソケットでの Path MTU Discovery を制御する。 詳細は \fBip\fP(7)  の \fBIP_MTU_DISCOVER\fP を参照。
+.TP 
+\fBIPV6_MULTICAST_HOPS\fP
+そのソケットでの multicast の hop 数の上限値を設定する。 引き数は整数へのポインタである。 \-1
+を指定すると経路のデフォルトを用いることを意味する。 それ以外の場合は 0 から 255 の範囲を指定する。
+.TP 
+\fBIPV6_MULTICAST_IF\fP
+そのソケットでの、送信 multicast パケットに用いるデバイスを設定する。 これは \fBSOCK_DGRAM\fP および \fBSOCK_RAW\fP
+各ソケットでのみ許される。 引き数はインターフェースのインデックスの整数値 (\fBnetdevice\fP(7)  を参照) へのポインタである。
+.TP 
+\fBIPV6_MULTICAST_LOOP\fP
+ソケットが、自分自身の送信した multicast パケットを監視するかどうかを制御する。 引き数はブール値へのポインタ。
+.TP 
+\fBIPV6_PKTINFO\fP
+データグラムの到着時における \fBIPV6_PKTINFO\fP 制御メッセージを配送するかどうかを設定する。 \fBSOCK_DGRAM\fP ソケットまたは
+\fBSOCK_RAW\fP ソケットに対してのみ許可される。 引き数はブール値の入った整数。
+.TP 
 .nh
-.B IPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO, IPV6_HOPLIMIT
+\fBIPV6_RTHDR, IPV6_AUTHHDR, IPV6_DSTOPTS, IPV6_HOPOPTS, IPV6_FLOWINFO,
+IPV6_HOPLIMIT\fP
 .hy
-受信パケットのデータグラムに拡張ヘッダが含まれている場合の、
-制御メッセージの配送を設定する。
-.BR IPV6_RTHDR :
-routing ヘッダを配送するかどうか。
-.BR IPV6_AUTHHDR :
-authentication ヘッダを配送するかどうか。
-.BR IPV6_DSTOPTS :
-destination オプションを配送するかどうか。
-.BR IPV6_HOPOPTS :
-hop オプションを配送するかどうか。
-.BR IPV6_FLOWINFO :
-flow ID を含む整数を配送するかどうか。
-.BR IPV6_HOPLIMIT :
-パケットの hop カウントを含む整数を配送するかどうか。
-制御メッセージはソケットオプションのものと同じタイプを持つ。
-これらのすべてのヘッダオプションは、
-適切な制御メッセージを
-.BR sendmsg (2)
-の制御バッファーに書きこめば、
-送信パケットにでも設定できる。
-.B SOCK_DGRAM
-ソケットまたは
-.B SOCK_RAW
-ソケットでのみ許される。引き数はブール値へのポインタ。
-.TP
-.B IPV6_RECVERR
-非同期エラー (asynchronous error) オプションの受信を制御する。
-詳細は
-.BR ip (7)
-の
-.B IP_RECVERR
-を参照。
-引き数はブール値へのポインタ。
-.TP
-.B IPV6_ROUTER_ALERT
-このソケットで、router alert hop-by-hop オプションの付いた転送パケットを
-通すかどうかを制御する。
-.B SOCK_RAW
-ソケットでのみ許可される。
-tap されたパケットはカーネルによっては転送されない。そうしたパケットを
-再度送信するのはユーザーの責任である。
-引き数は整数 (integer) へのポインタ。
-正の整数は傍受を行う router alert オプション値を示す。
-オプション値がこの整数である router alert オプションの付いたパケットは
-ソケットに配送される。負の整数を指定すると、このソケットへの
-router alert オプションの付いたパケットの配送が行われない。
-.\" FLOWLABEL_MGR, FLOWINFO_SEND
-.TP
-.B IPV6_UNICAST_HOPS
-そのソケットでの unicast の hop 数の上限値を設定する。
-引き数は整数へのポインタである。
-\-1 を指定すると経路のデフォルトを用いることを意味する。
-それ以外の場合は 0 から 255 の範囲を指定する。
-.TP
-.BR IPV6_V6ONLY " (Linux 2.4.21 以降および 2.6 以降)"
+受信パケットのデータグラムに拡張ヘッダが含まれている場合の、 制御メッセージの配送を設定する。 \fBIPV6_RTHDR\fP: routing
+ヘッダを配送するかどうか。 \fBIPV6_AUTHHDR\fP: authentication ヘッダを配送するかどうか。 \fBIPV6_DSTOPTS\fP:
+destination オプションを配送するかどうか。 \fBIPV6_HOPOPTS\fP: hop オプションを配送するかどうか。
+\fBIPV6_FLOWINFO\fP: flow ID を含む整数を配送するかどうか。 \fBIPV6_HOPLIMIT\fP: パケットの hop
+カウントを含む整数を配送するかどうか。 制御メッセージはソケットオプションのものと同じタイプを持つ。 これらのすべてのヘッダオプションは、
+適切な制御メッセージを \fBsendmsg\fP(2)  の制御バッファーに書きこめば、 送信パケットにでも設定できる。 \fBSOCK_DGRAM\fP
+ソケットまたは \fBSOCK_RAW\fP ソケットでのみ許される。引き数はブール値へのポインタ。
+.TP 
+\fBIPV6_RECVERR\fP
+非同期エラー (asynchronous error) オプションの受信を制御する。 詳細は \fBip\fP(7)  の \fBIP_RECVERR\fP
+を参照。 引き数はブール値へのポインタ。
+.TP 
+\fBIPV6_ROUTER_ALERT\fP
+このソケットで、router alert hop\-by\-hop オプションの付いた転送パケットを 通すかどうかを制御する。 \fBSOCK_RAW\fP
+ソケットでのみ許可される。 tap されたパケットはカーネルによっては転送されない。そうしたパケットを 再度送信するのはユーザーの責任である。
+引き数は整数 (integer) へのポインタ。 正の整数は傍受を行う router alert オプション値を示す。 オプション値がこの整数である
+router alert オプションの付いたパケットは ソケットに配送される。負の整数を指定すると、このソケットへの router alert
+オプションの付いたパケットの配送が行われない。
+.TP 
+\fBIPV6_UNICAST_HOPS\fP
+そのソケットでの unicast の hop 数の上限値を設定する。 引き数は整数へのポインタである。 \-1
+を指定すると経路のデフォルトを用いることを意味する。 それ以外の場合は 0 から 255 の範囲を指定する。
+.TP 
+\fBIPV6_V6ONLY\fP (Linux 2.4.21 以降および 2.6 以降)
 .\" See RFC 3493
-このフラグを真 (0 以外) に設定すると、そのソケットは IPv6 パケットだけを
-送受信するように制限される。
-この場合、IPv4 アプリケーションと IPv6 アプリケーションが同時に
-一つのポートをバインドできる。
+このフラグを真 (0 以外) に設定すると、そのソケットは IPv6 パケットだけを 送受信するように制限される。 この場合、IPv4
+アプリケーションと IPv6 アプリケーションが同時に 一つのポートをバインドできる。
 
-このフラグを偽 (0) に設定すると、そのソケットはパケットの送受信に
-IPv6 アドレスと IPv4-mapped IPv6 アドレスの両方を使用できる。
+このフラグを偽 (0) に設定すると、そのソケットはパケットの送受信に IPv6 アドレスと IPv4\-mapped IPv6
+アドレスの両方を使用できる。
 
 引き数はブール値の入った整数へのポインタである。
 
-このフラグのデフォルト値はファイル
-.I /proc/sys/net/ipv6/bindv6only
-の内容により定義される。
+.\" FLOWLABEL_MGR, FLOWINFO_SEND
+このフラグのデフォルト値はファイル \fI/proc/sys/net/ipv6/bindv6only\fP の内容により定義される。
 このファイルのデフォルト値は 0 (偽) である。
 .SH バージョン
-IPv6 API を libc5 ベースで Linux 向けに実装した、以前の
-.I libinet6
-についてはここでは記述していない。
+IPv6 API を libc5 ベースで Linux 向けに実装した、以前の \fIlibinet6\fP についてはここでは記述していない。
 おそらく細かいところには相違点があるだろう。
 .PP
-Linux 2.4 では 64 ビットのホストに対して
-.I sockaddr_in6
-のバイナリ互換性が保たれていない。
-.I in6_addr
-のアラインメントが変更され、また
-.I sin6_scope_id
-フィールドが新たに追加されたからである。
-カーネルインターフェースの互換性は保たれているが、
-.I sockaddr_in6
-や
-.I in6_addr
-を他の構造体に含んでいるようなプログラムでは
-保たれないかもしれない。
-これは i386 のような 32 ビットのホストでは問題にならない。
+Linux 2.4 では 64 ビットのホストに対して \fIsockaddr_in6\fP のバイナリ互換性が保たれていない。 \fIin6_addr\fP
+のアラインメントが変更され、また \fIsin6_scope_id\fP フィールドが新たに追加されたからである。
+カーネルインターフェースの互換性は保たれているが、 \fIsockaddr_in6\fP や \fIin6_addr\fP
+を他の構造体に含んでいるようなプログラムでは 保たれないかもしれない。 これは i386 のような 32 ビットのホストでは問題にならない。
 .PP
-.I sin6_flowinfo
-フィールドは Linux 2.4 で登場した。
-これが渡されたアドレス長に含まれていると、
-カーネルに透過的に渡され、読まれる。
-.\"nakano ここわからないです...
-より長いアドレスバッファを渡し、
-そして送信アドレスの長さをチェックするようなプログラムは
+\fIsin6_flowinfo\fP フィールドは Linux 2.4 で登場した。 これが渡されたアドレス長に含まれていると、
+カーネルに透過的に渡され、読まれる。 より長いアドレスバッファを渡し、 そして送信アドレスの長さをチェックするようなプログラムは
 うまく動かないかもしれない。
 .SH 注意
-.I sockaddr_in6
-構造体はジェネリックな
-.I sockaddr
-よりも大きい。
-すべてのアドレスタイプが
-.I struct sockaddr
-の中に安全に納められると仮定しているプログラムは、代わりに
-.I struct sockaddr_storage
+\fIsockaddr_in6\fP 構造体はジェネリックな \fIsockaddr\fP よりも大きい。 すべてのアドレスタイプが \fIstruct
+sockaddr\fP の中に安全に納められると仮定しているプログラムは、代わりに \fIstruct sockaddr_storage\fP
 を用いるように変更する必要がある。
 .SH バグ
-IPv6 拡張 API は、現在まだ RFC\ 2292 を完全には実装していない。
-2.2 カーネルは受信オプションをほぼ完全にサポートサポートしているが、
-glibc2.1 には IPv6 オプションを生成するマクロが存在していない。
+IPv6 拡張 API は、現在まだ RFC\ 2292 を完全には実装していない。 2.2
+カーネルは受信オプションをほぼ完全にサポートサポートしているが、 glibc2.1 には IPv6 オプションを生成するマクロが存在していない。
 .PP
 EH および AH ヘッダ での IPSec のサポートは存在しない。
 .PP
@@ -338,10 +184,8 @@ EH および AH ヘッダ での IPSec のサポートは存在しない。
 .PP
 この man ページはまだ完成していない。
 .SH 関連項目
-.BR cmsg (3),
-.BR ip (7)
-.LP
-RFC\ 2553: IPv6 BASIC API.
-Linux はこの RFC に準拠するようにしている。
-.LP
+\fBcmsg\fP(3), \fBip\fP(7)
+.PP
+RFC\ 2553: IPv6 BASIC API.  Linux はこの RFC に準拠するようにしている。
+.PP
 RFC\ 2460: IPv6 specification.