<!doctype linuxdoctr system>
<article>
<title>Linux IPv6 FAQ/HOWTO</title>
<author>Eric Osborne &lt;osborne@notcom.com&gt;</author>
<date>v3.2.1, 1997/07/14</date>
<trans>Araki Yasuhiro &lt;yasuhi-a@is.aist-nara.ac.jp&gt;
<tdate>v3.2.1j, 1997/07/14</tdate>

<abstract>
<!--
This is the Linux IPv6 FAQ/HOWTO - its purpose is to let Linux users of all 
levels know what IPv6 resources are out there (specifically Linux ones!), what 
development work is going on, and how to install IPv6-related stuff on your 
Linux system. 
-->
この文書 (Linux IPv6 FAQ/HOWTO) はすべての Linux ユーザに対して、IPv6 が
つかえること (Linuxはそのうちのひとつです)、開発がどのようにおこなわれて
いるか、そしてあなたの Linux マシンに IPv6 関連のソフトをどのように
インストールするかを説明することが目的です。
</abstract>

<p>
JF より：この文書は 1997年6月以来、更新されていません。
現在とは事情が異なると思われるので、ご注意ください。
</p>

<sect><!--Version-->バージョン
<p>
<!--
This is the Linux IPv6 FAQ/HOWTO, version 3.2.1 - 7/14/97.
-->
この文書は Linux IPv6 FAQ/HOWTO, バージョン 3.2.1 - 7/14/1897です。

<!--
Changes since last time: 
-->
以前からの変更点:

<itemize>
<item><!--Removed a few out-of date sections -->
古くなったところを削除しました。
<item><!--Updated a few version numbers -->
いくつかのversion番号をあげました。
<item><!--Fixed a few outright incorrect answers. -->
いくつかのまちがいをなおしました。
<item><!--Fixed more typos..... -->
いくつかのミススペルをなおしました....
</itemize>

<!--
Copyright 1997 Eric Osborne. Unlimited non-commercial distribution of this 
document in its entirety is encouraged - please contact the
author prior to commercial publication.
-->
Copyright 1997 Eric Osborne. 
この文書を非商用目的に、新たな配布制限を設けず、かつ全文そのままのかた
ちで再配布することは、筆者の望むところです。
商用出版の際は著者にあらかじめコンタクトしてください。

</sect>

<sect><!--About this document -->この文書について
<p>

<sect1><!--Author -->著者
<p>
<!--
The main author of the Linux IPv6 FAQ/HOWTO is Eric Osborne, although some 
parts of the FAQ are taken from postings to the netdev mailing list and other 
sources. Whenever possible, full attribution is given.
-->
Linux IPv6 FAQ/HOWTOの主たる著者は Eric Osborne &lt;osborne@notcom.com&gt; 
ですが、いくつかは、 netdev メーリングリストや、その他の情報源からのものです。
いつでもできるかぎり、その所属を明示します。

<sect1><!--FAQ/HOWTO Mirror sites -->FAQ/HOWTO のミラーサイト
<p>
<!--
The FAQ/HOWTO is currently mirrored in all 4 hemispheres - please try and use 
the location closest to you!
-->
この FAQ/HOWTO はいまのところ、全部で 4 の大陸にミラーされています。
あなたから近いところを試して利用してください。

<!--North America: -->北アメリカ：

<itemize>
<item><url url="http://www.terra.net/ipv6/"> 
<!--(master site)--> (マスターサイト)
<item><url url="http://www.psych.neu.edu/ipv6/">
<item><url url="http://www.wcug.wwu.edu/ipv6/faq/">
</itemize>

<!--South America: -->南アメリカ：

<itemize>
<item><url url="http://www.icmsc.sc.usp.br/~dfnolive/ipv6-faq/">
</itemize>

<!--Europe: -->ヨーロッパ：

<itemize>
<item><url url="http://www.ncl.ac.uk/~n4319682/ipv6/">
<item><url url="http://www.cs.tu-bs.de/~strauss/ipv6/linux-faq/">
<item><url url="http://www.london.uk.eu.org/ipv6/FAQ/">
<item><url url="http://www.cs-ipv6.lancs.ac.uk/ipv6/systems/linux/faq/">
<item><url url="http://www.akdeniz.edu.tr/mirrors/ipv6/faq/">
</itemize>

<!--Australia: -->オーストラリア：
<itemize>
<item><url url="http://linux.vv.com.au/ipv6/faq/">
</itemize>

<!--Asia: -->アジア
<itemize>
<item><url url="http://fukuda.aist-nara.ac.jp/~yasuhi-a/linux/ipv6/">
<!-- (in Japanese) --> (日本語です)
</itemize>

<!--
For more information on setting up a mirror site, please contact Eric.
-->
ミラーサイトのセットアップの情報は Eric &lt;osborne@notcom.com&gt; に
コンタクトしてください。

</sect1>
</sect>

<sect><!--What is IPv6? -->IPv6 とは?
<p>
<!--
(thanks to Tony Gale for major contributions to this section)
-->
(Tony Gale さんからほとんどの寄稿をいただきました。感謝します。)

<!--
IP version 6 (IPv6) is a new version of the Internet Protocol, designed as a 
successor to IP version 4 (IPv4) [RFC-791].
-->
IPv6 は次世代のインターネットプロトコルで、現在のプロトコル(IPv4)の
後継者として設計されています。
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc791.txt" 
name="[RFC-791]">

<!--
The changes from IPv4 to IPv6 fall primarily into the following categories:
-->
IPv6 は IPv4 に無い、いくつかの特徴を含んでいます。

<itemize>

<item><!--Expanded Addressing Capabilities-->
拡張されたアドレス

<p>
<!--
IPv6 increases the IP address size from 32 bits to 128 bits, to support more 
levels of addressing hierarchy, a much greater number of addressable nodes, 
and simpler auto-configuration of addresses. The scalability of multicast 
routing is improved by adding a 'scope' field to multicast addresses. And a 
new type of address called an 'anycast address' is defined, used to send a
packet to any one of a group of nodes.
-->
IPv6ではIPアドレスのサイズが32から128ビットに増大した。これは
さらなるアドレス階層化、アドレスをつけられるノードの増大、
そしてアドレス自動設定のサポートのためである。
マルチキャストルーティングの拡張性は、マルチキャストアドレスに
「スコープフィールド」を加えることで改良される。
また、「エニーキャスト」とよばれる新しいアドレス型が
グループノードにパケットを送るために定義された。

<item><!--Header Format Simplification -->
ヘッダー形式の簡略化

<p>
<!--
Some IPv4 header fields have been dropped or made optional, to reduce the 
common-case processing cost of packet handling and to limit the bandwidth cost 
of the IPv6 header.
-->
いくつかのIPv4のヘッダー領域はつかわれなかったり、オプションになっている。
これはパケットの生成コストを減少させ、
IPv6のヘッダの帯域コストを抑制させるためである。

<item><!--Improved Support for Extensions and Options -->
拡張やオプションのサポートの改善。

<p>
<!--
Changes in the way IP header options are encoded allows for more efficient 
forwarding, less stringent limits on the length of options, and greater 
flexibility for introducing new options in the future.
-->
IPヘッダのオプションの変更は、より効率的なフォワーディング、
オプションの長さ制限の厳密さの緩和、そして将来提供されるオプションの
柔軟性が盛りこまれている。

<item><!--Flow Labeling Capability -->
フローラベルの整備。

<p>
<!--
A new capability is added to enable the labeling of packets belonging to 
particular traffic 'flows' for which the sender requests special handling, 
such as non-default quality of service or 'real-time' service.
-->
あたらしく、特別のトラフィックの「フロー」に属するパケットのラベルを
可能なように整備された。これは送信者が通常つかわれない品質のサービスや、
「リアルタイム」サービスのためのものである。

<item><!--Authentication and Privacy Capabilities -->
認証と機密性の整備。

<p>
<!--
Extensions to support authentication, data integrity, and (optional) data 
confidentiality are specified for IPv6.
-->
認証、完全性、そしてオプションで機密性の拡張が IPv6 での仕様とされた。
</itemize>

<!--
The core Linux IPv6 code is currently being maintained by David Miller and 
Eric Schenk.
-->
LinuxのIPv6の核となるコードは David Miller &lt;davem@caip.rutgers.edu&gt; と
Eric Schenk &lt;Eric.Schenk@dna.lth.se&gt; によってメンテナンスされています。

<!--
Read on for more details!
-->
詳しくは以下を読んでください。

<sect1>Web sites 
<p>
<!--
The best starting point for IPv6 and 6bone information that I've seen is IP 
Next Generation (IPng).
-->
私が見た中で IPv6 と 6bone に関して始めに読む最も良いサイトは
<htmlurl url="http://playground.sun.com/pub/ipng/html/ipng-main.html" 
name="次世代IP (IPng)">.

<!--
You may also want to check out NASA's IPv6 at the NAS.
-->
あなたは NASA にある 
<htmlurl url="http://www.ipv6.nas.nasa.gov/" name="IPv6 at the NAS"> 
をチェックしたくなることでしょう。

<!--
Kevin Rae has put his thesis - " Digital Audio & IPv6 " - on the Web. It's got 
a nice side-by-side comparison of IPv4 and IPv6, and an introduction to IPv6 
QoS fields. 
-->
Kevin Rae がウェブ上で面白い見解 - "
<htmlurl 
url="http://www.student.mckenna.edu/student/ns/krae/thesis/index.html" 
name="ディジタルオーディオと IPv6"> - 
を述べています。IPv4とIPv6をならべた比較と、IPv6 の QoS (帯域保証) の紹介
があります。

</sect1>
<sect1><!--RFCs and Internet drafts -->RFC とインタネットドラフト
<p>
<!--
There are (at my count) 55 RFCs dealing with IPv6 out there, including 
pre-IPv6 proposals like CATNIP and TUBA. Some of the more relevant RFCs 
include:
-->
(私がかぞえたところでは) CATNIPやTUBAなど、IPv6がプローザルになる前の
ものも含めて、55のRFCがIPv6に関して出ています。
いくつかは関連したRFCです。

<!--
<itemize>
<item>      2147: TCP and UDP over IPv6 Jumbograms 
<item>      2133: Basic Socket Interface Extensions for IPv6 
<item>      2101: IPv4 Address Behaviour Today 
<item>      2073: An IPv6 Provider-Based Unicast Address Format 
<item>      2101: IPv4 Address Behaviour Today 
<item>      2081: RIPng Protocol Applicability Statement 
<item>      2080: RIPng for IPv6 
<item>      2030: Simple Network Time Protocol (SNTP) Version 4 for IPv4, IPv6 and OSI 
<item>      2023: IP Version 6 over PPP 
<item>      1981: Path MTU Discovery for IP version 6 
<item>      1972: A Method for the Transmission of IPv6 Packets over Ethernet Networks 
<item>      1971: IPv6 Stateless Address Autoconfiguration 
<item>      1970: Neighbor Discovery for IP Version 6 (IPv6) 
<item>      1933: Transition Mechanisms for IPv6 Hosts and Routers 
<item>      1897: IPv6 Testing Address Allocation 
<item>      1888: OSI NSAPs and IPv6 
<item>      1887: An Architecture for IPv6 Unicast Address Allocation 
<item>      1886: DNS Extensions to support IP version 6 
<item>      1885: Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) 
<item>      1884: IP Version 6 Addressing Architecture 
<item>      1883: Internet Protocol, Version 6 (IPv6) Specification 
<item>      1881: IPv6 Address Allocation Management 
<item>      1809: Using the Flow Label Field in IPv6 
</itemize>
-->
<itemize>
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc2147.txt" 
name="2147">: TCP and UDP over IPv6 Jumbograms
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc2133.txt" 
name="2133">: Basic Socket Interface Extensions for IPv6
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc2073.txt" 
name="2073">: An IPv6 Provider-Based Unicast Address Format
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc2101.txt" 
name="2101">: IPv4 Address Behaviour Today
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc2081.txt" 
name="2081">: RIPng Protocol Applicability Statement
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc2080.txt" 
name="2080">: RIPng for IPv6
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc2030.txt" 
name="2030">: Simple Network Time Protocol (SNTP) Version 4 for IPv4, IPv6 and OSI
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc2023.txt" 
name="2023">: IP Version 6 over PPP
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1981.txt" 
name="1981">: Path MTU Discovery for IP version 6
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1972.txt" 
name="1972">: A Method for the Transmission of IPv6 Packets over Ethernet Networks
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1971.txt" 
name="1971">: IPv6 Stateless Address Autoconfiguration
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1970.txt" 
name="1970">: Neighbor Discovery for IP Version 6 (IPv6)
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1933.txt" 
name="1933">: Transition Mechanisms for IPv6 Hosts and Routers
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1897.txt" 
name="1897">: IPv6 Testing Address Allocation
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1888.txt" 
name="1888">: OSI NSAPs and IPv6
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1887.txt" 
name="1887">: An Architecture for IPv6 Unicast Address Allocation
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1886.txt" 
name="1886">: DNS Extensions to support IP version 6
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1885.txt" 
name="1885">: Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6)
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1884.txt" 
name="1884">: IP Version 6 Addressing Architecture
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1883.txt" 
name="1883">: Internet Protocol, Version 6 (IPv6) Specification
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1881.txt" 
name="1881">: IPv6 Address Allocation Management
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1809.txt" 
name="1809">: Using the Flow Label Field in IPv6
</itemize>

<!--
There are also many internet drafts. These change rapidly, but as of 7/14/97 
here's a list of some useful ones:
-->
多くの <htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/" 
name="インターネットドラフト">
があります。これらは急速に変化しますが、7/14/97 の時点で有用なものを
以下に挙げます。

