Handbook:Parts/Networking/Modular/ja

ネットワークモジュール
現在の netifrc スクリプトはモジュール化されたネットワークスクリプトをサポートしています. つまり、既存のスクリプトとの互換性を保ちつつ、新しいインターフェースタイプのサポートと設定モジュールを簡単に追加することができます.

モジュールは、それらが必要とするパッケージがインストールされていれば、デフォルトでロードされます. 必要なパッケージがインストールされていないモジュールを指定した場合、インストールする必要のあるパッケージを示すエラーが報告されます. 理想的には、同様のサービスを提供する 2 個以上のパッケージがインストールされていて、そのうち一方を選択したい場合にのみ、モジュール設定が使用されます.

インターフェース・ハンドラー
現在のところ、私たちは 2 種類のインターフェースハンドラを提供しています: ifconfig と iproute2 です. 一方のみがあれば、すべてのネットワーク設定を行うことができます.

どちらもシステムプロファイルの一部として、デフォルトでインストールされます. iproute2 のほうが強力で、柔軟な設定が行えるパッケージです.

ifconfig と iproute2 は非常に似たことを行うものなので、基本的な設定はどちらに対しても動作するようになっています. 例えば、下のコード片はどちらのモジュールを使用しているかにかかわらず動作します.

DHCP
DHCP は、DHCP サーバからネットワーク情報 (IP アドレス、DNS サーバ、ゲートウェイ等) を取得するための方法です. つまり、ネットワーク上に動作している DHCP サーバが存在すれば、ユーザはそれぞれのクライアントに DHCP を使うことを指示するだけで、ネットワークを自動でセットアップするとができます. もちろん、無線や PPP 等が必要であれば、DHCP が使えるようになる前に設定する必要があるでしょう.

DHCP の機能は dhclient、dhcpcd、または pump によって提供されます. DHCP モジュールのそれぞれに長所と短所があります. 以下に概略を示します:

複数の DHCP クライアントがインストールされている場合はどれを使うか指定してください. 指定しない場合、利用可能であれば dhcpcd がデフォルトとして選択されます.

DHCP モジュールに特定のオプションを送信するには、 を使用してください (module の部分を使用したい DHCP モジュールに変更してください、例えば dhcpcd_eth0 のように).

私たちは DHCP を比較的特定のソフトウェアに依存しないようにしています. dhcp_eth0 変数を使用した次のコマンドをサポートしています. デフォルトではこれらはどれも設定されません:


 * : IP アドレスが再利用できるように解放します.
 * : を上書きしません.
 * : を上書きしません.
 * : を上書きしません.

PPPoE/PPPoA を使用した ADSL
まずは ADSL ソフトウェアのインストールが必要です:

次に、PPP net スクリプトと、PPP が使用する Ethernet インターフェースのための net スクリプトを作成してください:

で rc_depend_strict を  に設定しているか確認してください.

そして を設定することが必要です.

また、 内にパスワードを記載することもできます.

PPPoE を USB モデムとともに使用する場合は、br2684ctl を emerge しているか確認してください. 適切に設定する方法についての情報は をお読みください.

APIPA (Automatic Private IP Addressing)
APIPA は、インターフェースから 169.254.0.0-169.254.255.255 の範囲内のランダムなアドレスを arp することで、範囲内の使用されていないアドレスを探します. 応答が無かった場合、そのアドレスをインターフェースに割り当てます.

これは DHCP サーバが無く、システムがインターネットに直接接続せず、他のすべてのコンピュータが APIPA を使う LAN に対してのみ有用です.

APIPA サポートを追加するには、 USE フラグを有効化して  を emerge するか、 を emerge してください.

ボンディング
ボンディングは、ネットワーク帯域を増やすためや、ハードウェア故障時の回復力を改善するために使用されます. システムに同一のネットワークに接続する 2 個のネットワークカードが存在するとき、管理者はこれらをくっつけて (bond)、アプリケーションには 1 個のインターフェースとして見せつつ、実際には両方のネットワークカードを使用させることができます.

ボンディングを構成する方法は複数あります. そのうちの一部、例えば 802.3ad LACP モードなどは、専用のサポートやネットワークスイッチの追加の構成が必要になります. それぞれの選択肢のリファレンスについては、 のローカルコピーを参照してください.

まず、ボンディングに参加するインターフェースの設定をクリアしてください:

次に、インターフェース間のボンディングを定義してください:

ランレベルから net.eth* サービスを削除し、net.bond0 サービスを作成して、これを適切なランレベルに追加してください.

ブリッジ (802.1d サポート)
ブリッジはネットワークを相互接続するのに使用されます. 例えば、システムが ADSL モデム経由でインターネットに接続するサーバと、他のコンピュータがその ADSL モデム経由でインターネットに接続できるようにするための、無線アクセスカードを持っているとします. ブリッジを作成することで、2 個のインターフェースを相互接続することができます.

MAC アドレス
ネットワーク設定ファイルを通して、インターフェースの MAC アドレスを変更することもできます.

トンネリング
トンネリングは、インターフェースハンドラによって行うことができるので、ソフトウェアを追加でインストールする必要はありません.

VLAN (802.1q サポート)
VLAN のサポートのためには、 がインストールされていることと、ifconfig ではなく iproute2 が構成モジュールとして使用されていることを確認してください.

仮想 LAN とは、物理的な実態に関わらず、それぞれ個別のネットワークセグメントに接続されているかのように振る舞うネットワークデバイス群です. VLAN のメンバは、仮に同一の物理ネットワークを共有していたとしても、同一の VLAN の参加ノードとのみ通信できます.

VLAN を構成するには、まず次のように で VLAN 番号を指定してください:

次に、各 VLAN に対するインターフェースを構成してください:

VLAN 固有の設定は次のように、vconfig によって処理されます: