Date: Sat, 6 Oct 2012 14:13:21 +0000 (UTC) From: Ryusuke SUZUKI <ryusuke@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r39663 - in head/ja_JP.eucJP/books/handbook: advanced-networking basics disks install Message-ID: <201210061413.q96EDLHk078057@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: ryusuke Date: Sat Oct 6 14:13:21 2012 New Revision: 39663 URL: http://svn.freebsd.org/changeset/doc/39663 Log: - Merge the following from the English version: r9149 -> r19116 head/ja_JP.eucJP/books/handbook/advanced-networking/chapter.xml Submitted by: FURUKAWA Jumpei <bell at f-bell dot net> Reviewed by: Hiroo Ono <hiroo _at_ jp dot FreeBSD dot org> References: [doc-jp-work 794, 984, 1015, 1285, 1335, 1406, 1456, 1467, 1545, 1567, 1585, 1635, 1637, 1639, 1648, 1691, 1699, 1704, 1705, 1706] - Typo fix (polution -> pollution) Pointed out by: kano at na.rim.or.jp References: [doc-jp 17965, doc-jp-work 1635-1637] - Add the translation note about the end of the 6bone service. Submitted by: Hiroo Ono <hiroo _at_ jp dot FreeBSD dot org> Suggested by: motoyuki@ Reference: [doc-jp-work 1705] - Related changes head/ja_JP.eucJP/books/handbook/basics/chapter.xml head/ja_JP.eucJP/books/handbook/disks/chapter.xml head/ja_JP.eucJP/books/handbook/install/chapter.xml Modified: head/ja_JP.eucJP/books/handbook/advanced-networking/chapter.xml head/ja_JP.eucJP/books/handbook/basics/chapter.xml head/ja_JP.eucJP/books/handbook/disks/chapter.xml head/ja_JP.eucJP/books/handbook/install/chapter.xml Modified: head/ja_JP.eucJP/books/handbook/advanced-networking/chapter.xml ============================================================================== --- head/ja_JP.eucJP/books/handbook/advanced-networking/chapter.xml Sat Oct 6 12:44:46 2012 (r39662) +++ head/ja_JP.eucJP/books/handbook/advanced-networking/chapter.xml Sat Oct 6 14:13:21 2012 (r39663) @@ -3,145 +3,225 @@ The FreeBSD Documentation Project The FreeBSD Japanese Documentation Project - Original revision: 1.36 + Original revision: r19116 $FreeBSD$ --> <chapter id="advanced-networking"> <title>高度なネットワーク</title> - <sect1> + <sect1 id="advanced-networking-synopsis"> <title>この章では</title> - <para>以下の章では、 UNIX - システム上で良く利用されるネットワークサービスについて書かれています。 - これはもちろん、 あなたの FreeBSD - システムでの、 そのようなサービスの設定に関する内容です。</para> - </sect1> + <para>この章では &unix; + システム上で良く利用されるネットワークサービスについて説明します。 + FreeBSD が利用するすべてのネットワークサービスをどのように定義し、 + 設定し、テストし、そして保守するのかを扱います。さらに、 + 本章を通してあなたの役に立つ設定例が載っています。</para> + + <para>この章を読めば以下のことが分かります。</para> + + <itemizedlist> + <listitem> + <para>ゲートウェイと経路の基本</para> + </listitem> + + <listitem> + <para>FreeBSD をブリッジとして動作させる方法</para> + </listitem> + + <listitem> + <para>ネットワークファイルシステム (NFS) の設定方法</para> + </listitem> + + <listitem> + <para>ディスクレスマシンのネットワークブートの設定方法</para> + </listitem> + + <listitem> + <para>ユーザアカウントを共有するためのネットワークインフォメーションサーバ (NIS) の設定方法</para> + </listitem> + + <listitem> + <para>DHCP を用いて自動的にネットワーク設定を行う方法</para> + </listitem> + + <listitem> + <para>ドメインネームサーバ (DNS) の設定方法</para> + </listitem> + + <listitem> + <para>NTP プロトコルを用いて日時を同期してタイムサーバを設定する方法</para> + </listitem> + + <listitem> + <para>ネットワークアドレス変換 (NAT) の設定方法</para> + </listitem> + + <listitem> + <para><command>inetd</command> デーモンの管理方法</para> + </listitem> + + <listitem> + <para>PLIP 経由で二台のコンピュータを接続する方法</para> + </listitem> + + <listitem> + <para>FreeBSD で IPv6 を設定する方法</para> + </listitem> + </itemizedlist> - <sect1 id="routing"> - <title>ゲートウェイとルート</title> + <para>この章を読む前に、以下のことを行っておくべきです。</para> + + <itemizedlist> + <listitem> + <para><filename>/etc/rc</filename> スクリプトの基本を理解していること</para> + </listitem> + + <listitem> + <para>基礎的なネットワーク用語に精通していること</para> + </listitem> + </itemizedlist> + </sect1> - <para><emphasis>原作: &a.gryphon;. - 1995 年 10 月 6 日.</emphasis></para> + <sect1 id="network-routing"> + <sect1info> + <authorgroup> + <author> + <firstname>Coranth</firstname> + <surname>Gryphon</surname> + <contrib>寄稿: </contrib> + </author> + </authorgroup> + </sect1info> + <title>ゲートウェイと経路</title> + <!-- <para><emphasis>訳: &a.jp.yuki;. - 1996 年 9 月 6 日.</emphasis></para> + 1996 年 9 月 6 日.</emphasis></para> + --> - <para>あるマシンが他のマシンをみつけることができるようにするには、 - あるマシンから他のマシンへ、 - どのようにたどり着くかを適切に記述するための仕組みが必要です。 - この仕組みをルーティングと呼びます。 <quote>ルート(経路)</quote>は - <quote>destination (目的地)</quote> と <quote>gateway - (ゲートウェイ)</quote> の 2 つのアドレスの組で定義します。 あなたが - <emphasis>destination</emphasis> へアクセスしようとした場合、 - <emphasis>gateway</emphasis> - を通って送られることをこのペアは示しています。 destination - には個々のホスト、 サブネット、 <quote>デフォルト</quote> の 3つの - タイプがあります。 - <quote>デフォルトルート</quote> は他への経路が適用できない - 場合に使われます。 のちほどデフォルトルートについて少し述べることに - するとして、 ここでは、 個々のホスト、 インタフェース + <indexterm><primary>ルーティング</primary></indexterm> + <indexterm><primary>ゲートウェイ</primary></indexterm> + <indexterm><primary>サブネット</primary></indexterm> + <para>あるマシンがネットワーク上で他のマシンをみつけることができるようにするには、 + あるマシンから他のマシンへどのようにたどり着くかを記述する適切な仕組みが必要です。 + この仕組みを<firstterm>ルーティング</firstterm>と呼びます。 + <quote>経路</quote> (route) は <quote>送信先</quote> + (destination) と <quote>ゲートウェイ</quote> の + 2 つのアドレスの組で定義します。この組合せは、この + <emphasis>送信先</emphasis> へたどり着こうとする場合は、その + <emphasis>ゲートウェイ</emphasis> + を通じて通信することを示しています。 + 送信先には個々のホスト、サブネット、<quote>デフォルト</quote> + の 3 つの型があります。 + <quote>デフォルトルート</quote> + は他のどの経路も適用できない場合に使われます。 + デフォルトルートについてはのちほどもう少し詳しく述べます。 + また、ゲートウェイには、個々のホスト、インタフェース (<quote>リンク</quote> とも呼ばれます)、 - イーサネットハードウェアアドレスという 3つのタイ - プのゲートウェイについて説明します。</para> + イーサネットハードウェアアドレス (MAC アドレス) + の 3 つの型があります。</para> <sect2> <title>例</title> - <para>以下に示す <command>netstat -r</command> - の出力の例を使って、 ルーティン - グがいろいろと異なっている様子を説明することにします。</para> + <para>以下に示す <command>netstat</command> + の例を使って、ルーティングのさまざまな状態を説明します。</para> + + <screen>&prompt.user; <userinput>netstat -r</userinput> +Routing tables - <screen>Destination Gateway Flags Refs Use Netif Expire +Destination Gateway Flags Refs Use Netif Expire default outside-gw UGSc 37 418 ppp0 localhost localhost UH 0 181 lo0 test0 0:e0:b5:36:cf:4f UHLW 5 63288 ed0 77 10.20.30.255 link#1 UHLW 1 2421 -foobar.com link#1 UC 0 0 +example.com link#1 UC 0 0 host1 0:e0:a8:37:8:1e UHLW 3 4601 lo0 -host2 0:e0:a8:37:8:1e UHLW 0 5 lo0 => -host2.foobar.com link#1 UC 0 0 -224 link#1 UC 0 0</screen> - - <para>最初の2行はデフォルトルート(次の節で詳しく説明します)と、 - <hostid>localhost</hostid>への経路を示しています。</para> - - <para><literal>localhost</literal>のためのインタフェース - (<literal>Netif</literal>の欄) - は<devicename>lo0</devicename>で、 - これはループバックデバイスとして知られています。 - 結局のところ戻るだけなので、 この - destinationへのすべてのトラフィックが - 内部的に処理されるのであって、 LAN - を経由して送られるのではありません。</para> - +host2 0:e0:a8:37:8:1e UHLW 0 5 lo0 => +host2.example.com link#1 UC 0 0 +224 link#1 UC 0 0</screen> + + <indexterm><primary>デフォルトルート (default route)</primary></indexterm> + <para>最初の 2 行はデフォルトルート + (<link linkend="network-routing-default">次節</link>で扱います) と、 + <hostid>localhost</hostid> への経路を示しています。</para> + + <indexterm><primary>ループバックデバイス (loopback device)</primary></indexterm> + <para><literal>localhost</literal> に割り当てるインタフェース + (<literal>Netif</literal> 欄) + としてこのルーティングテーブルが指定しているのは + <devicename>lo0</devicename> + で、これはループバックデバイスともいいます。 + これは結局のところ出たところに戻るだけなので、 + この送信先あてのトラフィックは、LAN + に送られずに、すべて内部的に処理されます。</para> + + <indexterm> + <primary>イーサネット</primary> + <secondary>MAC アドレス</secondary> + </indexterm> <para>次の行では - <hostid role="mac">0:e0:...</hostid> - というアドレスに注目しましょう。 - これはイーサネットハードウェアアドレスです。 FreeBSDは自動的に - ローカルなイーサネット上の任意のホスト - (この例では<hostid>test0</hostid>) を見つけ、 + <hostid role="mac">0:e0:</hostid> から始まるアドレスに注目しましょう。 + これはイーサネットハードウェアアドレスで、MAC アドレスともいいます。 + FreeBSD はローカルなイーサネット上の任意のホスト + (この例では <hostid>test0</hostid>) を自動的に認識し、 イーサネットインタフェース <devicename>ed0</devicename> - の所にそのホストへの経路を直接つけ加えます。 タイムアウト時間 - (<literal>Expire</literal>の 欄) - も経路のタイプと結びついており、 指定された時間が経過しても応 - 答がないときに使用します。 この場合、 - 経路情報は自動的に削除されま す。 これらのホストは、 RIP(Routing - Information Protocol) という、 - 最短パスの判定に基づいてローカルホストへの経路を - 決定する仕組みを利用することで認識されます。</para> - - <para>更に、 FreeBSDではローカルサブネット + にそのホストへの直接の経路をつけ加えます。 + この種の経路には、タイムアウト時間 (<literal>Expire</literal> 欄) + も結びつけられており、 + 指定された時間内にホストからの応答がないことを判断するのに用いられます。 + その場合、そのホストへの経路情報は自動的に削除されます。 + これらのホストは + RIP (Routing Information Protocol) という、 + 最短パス判定に基づいてローカルなホストへの経路を決定する仕組みを利用して認識されます。</para> + + <indexterm><primary>サブネット</primary></indexterm> + <para>さらに FreeBSD + ではローカルサブネットへの経路情報も加えることができます (<hostid role="ipaddr">10.20.30.255</hostid> は <hostid role="ipaddr">10.20.30</hostid> というサブネットに対するブロードキャストアドレスで、 - <hostid role="domainname">foobar.com</hostid> - はこのサブネットに結びつけられているドメイン名) - への経路情報も加えることができます。 - <literal>link#1</literal>というのは、 - このマシンの最初のイーサネットカードのことをさします。 これら - については、 - 何も追加インタフェースが指定されていないことに気づく - でしょう。</para> - - <para>これらの2つのグループ(ローカルネットワークホストと - ローカルサブネット) の両方とも、 <command>routed</command> - と呼ばれるデーモンによって自動的に経路が設定されます。 - <command>routed</command> を動かさなければ、 - 静的に定義した (つまり具体的に設定した) - 経路のみ存在することになります。</para> + <hostid role="domainname">example.com</hostid> + はこのサブネットに結びつけられているドメイン名)。 + <literal>link#1</literal> という名称は、 + このマシンの一つ目のイーサネットカードのことをさします。 + これらについては、 + 何も追加インタフェースが指定されていないことがわかります。</para> + + <para>これら 2 つのグループ + (ローカルネットワークホストとローカルサブネット) + は、両方とも <application>routed</application> + というデーモンによって自動的に経路が設定されます。 + <application>routed</application> を動かさなければ、静的に定義した + (つまり明示的に設定した) 経路のみが存在することになります。</para> <para><literal>host1</literal> の行は私たちのホストのことで、 - イーサネットアドレスで示されています。 送信側のホストの場合、 + イーサネットアドレスで示されています。送信側のホストの場合、 FreeBSDはイーサネットインタフェースへ送るのではなく、 - ループバックインタフェース - (<devicename>lo0</devicename>)を使います。</para> + ループバックインタフェース (<devicename>lo0</devicename>) + を使います。</para> - <para>2つある<literal>host2</literal>の行は、 - ifconfigのエイリアス (このようなことをする理由については - ethernetの章を参照してください) を使ったとき - にどのようになるかを示す例です。 - <devicename>lo0</devicename>の後にある<literal>=></literal> - は、 インタフェースが - (このアドレスがローカルなホストを参照しているので) + <para>2 つある <literal>host2</literal> の行は、 + &man.ifconfig.8; のエイリアスを使ったときにどのようになるかを示す例です + (このようなことをする理由については + Ethernet の節を参照してください)。 + <devicename>lo0</devicename> の後にある <literal>=></literal> は、 + インタフェースが (このアドレスがローカルなホストを参照しているので) ループバックを使っているというだけでなく、 エイリアスになっていることも示しています。 - このような経路はエイリアスをサポートしている - ホストにのみ現れます。 - ローカルネットワーク上の他のすべてのホストでは - 単に<literal>link#1</literal>となります。</para> - - <para>最後の行 (destinationが<literal>224</literal>のサブネット) - はマルチキャストで扱うものですが、 - これは他の章で説明します。</para> - - <para>他の欄については <literal>Flags</literal> - について説明する必要があります。 - それぞれの経路は欄に示されているように違った属性を - もっています。 - 以下にいくつかのフラグとこれらが何を意味しているかを示します。 + このような経路はエイリアスに対応しているホストにのみ現れます。 + ローカルネットワーク上の他のすべてのホストでは、 + それぞれの経路に対して単に<literal>link#1</literal> となります。</para> + + <para>最後の行 (送信先サブネット <literal>224</literal>) + はマルチキャストで扱うものですが、これは他の節で説明します。</para> + + <para>最後に <literal>Flags</literal> (フラグ) + 欄にそれぞれの経路のさまざまな属性が表示されます。 + 以下にフラグの一部と、それが何を意味しているかを示します。 </para> <informaltable frame="none"> @@ -154,96 +234,93 @@ host2.foobar.com link#1 UC <row> <entry>H</entry> - <entry>Host: 経路の destinationが単一のホストです。</entry> + <entry>Host: 経路の送信先が単一のホストです。</entry> </row> <row> <entry>G</entry> - <entry>Gateway: この destinationへ送られると、 どこへ送れ - ばよいかを明らかにして、 + <entry>Gateway: この送信先へ送られると、 + どこへ送ればよいかを明らかにして、 そのリモートシステムへ送られます。</entry> </row> <row> <entry>S</entry> - <entry>Static: この経路はシステムによって自動的に生成 - されたのではなく、 手動で作成されました。</entry> + <entry>Static: + この経路はシステムによって自動的に生成されたのではなく、 + 手動で作成されました。</entry> </row> <row> <entry>C</entry> - <entry>Clone: マシンに接続したときにこの経路に基づく - 新しい経路が作られます。 このタイプの経路は通常は - ローカルネットワークで使われます。</entry> + <entry>Clone: + マシンに接続したときにこの経路に基づく新しい経路が作られます。 + この型の経路は通常はローカルネットワークで使われます。</entry> </row> <row> <entry>W</entry> - <entry>WasCloned: ローカルエリアネットワーク(Clone) - の経路に基づいて - 自動的に生成された経路であることを示します。</entry> + <entry>WasCloned: + ローカルエリアネットワーク (LAN) の + (Clone) 経路に基づいて自動的に生成された経路であることを示します。</entry> </row> <row> <entry>L</entry> - <entry>Link: イーサネットハードウェアへの参照を含む - 経路です。</entry> + <entry>Link: + イーサネットハードウェアへの参照を含む経路です。</entry> </row> </tbody> </tgroup> </informaltable> </sect2> - <sect2> + <sect2 id="network-routing-default"> <title>デフォルトルート</title> - <para>ローカルシステムからリモートホストにコネクションを張る - 必要がある場合、 既知のパスが存在するかどうかを確認するためにル - ーティングテーブルをチェックします。 - 到達するためのパスを知っているサブネットの内部に - リモートホストがある場合 (Cloned routes)、 システムはインタフェース - から接続できるかどうかをチェックします。</para> - - <para>知っているパスがすべて駄目だった場合でも、 システムには - 最後の切り札の <quote>デフォルト</quote> ルートがあります。 - このルートは ゲートウェイルート (普通はシステムに - 1つしかありません) の特別なものです。 そして、 - フラグフィールドは必ず <literal>c</literal> - がマークされています。 このゲートウェイは、 LAN 内のホストにとっ - て、 外部 (PPPのリンクを経由する場合や、 - データラインに接続するハードウェアデバイスなど) - へ直接接続するマシンすべてのためのものです。</para> + <indexterm><primary>デフォルトルート</primary></indexterm> + <para>ローカルシステムからリモートホストにコネクションを張る必要がある場合、 + 既知の経路が存在するかどうかを確認するためにルーティングテーブルをチェックします。 + 到達するための経路を知っているサブネットの内部にリモートホストがある場合 + (Cloned routes)、 + システムはそのインタフェースから接続できるかどうか確認します。</para> + + <para>知っているパスがすべて駄目だった場合でも、 + システムには最後の手段として <quote>デフォルト</quote> + ルートがあります。このルートはゲートウェイルート + (普通はシステムに 1 つしかありません) の特別なものです。そして、 + フラグ欄には必ず <literal>c</literal> + が表示されています。このゲートウェイは、LAN + 内のホストにとって、どのマシンでも外部へ + (PPP リンク、DSL、ケーブルモデム、T1、 + またはその他のネットワークインタフェースのいずれかを経由して) + 直接接続するために設定されるものです。</para> - <para>外部に対するゲートウェイとして機能するマシンで - デフォルトルートを設定する場合、 + <para>外部に対するゲートウェイとして機能するマシンでデフォルトルートを設定する場合、 デフォルトルートはインターネットサービスプロバイダ (ISP) のサイトのゲートウェイマシンになるでしょう。</para> <para>それではデフォルトルートの一例を見てみましょう。 - 一般的な構成を示します。 </para> + 一般的な構成を示します。</para> -<literallayout> -[Local2] <--ether--> [Local1] <--PPP--> [ISP-Serv] <--ether--> [T1-GW] - </literallayout> +<literallayout>[Local2] <--ether--> [Local1] <--PPP--> [ISP-Serv] <--ether--> [T1-GW]</literallayout> <para>ホスト <hostid>Local1</hostid> とホスト <hostid>Local2</hostid> - を PPP で ISP のターミナルサーバと接続されているあなたの - サイトだとします。 - ISP はサイト内にロー カルなネットワークを持っていて、 - そこにはさまざまなものがあり、 - あなたの接続するサーバや ISP のインターネットへの - 接続点であるハードウェアデバイス (T1-GW) などがあります。</para> + はあなたのサイト内にあります。<hostid>Local1</hostid> + はダイアルアップ PPP 接続経由で ISP に接続されています。 + この PPP サーバコンピュータは、その ISP + のインターネットへの接続点に向けた外部インタフェースを備えた他のゲートウェイコンピュータへ + LAN を通じて接続しています。</para> - <para>あなたのマシンのデフォルトルートは - それぞれ次のようになります。</para> + <para>あなたのマシンのデフォルトルートはそれぞれ次のようになります。</para> <informaltable frame="none"> <tgroup cols="3"> <thead> <row> - <entry>host</entry> - <entry>default gateway</entry> - <entry>interface</entry> + <entry>ホスト</entry> + <entry>デフォルトゲートウェイ</entry> + <entry>インタフェース</entry> </row> </thead> @@ -251,7 +328,7 @@ host2.foobar.com link#1 UC <row> <entry>Local2</entry> <entry>Local1</entry> - <entry>ethernet</entry> + <entry>Ethernet</entry> </row> <row> @@ -263,195 +340,1335 @@ host2.foobar.com link#1 UC </tgroup> </informaltable> - <para><quote>なぜ (あるいは、 どうやって) Local1 の - デフォルトゲートウェイをISPのサーバでなく - T1-GWにセットするのか</quote> という質問がよくあります。</para> - - <para>コネクションのローカルの側については、 - PPPのインタフェースは - ISPのローカルネットワーク上のアドレスを用いているため、 - ISPのローカルネットワーク上のすべてのマシンへの経路は - 自動的に生成されています。 つまり、 あなたのマシンは、 - どのようにT1-GW - まで届くかという経路を既に知っていることになりますから、 - ISPサーバに媒介的なトラフィックをかける必要はありません。</para> - - <para>最後になりましたが、 一般的にローカルネットワークでは - <hostid role="ipaddr">...1</hostid> - というアドレスをゲートウェイアドレスとして使います。 ですから - (同じ例を用います)、 あなたのclass-Cのアドレス空間が - <hostid role="ipaddr">10.20.30</hostid>で ISPが - <hostid role="ipaddr">10.9.9</hostid>を用いている場合、 + <para><quote>なぜ (あるいは、どうやって) + デフォルトゲートウェイを、<hostid>Local1</hostid> が接続されている + ISP のサーバではなく、<hostid>T1-GW</hostid> に設定するのか</quote> + という質問がよくあります。</para> + + <para>PPP 接続で、あなたのサイト側の PPP インタフェースは、 + ISP のローカルネットワーク上のアドレスを用いているため、 + ISP のローカルネットワーク上のすべてのマシンへの経路は + 自動的に生成されています。 + つまりあなたのマシンは、どのようにして + <hostid>T1-GW</hostid> に到達するかという経路を既に知っていることになりますから、 + ISP サーバにトラフィックを送るのに、中間的な段階を踏む必要はありません。</para> + + <para>最後になりましたが、一般的にローカルネットワークでは + <hostid role="ipaddr">X.X.X.1</hostid> + というアドレスをゲートウェイアドレスとして使います。ですから + (同じ例を用います)、あなたの class-C のアドレス空間が + <hostid role="ipaddr">10.20.30</hostid> で ISP が + <hostid role="ipaddr">10.9.9</hostid> を用いている場合、 デフォルトルートは次のようになります。</para> - <literallayout> -Local2 (10.20.30.2) --> Local1 (10.20.30.1) -Local1 (10.20.30.1, 10.9.9.30) --> T1-GW (10.9.9.1) - </literallayout> + <informaltable frame="none"> + <tgroup cols="2"> + <thead> + <row> + <entry>ホスト</entry> + <entry>デフォルトルート</entry> + </row> + </thead> + <tbody> + <row> + <entry>Local2 (10.20.30.2)</entry> + <entry>Local1 (10.20.30.1)</entry> + </row> + <row> + <entry>Local1 (10.20.30.1, 10.9.9.30)</entry> + <entry>T1-GW (10.9.9.1)</entry> + </row> + </tbody> + </tgroup> + </informaltable> </sect2> <sect2> - <title>マルチホームホスト</title> - - <para>ここで扱うべき他のタイプの設定があります。 - それは2つの異なるネットワークにまたがるホストです。 - 技術的にはゲートウェイとして機能するマシン (上 の例では - PPPコネクションを用いています) はマルチホームホストで す。 - しかし実際にはこの言葉は、 - 2つのローカルエリアネットワーク上のサ - イトであるマシンを指す言葉としてのみ使われます。</para> - - <para>2枚のイーサネットカードを持つマシンが、 別のサブネット - 上にそれぞれアドレスを持っている場合があります。 あるいは、 - イーサネットカードを1枚持っているマシンで、 - ifconfigのエイリアスを使っているかもしれません。 - 物理的に分かれている2つのイーサネットのネットワークが使われて - いるならば前者が用いられます。 後者は、 物理的には1つのネットワ - ークセグメントで、 論理的には分かれている 2つのサブネットとする - 場合に用いられます。</para> + <title>デュアルホームホスト</title> + <indexterm><primary>デュアルホームホスト</primary></indexterm> + + <para>ここで扱うべき種類の設定がもう一つあります。 + それは 2 つの異なるネットワークにまたがるホストです。 + 技術的にはゲートウェイとして機能するマシン (上の例では + PPP コネクションを用いています) はすべてデュアルホームホストです。 + しかし実際にはこの言葉は、2 つの + LAN 上のサイトであるマシンを指す言葉としてのみ使われます。</para> + + <para>2 枚のイーサネットカードを持つマシンが、 + 別のサブネット上にそれぞれアドレスを持っている場合があります。 + あるいは、イーサネットカードが 1 枚しかないマシンで、 + &man.ifconfig.8; のエイリアスを使っているかもしれません。 + 物理的に分かれている 2 つのイーサネットのネットワークが使われているならば前者が用いられます。 + 後者は、物理的には 1 つのネットワークセグメントで、 + 論理的には 2 つのサブネットに分かれている場合に用いられます。</para> <para>どちらにしても、 - このマシンがお互いのサブネットへのゲートウェイ (inbound - route) として定義されていることが分かるように、 おのお - ののサブネットでルーティングテーブルを設定します。 このマシンが - 2 つのサブネットの間のブリッジとして動作するという構成は、 パケ - ットのフィルタリングを実装する必要がある場合や、 一方向または双 - 方向のファイアウォールを利用したセキュリティを構築する場合によ - く用いられます。</para> + このマシンがお互いのサブネットへのゲートウェイ (inbound route) + として定義されていることが分かるように、 + おのおののサブネットでルーティングテーブルを設定します。このマシンが + 2 つのサブネットの間のルータとして動作するという構成は、 + パケットのフィルタリングを実装する必要がある場合や、 + 一方向または双方向のファイアウォールを利用したセキュリティを構築する場合によく用いられます。</para> + + <para>このマシンが二つのインタフェース間で実際にパケットを受け渡すようにしたい場合は、 + FreeBSD でこの機能を有効にしないといけません。</para> + </sect2> + + <sect2 id="network-dedicated-router"> + <title>ルータの構築</title> + + <indexterm><primary>ルータ</primary></indexterm> + + <para>ネットワークルータは単にあるインタフェースから別のインタフェースへパケットを転送するシステムです。 + インターネット標準およびすぐれた技術的な慣習から、 + FreeBSD プロジェクトは + FreeBSD においてこの機能をデフォルトでは有効にしていません。 + &man.rc.conf.5; 内で次の変数を <literal>YES</literal> + に変更することでこの機能を有効にできます:</para> + + <programlisting>gateway_enable=YES # Set to YES if this host will be a gateway</programlisting> + + <para>このオプションは &man.sysctl.8; 変数の + <varname>net.inet.ip.forwarding</varname> を + <literal>1</literal> に設定します。 + 一時的にルーティングを停止する必要があるときには、 + この変数を一時的に <literal>0</literal> に設定しなおせます。</para> + + <para>次に、トラフィックの宛先を決めるために、 + そのルータには経路情報が必要になります。 + ネットワークが十分簡素なら、静的経路が利用できます。 + また、FreeBSD は BSD の標準ルーティングデーモンである + &man.routed.8; を備えています。これは RIP + (バージョン 1 および 2) および IRDP を扱えます。 + BGP バージョン 4、OSPF バージョン2、 + その他洗練されたルーティングプロトコルは + <filename role="package">net/zebra</filename> + package を用いれば対応できます。 + また、より複雑なネットワークルーティングソリューションには、 + gated のような商用製品も利用可能です。</para> + + <indexterm><primary>BGP</primary></indexterm> + <indexterm><primary>RIP</primary></indexterm> + <indexterm><primary>OSPF</primary></indexterm> + + <para>このように FreeBSD を設定したとしても、 + ルータに対するインターネット標準要求を完全に満たすわけではありません。 + しかし、通常利用に関しては十分といえます。</para> </sect2> <sect2> - <title>ルーティングの伝播</title> - - <para>すでに外部との経路をどのように定義したらよいかは - 説明しました。 - しかし外部から私たちのマシンをどのようにして - 見つけるのかについては説明していません。</para> + <title>ルーティングの伝搬</title> + <indexterm><primary>ルーティングの伝搬</primary></indexterm> + + <para>外部との経路をどのように定義したらよいかはすでに説明しました。 + しかし外部から私たちのマシンをどのようにして見つけるのかについては説明していません。</para> <para>ある特定のアドレス空間 (この例では class-C のサブネット) におけるすべてのトラフィックが、 - 到着したパケットを内部で転送するネ - ットワーク上の特定のホストに送られるようにルーティングテーブル - を設定することができるのは分かっています。</para> + 到着したパケットを内部で転送するネットワーク上の特定のホストに送られるようにルーティングテーブルを設定することができるのは分かっています。</para> <para>あなたのサイトにアドレス空間を割り当てる場合、 あなたのサブネットへのすべてのトラフィックがすべて - PPPリンクを通じてサイトに送 - ってくるようにサービスプロバイダはルーティングテーブルを設定し - ます。 しかし、 国境の向こう側のサイトはどのようにしてあなたの - ISPへ送ることを知るのでしょうか?</para> + PPP リンクを通じてサイトに送ってくるようにサービスプロバイダはルーティングテーブルを設定します。 + しかし、国境の向こう側のサイトはどのようにしてあなたの + ISP へ送ることを知るのでしょうか?</para> <para>割り当てられているすべてのアドレス空間の経路を維持する (分散している DNS 情報とよく似た) システムがあり、 - そのインターネット バックボーンへの接続点を定義しています。 + そのインターネットバックボーンへの接続点を定義しています。 <quote>バックボーン</quote> とは国を越え、 - 世界中のインターネットのトラフィックを運ぶ主要 - な信用できる幹線のことです。 どのバックボーンマシンも、 - あるネットワークから特定のバックボーンのマシンへ - 向かうトラフィックと、 - そのバックボーンのマシンからあなたのネットワークに届くサービス - プロバイダまでのチェーンのマスタテーブルのコピーを持っていま - す。</para> - - <para>あなたのサイトが接続(プロバイダからみて内側にある - ことになります) したということを、 プロバイダからバックボー - ンサイトへ通知することはプロバイダの仕事です。 これが経 - 路の伝搬です。</para> + 世界中のインターネットのトラフィックを運ぶ主要な信用できる幹線のことです。 + どのバックボーンマシンも、 + あるネットワークから特定のバックボーンのマシンへ向かうトラフィックと、 + そのバックボーンのマシンからあなたのネットワークに届くサービスプロバイダまでのチェーンのマスタテーブルのコピーを持っています。</para> + + <para>あなたのサイトが接続 + (プロバイダからみて内側にあることになります) したということを、 + プロバイダからバックボーンサイトへ通知することはプロバイダの仕事です。 + これが経路の伝搬です。</para> </sect2> <sect2> <title>トラブルシューティング</title> + <indexterm> + <primary><command>traceroute</command></primary> + </indexterm> + <para>経路の伝搬に問題が生じて、 + いくつかのサイトが接続をおこなうことができなくなることがあります。 + ルーティングがどこでおかしくなっているかを明らかにするのに最も有効なコマンドはおそらく + &man.traceroute.8; コマンドでしょう。 + このコマンドは、あなたがリモートマシンに対して接続をおこなうことができない + (たとえば &man.ping.8; に失敗するような) + 場合も、同じように有効です。</para> - <para>ルーティングの伝搬に問題が生じて、 いくつかのサイトが - 接続をおこなうことができなくなることがあります。 - ルーティングがどこでおかしくなっているかを明らかにするのに - 最も有効なコマンドはおそらく &man.traceroute.8; コマンドでしょ - う。 このコマンドは、 - あなたがリモートマシンに対して接続をおこなう - ことができない(例えば &man.ping.8; に失敗するような場合) - 場合も、 同じように有効です。</para> - - <para> &man.traceroute.8; コマンドは、 + <para>&man.traceroute.8; コマンドは、 接続を試みているリモートホストを引数にして実行します。 - 試みているパスの経由するゲートウェイホストを表示し、 + 試みている経路が経由するゲートウェイホストを表示し、 最終的には目的のホストにたどり着くか、 - コネクションの欠如によって終ってしまうかのどちら - かになります。</para> + コネクションの欠如によって終ってしまうかのどちらかになります。</para> - <para>より詳しい情報は、 &man.traceroute.8; + <para>より詳しい情報は、&man.traceroute.8; のマニュアルページをみてください。</para> </sect2> + + <sect2> + <title>マルチキャストルーティング</title> + <indexterm> + <primary>マルチキャスト</primary> + <secondary>options MROUTING</secondary> + </indexterm> + <para>FreeBSD はマルチキャストアプリケーションとマルチキャストルーティングの両方にネイティブ対応しています。 + マルチキャストアプリケーションを動かすのに FreeBSD + で特別な設定をする必要は一切ありません。 + アプリケーションは普通はそのままで動くでしょう。 + マルチキャストルーティングに対応するには、 + 下のオプションを追加してカーネルをコンパイルする必要があります。</para> + + <programlisting>options MROUTING</programlisting> + + <para>さらに、<filename>/etc/mrouted.conf</filename> + を編集してルーティングデーモン &man.mrouted.8; + を設定し、トンネルと DVMRP を設置する必要があります。 + マルチキャスト設定についての詳細は mrouted + のマニュアルを参照してください。</para> + </sect2> </sect1> - <sect1 id="bridging"> - <title>Bridging</title> + <sect1 id="network-wireless"> + <sect1info> + <authorgroup> + <author> + <firstname>Eric</firstname> + <surname>Anderson</surname> + <contrib>原作: </contrib> + </author> + </authorgroup> + </sect1info> + <title>無線ネットワーク</title> + + <indexterm><primary>無線ネットワーク</primary></indexterm> + <indexterm> + <primary>802.11</primary> + <see>無線ネットワーク</see> + </indexterm> + + <sect2> + <title>はじめに</title> + <para>常にネットワークケーブルをつないでいるという面倒なことをせずに、 + コンピュータを使用できることは、とても有用でしょう。 + FreeBSD は無線のクライアントとして、 + さらに<quote>アクセスポイント</quote>としても使えます。</para> + </sect2> + + <sect2> + <title>無線の動作モード</title> + <para>802.11 無線デバイスの設定には、BSS と IBSS + の二つの方法があります。</para> + + <sect3> + <title>BSS モード</title> + <para>BSS モードは一般的に使われているモードです。 + BSS モードはインフラストラクチャモードとも呼ばれています。 + このモードでは、 + 多くの無線アクセスポイントが + 1 つの有線ネットワークに接続されます。 + それぞれのワイヤレスネットワークは固有の名称を持っています。 + その名称はネットワークの SSID と呼ばれます。</para> + + <para>無線クライアントはこれらの無線アクセスポイントに接続します。 + IEEE 802.11 標準は無線ネットワークが接続するのに使用するプロトコルを規定しています。 + SSID が設定されているときは、 + 無線クライアントを特定のネットワークに結びつけることができます。 + SSID を明示的に指定しないことにより、 + 無線クライアントを任意のネットワークに接続することもできます。</para> + </sect3> + + <sect3> + <title>IBSS モード</title> + <para>アドホックモードとも呼ばれる IBSS モードは、 + 一対一通信のために設計された通信方式です。 + 実際には二種類のアドホックモードがあります。 + 一つは IBSS モードで、アドホックモード、または + IEEE アドホックモードとも呼ばれます。 + このモードは IEEE 802.11 標準に規定されています。 + もう一つはデモアドホックモードもしくは Lucent アドホックモード + (そして時々、紛らわしいことに、アドホックモード) + と呼ばれるモードです。 + このモードは古く、802.11 が標準化する以前のアドホックモードで、 + これは古い設備でのみ使用されるべきでしょう。 + ここでは、どちらのアドホックモードについてもこれ以上言及しません。</para> + </sect3> + </sect2> + + <sect2> + <title>インフラストラクチャーモード</title> + <sect3> + <title>アクセスポイント</title> + + <para>アクセスポイントは一つ以上の無線クライアントが、 + そのデバイスをセントラルハブとして利用できるようにする無線ネットワークデバイスです。 + アクセスポイントを使用している間、 + すべてのクライアントはアクセスポイントを介して通信します。 + 家屋や職場、または公園などの空間を無線ネットワークで完全にカバーするために、 + 複数のアクセスポイントがよく使われます。</para> + + <para>アクセスポイントは一般的に複数のネットワーク接続 + (無線カードと、 + その他のネットワークに接続するための一つ以上の有線イーサネットアダプタ) + を持っています。</para> + + <para>アクセスポイントは、出来合いのものを購入することもできますし、 + FreeBSD と対応している無線カードを組み合わせて、 + 自分で構築することもできます。 + いくつものメーカが、 + さまざまな機能をもった無線アクセスポイントおよび無線カードを製造しています。</para> + </sect3> + + <sect3> + <title>FreeBSD のアクセスポイントの構築</title> + <indexterm><primary>無線ネットワーク</primary> + <secondary>アクセスポイント</secondary> + </indexterm> + + <sect4><title>要件</title> + + <para>FreeBSD で無線アクセスポイントを設定するためには、 + 互換性のある無線カードが必要です。 + 現状では Prism チップセットのカードのみに対応しています。 + また FreeBSD + に対応している有線ネットワークカードも必要になるでしょう + (これを見つけるのは難しくないでしょう。 + FreeBSD は多くの異なるデバイスに対応しているからです) 。 + この手引きでは、 + 無線デバイスと有線ネットワークカードに接続しているネットワーク間のトラフィックを + &man.bridge.4; したいと仮定します。</para> + + <para>FreeBSD がアクセスポイントを実装するのに使用する hostap + 機能はファームウェアの特定のバージョンで一番よく性能を発揮します。 + Prism 2 カードは、 + 1.3.4 以降のバージョンのファームウェアで使用すべきです。 + Prism 2.5 および Prism 3 カードでは、バージョン 1.4.9 + のバージョンのファームウェアで使用すべきです。 + それより古いバージョンのファームウェアは、 + 正常に動くかもしれませんし、動かないかもしれません。 + 現時点では、カードのファームウェアを更新する唯一の方法は、 + カードの製造元から入手できる &windows; + 用ファームウェアアップデートユーティリティを使うものです。</para> + </sect4> + + <sect4> + <title>設定</title> + <para>はじめにシステムが無線カードを認識していることを確認してください。</para> + <screen>&prompt.root; <userinput>ifconfig -a</userinput> +wi0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 + inet6 fe80::202:2dff:fe2d:c938%wi0 prefixlen 64 scopeid 0x7 + inet 0.0.0.0 netmask 0xff000000 broadcast 255.255.255.255 + ether 00:09:2d:2d:c9:50 + media: IEEE 802.11 Wireless Ethernet autoselect (DS/2Mbps) + status: no carrier + ssid "" + stationname "FreeBSD Wireless node" + channel 10 authmode OPEN powersavemode OFF powersavesleep 100 + wepmode OFF weptxkey 1</screen> + + <para>細かいことは気にせず、 + 無線カードがインストールされていることを示す何かが表示されていることを確かめてください。 + PC カードを使用していて、無線インタフェースを認識できない場合、 + 詳しい情報を得るために &man.pccardc.8; と &man.pccardd.8; + のマニュアルページを調べてみてください。</para> + + <para>次に、アクセスポイント用に + FreeBSD のブリッジ機能を担う部分を有効にするために、 + モジュールを読み込む必要があるでしょう。 + &man.bridge.4; モジュールを読み込むには、 + 次のコマンドをそのまま実行します。</para> + + <screen>&prompt.root; <userinput>kldload bridge</userinput></screen> + + <para>モジュールを読み込む時には、何もエラーはでないはずです。 + もしもエラーがでたら、カーネルに &man.bridge.4; + のコードを入れてコンパイルする必要があるかもしれません。 + ハンドブックの<link + linkend="network-bridging">ブリッジ</link>の節が、 + この課題を成し遂げる手助けをになるかもしれません。</para> + + <para>ブリッジ部分が準備できたので、 + どのインタフェース間をブリッジするのかを + FreeBSD カーネルに指定する必要があります。 + これは、&man.sysctl.8; を使って行います。</para> + + <screen>&prompt.root; <userinput>sysctl net.link.ether.bridge=1</userinput> +&prompt.root; <userinput>sysctl net.link.ether.bridge_cfg="wi0 xl0"</userinput> +&prompt.root; <userinput>sysctl net.inet.ip.forwarding=1</userinput></screen> + + <para>さて、無線カードを設定するときです。</para> + <para>次のコマンドはカードをアクセスポイントとして設定します。</para> + + <screen> +&prompt.root; <userinput>ifconfig wi0 ssid my_net channel 11 media DS/11Mbps mediaopt hostap up stationname "FreeBSD AP"</userinput></screen> + + <para>この &man.ifconfig.8; コマンド行は + <devicename>wi0</devicename> インタフェースを up + 状態にし、SSID を <literal>my_net</literal> に設定し、 + ステーション名を <literal>FreeBSD AP</literal> に設定します。 + <option>media DS/11Mbps</option> オプションはカードを 11Mbps + モードに設定し、また <option>mediaopt</option> + を実際に有効にするのに必要です。 + <option>mediaopt hostap</option> + オプションはインタフェースをアクセスポイントモードにします。 + <option>channel 11</option> オプションは使用するチャネルを + 802.11b に設定します。 + 各規制地域 (regulatory domain) で有効なチャネル番号は + &man.wicontrol.8; マニュアルに載っています。</para> + + <para>さて、 + これで完全に機能するアクセスポイントが立ち上がり、動作しています。 + より詳しい情報については、&man.wicontrol.8;, &man.ifconfig.8; + および &man.wi.4; のマニュアルを読むとよいでしょう。 + </para> + + <para>また、下記の暗号化に関する節を読むこともおすすめします。</para> + </sect4> + + <sect4> + <title>ステータス情報</title> + <para>一度アクセスポイントが設定されて稼働すると、 + 管理者はアクセスポイントを利用しているクライアントを見たいと思うでしょう。 + いつでも管理者は以下のコマンドを実行できます。</para> + + <screen>&prompt.root; <userinput>wicontrol -l</userinput> +1 station: +00:09:b7:7b:9d:16 asid=04c0, flags=3<ASSOC,AUTH>, caps=1<ESS>, rates=f<1M,2M,5.5M,11M>, sig=38/15</screen> + + <para>これは一つの局が、 + 表示されているパラメータで接続していることを示します。 + 表示された信号は、 + 相対的な強さを表示しているだけのものとして扱われるべきです。 + dBm やその他の単位への変換結果は、 + 異なるファームウェアバージョン間で異なります。</para> + </sect4> + </sect3> + + <sect3> + <title>クライアント</title> + + <para>無線クライアントはアクセスポイント、 + または他のクライアントに直接アクセスするシステムです。</para> + + <para>典型的には、 + 無線クライアントが有しているネットワークデバイスは、 + 無線ネットワークカード 1 枚だけです。</para> + + <para>無線クライアントを設定するにはいくつか方法があります。 + それぞれは異なる無線モードに依存していますが、 + 一般的には BSS + (アクセスポイントを必要とするインフラストラクチャーモード) か、 + IBSS (アドホック、またはピアツーピアモード) のどちらかです。 + ここでは、アクセスポイントと通信をするのに、 *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210061413.q96EDLHk078057>