<!--
<itemize>
<item>      Transmission of IPv6 Packets over FDDI Networks 
<item>      IP Version 6 over PPP 
<item>      Advanced Sockets API for IPv6 
<item>      Generic Packet Tunneling in IPv6 Specification 
<item>      IPv6 Router Alert Option 
<item>      Transmission of IPv6 Packets over Token Ring Networks 
<item>      An IPv6 Aggregatable Global Unicast Address Format 
<item>      IPv6 Multicast Address Assignments 
<item>      IP Version 6 Management Information Base for the User Datagram Protocol 
<item>      IP Version 6 Management Information Base for the Transmission Control Protocol 
<item>      Management Information Base for IP Version 6: Textual Conventions and General Group 
<item>      A proposal for an IPv6 site database object 
<item>      Mobility Support in IPv6 
<item>      Dynamic Host Configuration Protocol for IPv6 (DHCPv6) 
<item>      IPv6 Testing Address Allocation 
<item>      Dynamical routing (unicast and multicast) for the Ipv6 protocol 
<item>      Routing Aspects Of IPv6 Transition 
<item>      Router Renumbering for IPv6 
<item>      IPng Analysis of the GSE Proposal 
<item>      The Use of End System Designators in IPv6 
<item>      IP Version 6 Addressing Architecture 
<item>      OSPF for IPv6 
<item>      Implications of the GSE Addressing Scheme to IPv6 Multicast 
<item>      Host Reachability Advertisement for IPv6 
<item>      Header Compression for IPv6 over PPP 
<item>      Synthesis of Routing Goop and AAAA Records in IPv6 
<item>      Realizing the Benefits of Virtual LANs by Using IPv6 
<item>      Management Information Base for IP Version 6: ICMPv6 Group 
<item>      Management Information Base for IP Version 6: UDP and TCP Groups 
<item>      Transient Neighbors for IPv6 over ATM 
<item>      Transmission of IPv6 over IPv4 Domains without Explicit Tunnels 
<item>      GSE - An Alternate Addressing Architecture for IPv6 
<item>      Service Location Modifications for IPv6 
<item>      Link Local Addressing and Name Resolution in IPv6 
</itemize>
-->
<itemize>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-trans-fddi-net-01.txt" 
name="Transmission of IPv6 Packets over FDDI Networks">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-ipv6-over-ppp-02.txt" 
name="IP Version 6 over PPP">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-stevens-advanced-api-03.txt" 
name="Advanced Sockets API for IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-ipv6-tunnel-07.txt" 
name="Generic Packet Tunneling in IPv6 Specification">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-ipv6router-alert-02.txt" 
name="IPv6 Router Alert Option">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-trans-tokenring-00.txt" 
name="Transmission of IPv6 Packets over Token Ring Networks">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-unicast-aggr-01.txt" 
name="An IPv6 Aggregatable Global Unicast Address Format">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-multicast-assgn-03.txt" 
name="IPv6 Multicast Address Assignments">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-ipv6-udp-mib-00.txt" 
name="IP Version 6 Management Information Base for the User Datagram Protocol">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-ipv6-tcp-mib-00.txt" 
name="IP Version 6 Management Information Base for the Transmission Control Protocol">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-ipv6-mib-02.txt" 
name="Management Information Base for IP Version 6:  Textual Conventions and General Group">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ngtrans-6bone-registry-01.txt" 
name="A proposal for an IPv6 site database object">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-teraoka-ipv6-mobility-sup-04.txt" 
name="Mobility Support in IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-dhc-dhcpv6-10.txt" 
name="Dynamic Host Configuration Protocol for IPv6 (DHCPv6)">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-testv2-addralloc-00.txt" 
name="IPv6 Testing Address Allocation">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-fritsche-ipv6-multicast-01.txt" 
name="Dynamical routing (unicast and multicast) for the Ipv6 protocol">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ngtrans-routing-aspects-03.txt" 
name="Routing Aspects Of IPv6 Transition">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-router-renum-00.txt" 
name="Router Renumbering for IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-esd-analysis-00.txt" 
name="IPng Analysis of the GSE Proposal">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-thomas-ipv6-esd-00.txt" 
name="The Use of End System Designators in IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-ipv6-arch-00.txt" 
name="IP Version 6 Addressing Architecture">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ospf-ospfv6-04.txt" 
name="OSPF for IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-dupont-ipv6-gse-multicast-00.txt" 
name="Implications of the GSE Addressing Scheme to IPv6 Multicast">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-mccann-ipv6-hra-00.txt" 
name="Host Reachability Advertisement for IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-engan-ipv6-hc-00.txt" 
name="Header Compression for IPv6 over PPP">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-dns-rr-rgadd-00.txt" 
name="Synthesis of Routing Goop and AAAA Records in IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-kurz-virtual-lans-benefits-00.txt" 
name="Realizing the Benefits of Virtual LANs by Using IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-ipv6-icmp-mib-01.txt" 
name="Management Information Base for IP Version 6: ICMPv6 Group">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-ipv6-udp-tcp-mib-01.txt" 
name="Management Information Base for IP Version 6: UDP and TCP Groups">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ion-tn-00.txt" 
name="Transient Neighbors for IPv6 over ATM">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-carpenter-ipng-6over4-02.txt" 
name="Transmission of IPv6 over IPv4 Domains without Explicit Tunnels">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-gseaddr-00.txt" 
name="GSE - An Alternate Addressing Architecture for IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-svrloc-ipv6-01.txt" 
name="Service Location Modifications for IPv6">
<item>
<htmlurl url="http://core.ring.gr.jp/pub/doc/internet-drafts/draft-ietf-ipngwg-linkname-01.txt" 
name="Link Local Addressing and Name Resolution in IPv6">
</itemize>
</sect1>

<sect1><!--Books, mailing lists, and others -->
本、メーリングリスト、その他
<p>
<!--
This books section is pretty weak right now, and could bear with some 
improvement. However, here's a few pointers to get you started: 
-->
この本の章はまだ乏しいです。しかしながらスタートするためのいくつかを
あげておきます。

<descrip>
<tag>Internetworking with TCP/IP, Volume 1, Third Edition - Douglas Comer</tag>

<!--
A classic book on TCP/IP, the 3rd edition has an introductory section about 
IPv6.
-->
TCP/IP の古典的な本です、第 3 版には IPv6 の紹介の章があります。

<tag>Data and Computer Communications, Fifth Edition - William Stallings</tag>

<!--
A good book overall on data communications, this has a few pages of useful, 
no-nonsense coverage on IPv6 and ICMPv6.
-->
もうひとつの古典的な、データ通信全体を視野にいれた本です。
IPv6, ICMPv6 にためになる何ページかを含んでいます。

<tag>Routing in the Internet - Christian Huitema</tag>

<!--
I don't own a copy of this yet (very hard to find, for some reason), but 
knowing the reputation of its author, this book would at least be worth a 
look-see.
-->
私は持っていませんが(いくつかの理由から手にいれるのがむずかしいのです)
しかし、著者の評判は知っていますし、見る価値があるでしょう。
</descrip>
</sect1>

<sect1><!--The 6bone. -->6bone について
<p>
<!--
The 6bone is an Internet-wide IPv6-over-IPv4 encapsulation project.
-->
6bone はインターネットで IPv6 を IPv4 にカプセル化するプロジェクトです。

<!--
For more 6bone info, check the 6bone home page. 
-->
もっと 6bone について詳しく知りたいときは、
<htmlurl url="http://www-cnr.lbl.gov/6bone/" name="6boneのホームページ">を
見てください。

<!--
There's also a 6bone mailing list - see IPv6 - 6bone Mailing List.
-->
6bone メーリングリストの内容は
<htmlurl url="http://www.ipv6.nas.nasa.gov/6bone-mail.html" 
name="IPv6 - 6bone Mailing List"> で、見ることができます。

</sect1>

<sect1><!--IPv6 Addressing. -->IPv6 のアドレスの構造
<p>
<!--
IPv6 addresses are 128 bits long, and there are three types:Unicast, Anycast 
and Multicast. Unicast addresses are used to identify an individual interface. 
Anycast addresses indicate a set of interfaces, but packets sent to an Anycast 
address are delivered to one of the interfaces indicated by the address, ie. 
the nearest one. Multicast addresses also indicate a set of interfaces, but 
packets sent to a Multicast address are delivered to all interfaces indicated 
by the address. Multicast address superseed broadcast addresses.
-->
IPv6のアドレスは128ビットの長さで、3つの型がある。
ユニキャスト、エニーキャスト、マルチキャストである。
ユニキャストアドレスは個々のインターフェースにつけられる。
エニーキャストアドレスはインターフェースの集合を示すが、
エニーキャストアドレスに送られるパケットはその集合のうちの一つの
インターフェースに送られる。例えば、一番近いところに送る。
マルチキャストアドレスもまた、インターフェースの集合を示すが、
マルチキャストアドレスに送られるパケットはその集合の全てのインターフェースに
送られる。
その意味で、マルチキャストアドレスはブロードキャストアドレスの
子孫であるといえる。

<!--
The preferred form of representing an IPv6 address is:
-->
IPv6 アドレスの表記

<verb>
FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
</verb>

<!--
Addresses will often have a number of zeros in them, such as:
-->
アドレスはしばしばいくつかの「0」を含む。たとえば

<verb>
FF01:0:0:0:0:0:0:43
</verb>

<!--
A special syntax is available for representing groups of zeros to allow the 
address to be compressed. The use of '::' indicates multiple groups of 16-bits 
of zeros. For example, the address above may be represented as:
-->
0 がいくつか連続するときはアドレスを縮めることが許されている。
「::」は、16 ビットの 0 の連続を示す。上の例だと次のようになる。

<verb>
FF01::43
</verb>

<!--
Another form of address is available for use within a mixed IPv4 and IPv6 
environment. An address such as:
-->
IPv4とIPv6の混在した環境では、他の表記法も用意されている。たとえば

<verb>
::10.5.27.200
</verb>

<!--
will send IPv6-in-IPv4 packets.
-->
は IPv6-in-IPv4 のパケットをおくる。

<!--
The specific type of an IPv6 address is indicated by the leading bits in the 
address. The variable-length field comprising these leading bits is called the 
Format Prefix (FP). The initial allocation of these prefixes is as follows:
-->
具体的なIPv6のアドレスタイプはそのアドレスの先頭に示される。
先頭 bit から構成される可変長フィールドは Format Prefix (FP) といわれる。
それらのプリフィックスの先頭の構造は以下。

<tscreen><verb>
        Allocation                      Prefix                 Fraction of 
                                        (binary)               Address Space

Reserved                               0000 0000               1/256
Unassigned                             0000 0001               1/256
Reserved for NSAP Allocation           0000 001                1/128
Reserved for IPX Allocation            0000 010                1/128
Unassigned                             0000 011                1/128
Unassigned                             0000 1                  1/32
Unassigned                             0001                    1/16
Unassigned                             001                     1/8
Provider-Based Unicast Address         010                     1/8
Unassigned                             011                     1/8
Reserved for Geographic-based          100                     1/8
       Unicast Addresses
Unassigned                             101                     1/8 
Unassigned                             110                     1/8
Unassigned                             1110                    1/16
Unassigned                             1111 0                  1/32
Unassigned                             1111 10                 1/64
Unassigned                             1111 110                1/128
Unassigned                             1111 1110 0             1/512
Link Local Use Addresses               1111 1110 10            1/1024
Site Local Use Addresses               1111 1110 11            1/1024
Multicast Addresses                    1111 1111               1/256
</verb></tscreen>

<!--
15% of the address space is intially allocated, leaving 85% reserved for 
future use.
-->
15% のアドレス空間がはじめ割当てられていて、のこり 85% は将来のために
残されている。

<!--
[RFC-1897] describes a method for allocating test IPv6 addresses over the 
6bone. The addresses allocated under this plan are temporary and will be 
reclaimed in the future.
-->
<htmlurl url="http://core.ring.gr.jp/pub/doc/RFC/rfc1897.txt" 
name="[RFC-1897]"> 
6bone 上での IPv6 アドレス割当ての方法の記述。
アドレス割当てのプランは一時的なもので、将来変更されることになっている。

</sect1>
</sect>

<sect><!--Linux-specific information -->Linux に特化した情報
<p>

<sect1><!--IPv6 for different hardware architectures -->
IPv6 の異ったアーキテクチャへの実装
<p>
<!--
As most rabid Linux zealots know, Linux ports are available on several 
architectures - x86, Alpha, Sparc, PowerPC, MIPS, and m68k, among others. In 
theory, the Linux IPv6 code is architecture-independent. It is known to run on 
the Alpha platform, and there are rumors of it working on Sparc. However, 
unless stated otherwise, all architecture-dependent information in this FAQ 
(patches, etc...) is for the x86. I'm sure that as the IPv6 code matures and 
Linux develops, all Linux platforms will come to support IPv6.
-->
ほとんどのLinux愛好家が知っているように、Linuxの移植はほとんどの
アーキテクチャ - x86, Sparc, PowerPC, and Alpha, などなどに可能だ。
理論的にはLinuxのIPv6のコードはアーキテクチャに依存しない。
Alphaでは動くことがわかっているし、Sparcでも動くという噂だ。
しかしこの文書はほかがどうであるかにかかわらず、コードが
安定化され、2.2.0が開発されているx86版のLinuxを参照している。
そして私はIPv6のコードが全てに移植されると確信している。

</sect1>

<sect1><!--Kernel version information -->
カーネルバージョンに関する情報
<p>
<!--
As of this writing, the latest experimental Linux kernel is 2.1.44, but I'm 
sure that's changed by the time you read this. IPv6 support is now supported 
in the kernel as a compile-time option. The goal is to bring a stabilized IPv6 
to 2.2.0, when it arrives.
-->
この文書を書いている時点での最新の開発版のカーネルは 2.1.35 ですが、
おそらくこの文書を読むころにはかわっているとおもいます。
IPv6 のサポートは今はカーネルのコンパイル時のオプションです。
目標は IPv6 のコードを至る 2.2.0 で安定させることです。

</sect1>

<sect1><!--Mailing lists -->メーリングリスト
<p>
<!--
There are several useful mailing lists that you may want to subscribe to:
-->
役にたついくつかのメーリングリストを挙げます。希望すれば参加できます。

<descrip>
<tag>The netdev list</tag>
<!--
This list is for people involved in, or just plain interested in, the work 
being down to bring IPv6 to Linux. This is the place where the developers hang 
out. 
-->
このリストはLinuxでIPv6を行うための作業にくわわるか、あるいは単に興味がある人の
ためのものです。ここには開発者たちが参加しています。

<!--
Subscription Requests to: majordomo@nuclecu.unam.mx. 
-->
参加するには majordomo@nuclecu.unam.mx に 

<!--Archives: -->アーカイブ
<itemize>
<item><url url="ftp://nuclecu.unam.mx/lists/netdev/">
<item><url url="news://NNTP.Q.NET/q.ml.sw.os.linux.netdev/">
<item><url url="http://www.wcug.wwu.edu/lists/netdev">
</itemize>

<tag>Linux-net</tag>
<!--
A general mailing list about Linux networking - subscribe via 
linux-net@vger.rutgers.edu.
-->
Linuxでのnetworkingに関するメーリングリストです。
参加するには linux-net@vger.rutgers.edu .

<tag>Linux-kernel</tag>
<!--
Similar to Linux-net, except (you guessed it!) about issues related to the 
Linux kernel. Subscriptions to linux-kernel@vger.rutgers.edu.
-->
Linux-netのようなものですが、Linuxのカーネルに関連する内容です。 
参加するには linux-kernel@vger.rutgers.edu .

</descrip>

</sect1>
</sect>



<sect><!--How do I get IPv6 on my Linux machine? -->
どうしたら私のマシンで IPv6 がうごきますか? 
<p>
<!--
This section covers the installation of IPv6 software onto a Linux machine. It 
is aimed at the experienced Linux user - you may have to hack a Makefile, a 
header file or some source in order to get things to work. However, it assumes 
no IPv6-specific knowledge.
-->
この章では Linux マシンに IPv6 のソフトウェアをインストールするところを
カバーします。これは、経験のある Linux ユーザが対象です。
あなたは、Makefile や、ヘッダファイル、あるいはソースコードを動作させるために
入手しハックすることをおそらく必要とします。
しかしながら、IPv6 に特化した知識は必要としません。

<!--
Under each package's name is a link to its home site (the place the authors 
put the newest version). Please see the next section, "Software Mirrors" for 
other places to download; going to a mirror first is always a good idea.
-->
以下のそれぞれのパッケージはその最新版の置いてあるサイトにリンクしています。
その次の章にダウンロードのためのミラーサイトが書かれていますので、
ますミラーに行ってください。

<sect1><!--Absolutely critical software-->
必要不可欠なソフトウェア
<p>
<!--
This is the stuff that you have to have in order to get your Linux box running 
IPv6 over the 6bone.
-->
これはあなたが Linux マシンで、IPv6 を 6bone 上で動作させるのに入手する
必要がある一連のソフトウェアです。

<itemize>
<item>
<!--
An IPv6-capable Linux kernel. You should use one of the later 2.1.x 
kernels - as of this writing, the latest version is 2.1.44. 
-->
IPv6 のつかえるカーネル。
あなたは
<htmlurl url="http://ftp.cs.helsinki.fi/pub/Software/Linux/Kernel" 
name="2.1.x のカーネル"> をつかわねばなりません。2.1.44 が最新版です。
</itemize>

<sect2><!--Development libraries-->開発用ライブラリ
<p>
<!--
In the words of Craig Metz:
-->
Craig Metz さんからです。

<!--
<tscreen><verb>
I develop IPv6 applications using Linux libc 5.4.26 and the drop-in
replacement headers and libinet6 from inet6-apps.

Philip develops IPv6 applications using the current GNU libc 2.1, which
includes the appropriate headers and some of the needed functions because he
has merged them in.

Presumably, either of these configurations would be a reasonable base
for someone wanting to use IPv6 applications. Other configurations may or may
not work.
</verb></tscreen>
-->
<tscreen><verb>
私は Linux libc 5.4.26 と、ヘッダのおきかえと、inet6-apps の 
libinet6 をつかってIPv6 のアプリを開発している。

Philip は IPv6 のアプリを GNU libc 2.1 で開発している。これは、
彼がマージした適切なヘッダや、いくつかの必要な関数が含まれて
いる。

思うに、IPv6 のアプリケーションを使いたい人にはどちらの場合で
あっても合理的な方法だろう。どちらかの場合ではうごかないかも
しれないが。
</verb></tscreen>

<!--
You need either libc5 with libinet6, a patched glibc 2.0, or glibc 2.1. 
-->
あなたは、libc5 with libinet6 か、 a patched glibc 2.0 か or glibc 2.1
が必要です。

<descrip>

<tag>libinet6</tag>
<!--
libinet6 can be found in the inet6-apps package mentioned below.
-->
libinet6 は後述の inet6-apps パッケージに同根されています。

<tag>Glibc 2.0 patch</tag>

<url url="ftp://ftp.cs-ipv6.lancs.ac.uk/pub/Code/Linux/glibc/">

<tag>Glibc 2.1</tag>

<url url="ftp://alpha.gnu.ai.mit.edu/gnu/libc">

</descrip>

</sect2>

<sect2><!--Other critical software-->上記以外の必須ソフトウェア
<p>

<descrip>

<tag>net-tools</tag>

<url url="ftp://ftp.london.uk.eu.org/pub/ipv6/">, 
<url url="ftp://ftp.cs-ipv6.lancs.ac.uk/pub/Code/Linux/Net_Tools/">

<!--
The base of the NET-3 Linux distribution, this package contains ifconfig, 
hostname, route, arp, rarp, netstat, and ipfw. As of this writing, the latest 
version is 1.41.
-->
NET-3 系の Linux ディストリビューションのベースとなっているパッケージ
であり、<tt>ifconfig, hostname, route, arp, rarp, netstat, ipfw</tt> 
が含まれます。 現時点での最新版は 1.41 です。

<tag>inet6-apps (ftp.inner.net:/pub/ipv6/inet6-apps-0.24.tar.gz) </tag>
<!--
As of this writing, the newest version of inet6-apps is 0.24. 
-->
本書の執筆時点で inet6-apps の最新版は 0.24 です。
</descrip>

<!--
Note that you need to use an actual FTP client to get this package; a web 
browser won't work. That's why there's no hyperlink directly to them.
-->
注意：このパッケージは web ブラウザで入手することができません。
FTP クライアントを用いてください。そのため、リンクしていません。

<!--
Also, Craig Metz has an aging scheme built into his FTP sites. As he says:
-->
また、Craig Metz は、独自のソフトウェア熟成計画を彼の FTP サイトに
組み入れています。彼は次にように述べています。

<!--
<tscreen><verb>
Things are first released on ftp.ipv6.inner.net, which is an IPv6-only
FTP server. After a version is aged one week, it's copied onto ftp.inner.net,
which is accessable by IPv4. If a version gets replaced within a week, that
version never makes it to the IPv4 FTP server. This means that the IPv6 server
can be thought of as carrying public beta versions while the IPv4 server can
be thought of as carrying more baked versions.

If you have any trouble with either FTP server, you can whine about it or you
can explain your problem to me and ask me to fix it. One way is a lot more
likely to result in getting your problem solved.
</verb></tscreen>
-->
<tscreen><verb>
新バージョンのソフトウェアはまず ftp.ipv6.inner.net 上でリリースされる。
この FTP サーバは、IPv6 でしかアクセスできない。そのバージョンのリリース
から一週間経つと、ftp.inner.net にコピーされる。これは、IPv4 でアクセス
が可能だ。あるバージョンが一週間以内に更新された場合、そのバージョンは 
IPv4 FTP サーバには登場しない。つまり、IPv6 サーバは、パブリックベータ
バージョンを掲載する場であり、IPv4 サーバはもうちょっと年期の入った
バージョンを掲載する場だと考えることができる。

どっちかの FTP サーバ上のソフトウェアでトラブルが生じた場合、適当にブーブー
言うだけでもいいし、あるいは、生じた問題を説明して、改善要求を出してくれても
いい。どっちの方法が問題解決に適しているかは、言うまでもないと思うけど。
</verb></tscreen>

</sect2>
</sect1>

<sect1><!--Potentially useful software.-->役に立つかもしれないソフトウェア
<p>
<!--
This is stuff that you don't need, but that's real handy to have.
-->
これらは必要ではありませんが、持っておくと便利です。

<descrip>

<tag><htmlurl 
url="ftp://ftp.hcs.harvard.edu/pub/linux/netkit/private/kimchee/" 
name="netkit"></tag>
<!--
Several common BSD utilities, ported to IPv6 (finger, ftp, telnet, etc...). 
Netkit is perhaps the most useful non-mandatory IPv6 software out there - 
picking up at least some of these packages is HIGHLY recommended.
-->
いくつかの BSD ユーティリティが IPv6 に移植されました。
(finger, ftp, telnet, etc...) 
 Netkit は、かならずしも必須の IPv6 ソフトウェアではないが
すくなくとも、いくつかのパッケージでは強く推薦される。

<tag><htmlurl 
url="ftp://pub1.bryant.vix.com/isc/bind/src/cur/bind-4.9.5-P1.tar.gz" 
name="BIND"></tag>
<!--
There are two reasons to install BIND. If you don't have an up-to-date glibc 
(2.1.x), you need to install BIND's resolver libraries so that you can build 
IPv6 apps. This is not necessary if you have an up-to-date glibc. The second 
reason is that the newer BINDs support AAAA records, which are part of the 
IPv6 DNS spec. You need to do this if you want to run an IPv6-aware nameserver.
-->
2 つの理由から BIND がインストールされている必要があります。
もし、あなたが最新版の glibc (2.1.x) をもっていないならば、
リゾルバのライブラリのため、インストールしなければなりません。
2 つ目の理由は IPv6 の DNS の仕様である、AAAA レコードのサポートのためです。
もし IPv6 のネームサーバを使いたければインストールしなければなりません。

<tag><htmlurl 
url="ftp://ftp.cityline.net/pub/systems/linux/network/ipv6/radvd/"
name="RADVD"></tag>
<!--
RADVD is the Router ADVertisement Daemon. It is used for autoconfiguration by 
IPv6 hosts. More info is available here.
-->
RADVD は the Router ADVertisement Daemon (ルータ通知デーモン) 
のことです。
これは IPv6 のホストの自動設定のために使われます。くわしい情報は
<ref id="radvd" name="ここ">。

<tag>rc.inet6 (ftp.inner.net:/pub/ipv6/) </tag>
<!--
A sample script that shows how to bring up IPv6 support on your machine.
-->
あなたのマシンで IPv6 をサポートさせるサンプルのスクリプトです。

<tag>inner-apps (ftp.inner.net:/pub/ipv6/) </tag>
<!--
fdsniff, fingerd, and netd (inetd/tcp_wrappers replacement) written from 
scratch to support IPv6.
-->
IPv6のサポートのためにスクラッチから書かれた
fdsniff, fingerd, netd (inetd/tcp_wrappers とおきかえます)です。

<tag>inn-1.5.1+ipv6-1.tar.gz (ftp.inner.net:/pub/ipv6/) </tag>
<!--
Patches to INN to make it IPv6-aware.
-->
INNをIPv6対応にするパッチです。

<tag><htmlurl url="http://reality.sgi.com/employees/lm/lmbench/lmbench.html" 
name="lmbench"></tag>
<!--
A network benchmarking program, lmbench is useful for, well, benchmarking 
networks. It's the program that lets you show your
friends that your IPv6 Linux machine is faster than their IPv4 box!
-->
ネットワークベンチマークプログラムです。あなたが友人にあなたの IPv6 の 
Linux マシンが彼の IPv4 マシンより高速であることを見せてくれるでしょう。

<tag><htmlurl url="http://mrpark.kyungpook.ac.kr/rsvp.html" 
name="RSVP"></tag>
<!--
The start of an RSVP port for Linux.
-->
Linux 向け RSVP ポートの始まり。

</descrip>

</sect1>

<sect1><!--Software mirrors -->ソフトウェアのミラー
<p>
<!--
This is a list of all the IPv6 soft ware mirror sites that I know of. 
Currently, there's no central organization that tracks all these mirrors -
this means that some sites may have the latest versions of things, while some 
may not. The FAQ should always have pointers to the home sites of the most 
up-to-date software; it's probably a good idea to check the mirrors close to 
you first, and go to the home sites last. 
-->
これは私の知る限りのIPv6のソフトウェアのミラーのリストです。
いまのところ、全てのミラーをまとめるような中心組織はありません。
これは、いくつかのサイトが最新版をもっていて、その他のサイトは
もっていないことがあることになります。
このFAQは最も更新の頻繁なホームとなるサイトにリンクしていなければ
いけません。おそらく一番良い方法は、はじめにあなたから一番近い
ミラーをチェックして、次にホームサイトに行くことです。

<sect2><!--United States Mirrors -->アメリカにあるミラー
<p>
<itemize>
<item><url url="ftp://ftp.wcug.wwu.edu/pub/ipv6">
<item><url url="ftp://vger.rutgers.edu/pub/linux/IPv6/">
<item><url url="ftp://ftp.thirdwave.net/pub/linux/kernel/IPv6/">
<item><url url="ftp://ftp.terra.net/pub/ipv6/">
<item><url url="ftp://ftp.psych.neu.edu/pub/ipv6/">
</itemize>

</sect2>
<sect2><!--European Mirrors -->ヨーロッパにあるミラー
<p>
<itemize>
<item><url url="ftp://ftp.cs-ipv6.lancs.ac.uk/pub/Code/Linux/">
<item><url url="ftp://ftp.gwdg.de/pub/linux/misc/ftp.ul.pt/IPv6/">
<item><url url="ftp://eclipse.asta.uni-essen.de/pub/linux/kernel/ipv6">
<item><url url="ftp://ftp.via.ecp.fr/pub/unix/linux/IPv6/">
<item><url url="ftp://dns.marwin.ch/pub/Linux/IPv6/">
<item><url url="ftp://ftp.funet.fi/pub/Linux/kernel/ipv6/">
<item>Viking BBS in France: +33 4 76 91 81 25: /pub/Systemes/linux/IPv6/ 
</itemize>
</sect2>

<sect2><!--Australian Mirrors -->オーストラリアにあるミラー
<p>
<itemize>
<item><url url="ftp://ftp.syd.dit.csiro.au/pub/ipv6/linux/">
<item><url url="http://linux.vv.com.au/ipv6/">
</itemize>
</sect2>

<sect2><!--South American Mirrors -->南アメリカにあるミラー
<p>
<itemize>
<item><url url="ftp://ftp.inf.utfsm.cl/pub/Linux/ALPHA/IPv6/">
</itemize>
</sect2>

<sect2><!--South African Mirrors -->南アフリカのミラー
<p>
<itemize>
<item><url url="ftp://ftp.is.co.za/linux/networking/ipv6/">
</itemize>
</sect2>
</sect1>


<sect1><!--Other Linux-specific info -->その他Linuxに特化した情報
<p>
A quick 6bone howto 

<!--
The following is from Craig Metz.
-->
以下は Craig Metz &lt;cmetz@inner.net&gt; から寄せられたものです。

<!--
<tscreen><verb>
In response to some questions I've been getting:

1. Install the latest working IPv6-capable kernel.
2. Install the latest net-tools kit from ftp.ul.pt
3. Install the latest inet6-apps kit from ftp.inner.net
4. Install the latest radvd from ftp.cityline.net
5. Compute your prefix using the algorithm in RFC 1897.
        Read the document carefully. If you don't know
        why to do otherwise, compute a 64-bit prefix.
6. Find your connection point. You want somewhere that
        is the topologically closest transit site that
        is clueful enough to be depended on.
7. Ask them to set you up a tunnel. You will need to
        provide them with your prefix (from step 5) and
        the IPv4 address of your IPv6 router.
8. Install the skeleton rc.inet6 from ftp.inner.net and
        fill in the appropriate blanks.
9. Make sure the tunnel moves bits (ping).
10. Ask your connection point to get routing set up for
        you.
11. Put an entry in the IPv6 routing registry on
        ftp.ripe.net.
12. Install BIND >4.9.5.
13. Set up an IPv6 forward DNS domain (I recommend you
        call it ipv6.foo.com, where foo.com is your
        normal IPv4 domain) with AAAA records.
14. Test the above on-site and off-site.
15. Set up an IPv6 reverse DNS domain.
16. Test the above on-site.
17. Request a reverse DNS delegation.
18. Test the above off-site.

While this sounds involved, it really isn't so difficult. It does
take a mostly-constant network connection, some clues, and some time.
</verb></tscreen>
-->
<tscreen><verb>
いくつかの質問に対するわたしのおこなった回答です。

1. IPv6の動作する最新のカーネルをインストールします。
2. ftp.ul.ptからもってきたnet-toolsの最新版をインストールします。
3. ftp.inner.netからもってきたinet6-apps kitの最新版をインストールします。
4. ftp.cityline.netからもってきたradvdの最新版をインストールします。
5. あなたのプリフィックスをRFC 1897のアルゴリズムで計算します。
	注意深く読んでください。もし、なぜそうするかわからないときは、
	64bitのプリフィックスを計算してください。
6. あなたの接続点をみつけてください。
	あなたはどこかトポロジ的に近くて、依存するに十分なとこを望むでしょう。
7. 彼等にトンネリングのセットアップを依頼してください。あなたは
	5で計算したプリフィックスとIPv6のルータのIPv4のアドレスを
	提供しなければなりません。
8. ftp.inner.netからrc.inet6のスケルトンを入手して、
必要なところを埋めてください。
9. pingをつかって、トンネリングを確認してください
10. あなたのルーティングを接続点に依頼してください。
11. ftp.ripe.netにIPv6のルーティングをputしてください。
12. BIND &gt;4.9.5 をインストールします。
13. IPv6のフォワードをするDNSドメインの設定をAAAAレコードにします。
(おそらく ipv6.foo.com というところのは foo.comがIPv4のドメインでしょう)
14. on-site と off-siteで、テストしてください。
15. IPv6 のreverse DNS domainを設定します。
16. on-siteでテストしてください。
17. 逆引き DNS を要求します。
18. off-siteでテストしてください。


これは面倒なように聞こえるかもしれませんが、それほどむずかしいものでは
ありません。必要なのは、安定したネットワークコネクションと、ちょっとした
てかがりと、時間だけです。
</verb></tscreen>
</sect1>
</sect>

<sect><!--IPv6 application information -->IPv6のアプリケーションの情報
<p>

<sect1><!--How to write for and port to IPv6 -->
どのようにしてIPv6のコードを書いたり移植したりするか
<p>
<!--
Writing software for IPv4/IPv6 platforms 
-->
IPv4/IPv6 用ソフトウェア

<!--
Matti Aarnio asked:
-->
Matt Aarnio の質問：

<!--
<verb>
      "If possible, tell also how to do software for mixed environments.
      That is, software that can be compiled both on IPv4-only systems,
      and also on IPv6 with all these new fancy widget routines.
      I bet MOST of the applications fall on this category, at least for
      now...  (And those systems don't have NRL libraries in them.)"
</verb>
-->
<tscreen><verb>
もしも可能なら、混在した環境ではソフトをどのようにすればいいのか
おしえてください。
これはすなわち、IPv4 だけのシステムでも、新しいファンシーなウィジェット
ルーチンをすべて備えたIPv6のシステムでもコンパイルできるソフトウェアです。
少なくとも現在においては、ほとんどすべてのアプリケーションがこの分野に
入るものと、私は確信しています。
(それらのシステムにはNRLのライブラリはいれていません)
</verb></tscreen>

<!--
Philip Blundell gives us this answer:
-->
Philip Blundell の答え：

<!--
<verb>
      "There are really two problems here.  Firstly, how to make software that
      can be compiled on both new systems with IPv6 capability, and old
      IPv4-only systems.  And secondly, once you've compiled your code, there is
      the issue of making sure that the same binaries will work regardless of
      whether IPv6, IPv4, or both are supported. 

      To deal with the second problem first, the best thing to do is to use
      getaddrinfo() for all your name lookups and so on.  This hands you back
      both an address family and an address structure; you can then pass the
      returned address family straight to socket() to create the right sort of
      socket.  If the host you asked for has an AAAA record, you'll get back
      AF_INET6 and a struct sockaddr_in6, otherwise if it has an A record you'll
      get back AF_INET and a struct sockaddr.  getaddrinfo() and its counterpart
      getnameinfo() are in glibc 2.1.

      By using these calls, your code can be more-or-less entirely unaware of
      the address family in use, and you can avoid using struct
      sockaddr_in/struct sockaddr_in6.  Thus your code will be equally happy in
      IPv6-only, IPv4-only and mixed environments.  Take a look at the
      inet6-apps sources for examples of how to do this sort of thing. 

      The first problem is a bit more of a nuisance.  Old versions of the C
      library don't have getaddrinfo(), though it is provided in libinet6.  You
      will probably need to provide a compile-time switch and lots of #ifdefs to
      select between getaddrinfo() and the old name-lookup calls.

      BTW, getaddrinfo() is a POSIX function, rather than an NRL specific, so it
      ought to be safe to use in portable code."
</verb>
-->
<tscreen><verb>
2つの問題があります。ひとつは、どうやってIPv6のつかえる新しい環境と
古いIPv4だけのシステムの両方でコンパイルできるソフトウェアを作るか。
次に一度あなたがコンパイルしたコードが、IPv6、IPv4、あるいは混在に
かかわらずおなじコードが動作させることによって問題が生じることです。

2つ目を先にいきましょう。
一番よいのはgetaddrinfo() を名前探索に使うことです。
これはアドレスファミリーとアドレス構造をかえします。すると、あなたは
ソケットのソートを作るのにアドレスファミリを socket()に入れることが
できます。もしAAAAレコードを聞いたら、あなたは AF_INET6 と 
struct sockaddr_in6 を得ます。(AレコードのAF_INETと struct sockaddrの
かわりに)。getaddrinfo() は getnameinfo() のかわりになるもので、
glibc 2.1にあります。

これらの関数によって、アドレスファミリをつかうことを気にせず、
sockaddr_inやsockaddr_in6を無視できます。
これであなたのコードはIPv6でも、IPv4でも、混在環境でもうれしいでしょう。
たとえばinet6-appsのソースがそうですから、見てください。

ひとつ目の問題はやっかいです。古いバージョンのCは getaddrinfo() が
ありません。そして libinet6で提供されています。
あなたはおそらくコンパイル時に #ifdef などをつかった多くのオプションを
用意して、getaddrinfo()と、以前の名前探索関数をわけねばなりません。

getaddrinfo()はNRLに特化しているというより、POSIXの関数ですので
移植可能なコードとしても問題ないでしょう。
</verb></tscreen>
</sect1>

<sect1><!--Applications under IPv6 -->IPv6 のアプリケーション
<p>
<!--
Is there an IPv6-porters mailing list? 
-->
IPv6に移植する人のためのメーリングリストはありますか?

<!--
Yes. Thanks to bound@zk3.dec.com for pointing this out. Subscribe via 
ipv6imp-request@munnari.oz.au
-->
あります。bound@zk3.dec.com から、回答をいただきました。参加するには
ipv6imp-request@munnari.oz.au まで。

</sect1>
</sect>

<sect>(訳注) RADVD Introduction<label id="radvd">
<p>
by Lars Fennberg &lt;lf@elemental.net&gt; 

IPv6 は IPv4 よりさらに進んだ自動設定をサポートしている。
しかしそのためには、この自動設定はネットワーク上のホストで動作し、
ローカルネットワークのルータはホストの自動設定要求に
答える動作が必要にである。

Linux ではこのプログラムは radvd (Router ADVertisement Daemon
：ルータ通知デーモン) とよばれる。
このデーモンはルータ要請(RS)を聞き、ルータ通知(RA)を答える。
なお、求められない要求も送られる。

これらの RA にはホストのインターフェースの設定に使用される情報を含んでいる。
この情報は、アドレスプリフックス、デフォルトルータの経路MTU と情報が
含まれている。

もちろん、ルータ自身は自動設定できないため、ルータ情報は
システムの管理人によって設定されなければならない。
これは、インターフェースと経路の手動設定と、ルータ通知デーモンの設定に
よっておこなわれる。

簡単な設定スクリプトは以下のようになる。

<tscreen><verb>
interface eth0 {
        AdvSendAdvert on;
        prefix 5f15:9100:c2dd:1400:8000::0/80
	{
                AdvOnLink on;
                AdvAutonomous on;
        };
};
</verb></tscreen>

これは、radvd が、eth0 で80の長さのプリフィックス
5f04:f900:c2dd:1400:8000::0 を流している。
プリフィックスは autonomous (AdvAutonomous がon) かつ、on-link
(AdvOnLink が on)でる。そのほかのオプションはデフォルトの値である。

Autonomous はそのプリフィックスが自動アドレス設定につかえてることで、
on-link はそのホストが、全てのこのプリフィックスを使用するマシンが
RAを受信したマシンから到達可能と仮定できることを示す。

そのプリフィックスは、この例のようにランダムに選ぶことはできなかった。
それは RFC 1897 (IPv6 のテストアドレス割当て)にもとづいて決定された。
その上、プリフィックス長も自由に選べず、ネットワークメディアによって
決定される。
イーサネット用には、プリフィックス長は80であるが、これは
48bit 長のイーサネットハードウェアアドレスと、128bit のIPv6 アドレスを
結びつけるものだ。
詳細は、RFC 1971 (IPv6 Stateless Address Autoconfiguration) および、
RFC 1972 (A Method for the Transmission of IPv6 Packets over Ethernet Networks)
を参照のこと。

より詳しい radvd の設定に関する情報は radvd の配布に含まれています。

ホスト上のインターフェースが UPed とRA を受信したとき、そのホストは
プリフィックスと、イーサネットハードウェアアドレスを使って、
アドレスの設定ができる。
次に1例をあげる。

<tscreen><verb>
Announced prefix    5f15:9100:c2dd:1400:8000:0000:0000:0000

Link-layer token                             0800:0040:1726

Configured address  5f15:9100:c2dd:1400:8000:0800:0040:1726
</verb></tscreen>

ホストは、デフォルトルータの選択を RA を調べて実行できる。
これは、IPv6 のみのホストは単にインターフェースに UP をおこなうだけで、
それ以外は自動でおこなわれることを意味する。

そのため、我々が radvd を設定したときは、インターフェースの設定と、
ルータでの経路の設定がまだ必要である。
簡便にするため、我々はただ一つのインターフェースがあり、
ルータがトンネリングを使って「外の世界」へ通信されることにする。

下の例は、IPv6 のルータでの設定のシェルスクリプトである。
これは、本当に私の使っているルータと同じものです。... :)

見ての通り、アドレスと経路を手で加えて、IPv6 over IPv4 のトンネルを
設定しています。

/etc/init.d/functions は、ちょっとした助けになる関数があつまっていて、
radvd を kill するのに "stop" が必要でしょう。
/usr/ipv6/sbin は、IPv6 の net-tools と、radvd の新しいバージョンが
インストールされています。
これを PATH の先頭に入れて、IPv6 関連プログラムの以前のバージョンより
先に見つかるようにしています。

このスクリプトは、eth0 のような通常のインターフェースでのもので、
すでに IPv4 などで設定されているとします。

<tscreen><verb>
#! /bin/sh

. /etc/init.d/functions

PATH=/usr/ipv6/sbin:/usr/ipv6/bin:/bin:/usr/bin:/sbin:/usr/sbin
export PATH

case "$1" in
  start)
	# enable forwarding
	echo 1 >/proc/sys/net/ipv6/ipv6_forwarding 

        # get IPv6-over-IPv4 tunnels up (enables automatic tunneling to 0::0/96)
	ifconfig sit0 up

	# configure the local interface
	ifconfig eth0  add 5f15:9100:c2dd:1400:8000:0080:ad1c:22ca/80
	route -A inet6 add 5f15:9100:c2dd:1400:8000::0/80 dev eth0

	# if you're on the 6bone you can setup tunnels like shown below.
	# every ifconfig sit0 tunnel 0::&lt;other-tunnel-endpoint-ip&gt;
	# creates a new sit interface. they're named sequentially (sit1,
	# sit2, sit3 and so on)

	# setup a tunnel to NRL
	ifconfig sit0 tunnel 0::132.250.90.5
	ifconfig sit1 up
	route -A inet6 add 5f00::0/8 gw fe80::132.250.90.5 dev sit1

	# setup a tunnel to G6
	ifconfig sit0 tunnel 0::129.88.26.1
	ifconfig sit2 up
	route -A inet6 add 5f06:b500::/32 gw fe80::129.88.26.1 dev sit2

	# start router advertisement daemon
	radvd
    ;;
  stop)
	killproc radvd
	ifconfig sit0 down
    ;;
  *)
    echo "Usage: /etc/init.d/ipv6 {start|stop}"
    exit 1
esac

exit 0
</verb></tscreen>

<verb>
Last changed: Sat Mar  1 19:17:33 MET 1997
Copyright &copy;1997 Lars Fennberg &lt;lf@elemental.net
</verb>

</sect>


</article>