第20章 ネットワークの基礎

目次

20.1. IPアドレスとルーティング
20.2. IPv6 —次世代のインターネット
20.3. ネームレゾリューション
20.4. YaSTによるネットワーク接続の設定
20.5. NetworkManager
20.6. ネットワークの手動環境設定
20.7. ダイアルアップアシスタントとしてのsmpppd

概要

Linuxには、あらゆるタイプのネットワークストラクチャに統合するために必要なネットワークツールと機能が用意されています。ネットワークカード、モデム、その他のデバイスを使用したネットワークアクセスは、YaSTで設定できます。手動による環境設定も可能です。この章では、基本的メカニズムと関連のネットワーク設定ファイルのみを解説します。

Linuxおよび他のUnix系オペレーティングシステムは、TCP/IPプロトコルを使用します。これは1つのネットワークプロトコルではなく、さまざまなサービスを提供する複数のネットワークプロトコルのファミリです。TCP/IPを使用して2台のコンピュータ間でデータをやり取りするために、表20.1「TCP/IPプロトコルファミリーを構成する主要なプロトコル」に示した各プロトコルが提供されています。TCP/IPによって結合された世界規模のネットワークをインターネットと呼びます。

RFCは、Request for Commentsの略です。RFCは、さまざまなインターネットプロトコルとそれをオペレーティングシステムとそのアプリケーションに実装する手順を定めています。RFC文書ではインターネットプロトコルのセットアップについて説明しています。プロトコルについての知識を習得するには、適切なRFC文書を参照してください。これらは、http://www.ietf.org/rfc.htmlから入手できます。

表20.1 TCP/IPプロトコルファミリーを構成する主要なプロトコル

プロトコル

説明

TCP

TCP(Transmission Control Protocol): 接続指向型の安全なプロトコルです。転送データは、まず、アプリケーションによってデータストリームとして送信され、オペレーティングシステム.によって適切なフォーマットに変換されます。データは、送信当初のデータストリーム形式で、宛先ホストのアプリケーションに着信します。TCPは転送中に損失したデータや順序が正しくないデータがないか、判定します。データの順序が意味を持つ場合は常にTCP/IPが実装されます。

UDP

UDP(User Datagram Protocol): コネクションレスで安全でないプロトコルです。転送されるデータは、アプリケーションで生成されたパケットの形で送信されます。データが受信側に到着する順序は保証されず、データの損失の可能性があります。UDPはレコード指向のアプリケーションに適しています。TCPよりも遅延時間が小さいことが特徴です。

ICMP

ICMP (Internet Control Message Protocol):基本的にはエンドユーザ向けのプロトコルではありませんが、エラーレポートを発行し、TCP/IPデータ転送にかかわるマシンの動作を制御できる特別な制御プロトコルです。またICMPには特別なエコーモードがあります。エコーモードは、pingで使用されています。

IGMP

IGMP (Internet Group Management Protocol):このプロトコルは、IPマルチキャストを実装した場合のコンピュータの動作を制御します。


に示したように、データのやり取りはさまざまなレイヤで実行されます。図20.1「TCP/IPの簡易レイヤモデル」実際のネットワークレイヤは、IP (インターネットプロトコル)によって実現される確実性のないデータ転送です。IPの上で動作するTCP (転送制御プロトコル)によって、ある程度の確実性のあるデータ転送が保証されます。IPレイヤの下層には、イーサネットなどのハードウェア依存プロトコルがあります。

図20.1 TCP/IPの簡易レイヤモデル

TCP/IPの簡易レイヤモデル

図では、各レイヤに対応する例を1つまたは2つ示しています。レイヤは抽象化レベルに従って並べられています。最下位レイヤは最もハードウェアに近い部分です。一方、最上位レイヤは、ハードウェアがまったく見えないほぼ完全な抽象化になります。各レイヤにはそれぞれの固有の機能があります。各レイヤ固有の機能は、上記の主要プロトコルの説明を読めば大体わかります。データリンクレイヤと物理レイヤは、使用される物理ネットワーク (たとえばイーサネット) を表します。

ほとんどすべてのハードウェアプロトコルは、パケット単位で動作します。転送されるデータは、パケットにまとめられます(一度に全部を送信できません)。TCP/IPパケットの最大サイズは約64KBです。パケットサイズは通常、かなり小さな値になります。これは、ネットワークハードウェアでサポートされているパケットサイズに制限があるからです。イーサネットの最大パケットサイズは、約1500バイトです。イーサネット上に送出されるTCP/IPパケットは、このサイズに制限されます。転送するデータ量が大きくなると、それだけ多くのパケットがオペレーティングシステムによって送信されます。

すべてのレイヤがそれぞれの機能を果たすためには、各レイヤに対応する情報を各データパケットに追加する必要があります。この情報はパケットのヘッダとして追加されます。各レイヤでは、プロトコルヘッダと呼ばれる小さなデータブロックが、作成されたパケットに付加されます。図20.2「TCP/IPイーサネットパケット」に、イーサネットケーブル上に送出されるTCP/IPデータパケットの例を示します。誤り検出のためのチェックサムは、パケットの先頭ではなく最後に付加されます。これによりネットワークハードウェアの処理が簡素化されます。

図20.2 TCP/IPイーサネットパケット

TCP/IPイーサネットパケット

アプリケーションがデータをネットワーク経由で送信すると、データは各レイヤを通過します。これらのレイヤは、物理レイヤを除き、すべてLinuxカーネルに実装されています。各レイヤは、隣接する下位レイヤに渡せるようにデータを処理します。最下位レイヤは、最終的にデータを送信する責任を負います。データを受信したときには、この手順全体が逆の順序で実行されます。重なり合ったたまねぎの皮のように、各レイヤで伝送データからプロトコルヘッダが除去されていきます。最後に、トランスポートレイヤが、着信側のアプリケーションがデータを利用できるように処理します。この方法では、1つのレイヤが直接やり取りを行うのは隣接する上下のレイヤのみです。データが伝送される物理的なネットワークは、 100MBit/sのFDDIかもしれませんし、 56Kbit/sのモデム回線かもしれませんが、アプリケーションがその違いを意識することはありません。同様に、物理ネットワークは、パケットの形式さえ正しければよく、伝送されるデータの種類を意識することはありません。

20.1. IPアドレスとルーティング

ここでは、IPv4ネットワークについてのみ説明しています。IPv4の後継バージョンであるIPv6については、20.2項 「IPv6 —次世代のインターネット」を参照してください。

20.1.1. IPアドレス

インターネット上のすべてのコンピュータは、固有の32ビットアドレスを持っています。この32ビット(4バイト)は、通常、例20.1「IPアドレスの表記」の2行目に示すような形式で表記されます。

例20.1 IPアドレスの表記

IP Address (binary):  11000000 10101000 00000000 00010100
IP Address (decimal):      192.     168.       0.      20

10進表記では、4つの各バイトが10進数で表記され、ピリオドで区切られます。IPアドレスは、ホストまたはネットワークインタフェースに割り当てられます。使用できるのは1回のみです。このルールには例外もありますが、次の説明には直接関係していません。

IPアドレスにあるピリオドは、階層構造を表しています。1990年代まで、IPアドレスは、各クラスに固定的に分類されていました。しかし、このシステムがあまりに柔軟性に乏しいことがわかったので、今日、そのような分類は行われていません。現在採用されているのは、クラスレスルーティング(CIDR: classless inter domain routing)です。

20.1.2. ネットマスクとルーティング

ネットマスクは、サブネットワークのアドレス範囲を定義するために用いられます。2台のホストが同じサブネットワークに存在する場合、相互に直接アクセスできます。同じサブネットワークにない場合は、サブネットワークのすべてのトラフィックを処理するゲートウェイのアドレスが必要です。2つのIPアドレスが同じサブネットワークに属しているかどうかを確認するには、両方のアドレスとネットマスクのANDを求めます。結果が同一であれば、両方のIPアドレスは同じローカルネットワークに属しています。相違があれば、それらのIPアドレス、そしてそれらに対応するインタフェースが連絡するには、ゲートウェイを通過する必要があります。

ネットマスクの役割を理解するには、例20.2「IPアドレスとネットマスクの論理積(AND)」を参照してください。ネットマスクは、そのネットワークにいくつのIPアドレスが属しているかを示す、32ビットの値から成っています。1になっているビットは、IPアドレスのうち、特定のネットワークに属することを示すビットに対応します。0になっているビットは、サブネットワーク内での識別に使われるビットに対応します。これは、1になっているビット数が多いほど、サブネットワークが小さいことを意味します。ネットマスクは常に連続する1のビットから構成されているので、その数だけでネットマスクを指定することができます。例20.2「IPアドレスとネットマスクの論理積(AND)」の、24ビットからなる第1のネットワークは、192.168.0.0/24と書くこともできます。

例20.2 IPアドレスとネットマスクの論理積(AND)

IP address (192.168.0.20):  11000000 10101000 00000000 00010100
Netmask   (255.255.255.0):  11111111 11111111 11111111 00000000
---------------------------------------------------------------
Result of the link:         11000000 10101000 00000000 00000000
In the decimal system:           192.     168.       0.       0

IP address (213.95.15.200): 11010101 10111111 00001111 11001000
Netmask    (255.255.255.0): 11111111 11111111 11111111 00000000
---------------------------------------------------------------
Result of the link:         11010101 10111111 00001111 00000000
In the decimal system:           213.      95.      15.       0

また、たとえば同じイーサネットケーブルに接続しているすべてのマシンは、普通同じサブネットに属し、直接アクセスできます。サブネットがスイッチまたはブリッジで物理的に分割されていても、これらのホストは直接アクセス可能です。

ローカルサブネットの外部のIPアドレスには、ターゲットネットワーク用のゲートウェイが設定されている場合にのみ、連絡できます。最も一般的には、外部からのすべてのトラフィックを扱うゲートウェイを1台だけ設置します。ただし、異なるサブネット用に、複数のゲートウェイを設定することも可能です。

ゲートウェイを設定すると、外部からのすべてのIPパケットは適切なゲートウェイに送信されます。このゲートウェイは、パケットを複数のホストを経由して転送し、それは最終的に宛先ホストに到着します。ただし、途中でTTL (time to live)に達した場合は破棄されます。

表20.2 特殊なアドレス

アドレスのタイプ

説明

基本ネットワークアドレス

ネットマスクとネットワーク内の任意のアドレスの論理積をとったもの。例20.2「IPアドレスとネットマスクの論理積(AND)」のANDをとった結果を参照。このアドレスは、どのホストにも割り当てることができません。

ブロードキャストアドレス

ブロードキャストアドレスは、基本的にはサブネットワーク内のすべてのホストにアクセスする」ためのアドレスです。このアドレスを生成するには、2進数形式のネットマスクを反転させ、基本ネットワークアドレスと論理和をとります。そのため上記の例では、192.168.0.255になります。このアドレスをホストに割り当てることはできません。

ローカルホスト

アドレス127.0.0.1は、各ホストのループバックデバイスに割り当てられます。このアドレスと、IPv4で定義された完全な127.0.0.0/8ループバックネットワークからのすべてのアドレスで、自分のマシンへの接続を設定できます。IPv6では、ループバックアドレスは1つだけです(::1)。


IPアドレスは、世界中で固有でなければならないので、自分勝手にアドレスを選択して使うことはできません。IPベースのプライベートネットワークをセットアップする場合のために、3つのアドレスドメインが用意されています。これらは、外部のインターネットに直接接続することはできません。インターネット上で転送されることがないからです。このようなアドレスドメインは、RFC  1597で、表20.3「プライベートIPアドレスドメイン」に示すとおりに定められています。

表20.3 プライベートIPアドレスドメイン

ネットワーク/ネットマスク

ドメイン

10.0.0.0/255.0.0.0

10.x.x.x

172.16.0.0/255.240.0.0

172.16.x.x172.31.x.x

192.168.0.0/255.255.0.0

192.168.x.x


20.2. IPv6 —次世代のインターネット

WWW (ワールドワイドウェブ)の出現により、ここ10年間でTCP/IP経由で通信を行うコンピュータの数が増大し、インターネットは爆発的に拡大しました。CERN (http://public.web.cern.ch)のTim Berners-Leeが1990年にWWWを発明して以来、インターネットホストは、数千から約1億まで増加しました。

前述のように、IPv4のアドレスはわずか32ビットで構成されています。しかも、多くのIPアドレスが失われています。というのは、ネットワークの編成方法のせいで、使われないIPアドレスが無駄に割り当てられてしまうからです。サブネットで利用できるアドレスの数は、(2のビット数乗- 2)で与えられます。たとえば、1つのサブネットワークでは、2、6、または14個のアドレスが使用可能です。たとえば128台のホストをインターネットに接続するには、256個のIPアドレスを持つサブネットワークが必要ですが、そのうち2つのIPアドレスは、サブネットワーク自体を構成するのに必要なブロードキャストアドレスと基本ネットワークアドレスになるので、実際に使用できるのは254個だけです。

現在のIPv4プロトコルでは、アドレスの不足を避けるために、DHCPとNAT (ネットワークアドレス変換)の2つのメカニズムが使用されています。これらの方法をパブリックアドレスとプライベートアドレスを分離するという慣習と組み合わせて使用することで、確かにアドレス不足の問題を緩和することができます。問題は、セットアップが面倒で保守しにくいその環境設定方法にあります。IPv4ネットワークでホストをセットアップするには、ホスト自体のIPアドレス、サブネットマスク、ゲートウェイアドレス、そして場合によってはネームサーバアドレスなど、相当数のアドレス項目が必要になります。管理者は、これらをすべて自分で設定しなければなりません。これらのアドレスをどこかから取得することはできません。

IPv6では、アドレス不足と複雑な環境設定方法はもはや過去のものです。ここでは、IPv6がもたらした進歩と恩恵について説明し、古いプロトコルから新しいプロトコルへの移行について述べます。

20.2.1. 長所

この新しいプロトコルがもたらした最大かつ最もわかりやすい進歩は、利用可能なアドレス空間の飛躍的な増加です。IPv6アドレスは、従来の32ビットではなく、128ビットで構成されています。これにより、2の128乗、つまり、約3.4×1038個のIPアドレスが得られます。

しかしながら、IPv6アドレスがその先行プロトコルと異なるのはアドレス長だけではありません。IPv6アドレスは内部構造も異なっており、それが属するシステムやネットワークに関してより具体的な情報を有しています。詳細については、20.2.2項 「アドレスのタイプと構造」を参照してください。

以下に、この新しいプロトコルの利点をいくつか紹介します。

自動環境設定機能

IPv6を使用すると、ネットワークがプラグアンドプレイ対応になります。つまり、新しくシステムをセットアップすると、手動で環境設定しなくても、(ローカル)ネットワークに統合されます。新しいホストは自動環境設定メカニズムを使用して、ネイバーディスカバリ (ND)と呼ばれるプロトコルにより、近隣のルータから得られる情報を元に自身のアドレスを生成します。この方法は、管理者の介入が不要なだけでなく、サアドレス割り当てを1台のサーバで一元的に管理する必要もありません。これもIPv4より優れている点の1つです。IPv4では、自動アドレス割り当てを行うために、DHCPサーバを実行する必要があります。

それでもルータがスイッチに接続されていれば、ルータは、ネットワークのホストに相互に通信する方法を通知するフラグ付きのアドバタイズを定期的に送信します。詳細は、RFC 2462およびradvd.conf(5)のマニュアルページ、RFC 3315を参照してください。

モバイル性

IPv6を使用すると、複数のアドレスを1つのネットワークインタフェースに同時に割り当てることができます。これにより、ユーザは複数ネットワークに簡単にアクセスできます。このことは、携帯電話会社が提供する国際ローミングサービスにたとえられます。携帯電話を海外に持って行った場合、現地会社のサービス提供エリアに入ると自動的に携帯電話はそのサービスにログインし、同じ番号で普段と同じように電話をかけることができます。

安全な通信

IPv4では、ネットワークセキュリティは追加機能です。IPv6にはIPSecが中核的機能の1つとして含まれているので、システムが安全なトンネル経由で通信でき、インターネット上での部外者による通信傍受を防止します。

後方互換性

現実的に考えて、インターネット全体を一気にIPv4からIPv6に切り替えるのは不可能です。したがって、両方のプロトコルが、インターネット上だけでなく1つのシステム上でも共存できることが不可欠です。これは、一方ではアドレスの互換性によって(IPv4アドレスは容易にIPv6アドレスに変換できます)、他方ではトンネルの使用によって保証されています。参照先 20.2.3項 「IPv4とIPv6の共存」. また、システムはデュアルスタックIPテクニックによって、両方のプロトコルを同時にサポートできるので、2つのプロトコルバージョン間に相互干渉のない、完全に分離された2つのネットワークスタックが作成されます。

マルチキャストによるサービスの詳細なカスタマイズ

IPv4では、いくつかのサービス(SMBなど)が、ローカルネットワークのすべてのホストにパケットをブロードキャストする必要があります。IPv6では、これよりはるかにきめ細かいアプローチが取られ、サーバがマルチキャストという、複数のホストをグループの一部として扱う技術によって、ホストにデータを送信します(これは、すべてのホストにデータを送信するブロードキャストとも、各ホストに個別に送信するユニキャストとも異なります)。どのホストを対象グループに含めるかは、個々のアプリケーションによって異なります。事前定義のグループには、たとえば、すべてのネームサーバを対象とするグループ(全ネームサーバマルチキャストグループ)やすべてのルータを対象とするグループ(全ルータマルチキャストグループ)があります。

20.2.2. アドレスのタイプと構造

これまでに述べたように、現在のIPプロトコルには、IPアドレス数が急激に不足し始めているということと、ネットワーク設定とルーティングテーブルの管理がより複雑で煩雑な作業になっているという、2つの重要な問題があります。IPv6では、1つ目の問題を、アドレス空間を拡張することによって解決しています。2番目の問題には、階層的なアドレス構造を導入し、ネットワークアドレスを割り当てる高度なテクニックとマルチホーミング (1つのデバイスに複数のアドレスを割り当てることによって、複数のネットワークへのアクセスを可能にします)を組み合わせて対応しています。

IPv6を扱う場合は、次の3種類のアドレスについて知っておくと役に立ちます。

ユニキャスト

このタイプのアドレスは、1つのネットワークインタフェースだけに関連付けられます。このようなアドレスを持つパケットは、1つの宛先にのみ配信されます。したがって、ユニキャストアドレスは、パケットをローカルネットワークまたはインターネット上の個々のホストに転送する場合に使用します。

マルチキャスト

このタイプのアドレスは、ネットワークインタフェースのグループに関連します。このようなアドレスを持つパケットは、そのグループに属するすべての宛先に配信されます。マルチキャストアドレスは、主に、特定のネットワークサービスが、相手を特定のグループに属するホストに絞って通信を行う場合に使用されます。

エニーキャスト

このタCプのアドレスは、インタフェースのグループに関連します。このようなアドレスを持つパケットは、基盤となるルーティングプロトコルの原則に従い、送信側に最も近いグループのメンバに配信されます。エニーキャストアドレスは、特定のネットワーク領域で特定のサービスを提供するサーバについて、ホストが情報を得られるようにするために使用します。同じタイプのすべてのサーバは、エニキャストアドレスが同じになります。ホストがサービスを要求すると、ルーティングプロトコルによって最も近い場所にあるサーバが判断され、そのサーバが応答します。何らかの理由でこのサーバが応答できない場合、プロトコルが自動的に2番目のサーバを選択し、それが失敗した場合は3番目、4番目が選択されます。

IPv6アドレスは、4桁の英数字が入った8つのフィールドで構成され、それぞれのフィールドが16進数表記の16ビットを表します。各フィールドは、コロン(:)で区切られます。各フィールドで先頭の0は省略できますが、数字の間にある0や末尾の0は省略できません。もう1つの規則として、0のバイトが5つ以上連続する場合は、まとめて2つのコロン(::)で表すことができます。ただし、アドレスごとに::は1回しか使用できません。この省略表記の例については、例20.3「IPv6アドレスの例」を参照してください。この3行はすべて同じアドレスを表します。

例20.3 IPv6アドレスの例

fe80 : 0000 : 0000 : 0000 : 0000 : 10 : 1000 : 1a4
fe80 :    0 :    0 :    0 :    0 : 10 : 1000 : 1a4
fe80 :                           : 10 : 1000 : 1a4

IPv6アドレスの各部の機能は個別に定められています。最初の4バイトはプレフィクスを形成し、アドレスのタイプを指定します。中間部分はアドレスのネットワーク部分ですが、使用しなくてもかまいません。アドレスの最後の4桁はホスト部分です。IPv6でのネットマスクは、アドレスの末尾のスラッシュの後にプレフィクスの長さを指定して定義します。に示すアドレスには、最初の 64ビットがアドレスのネットワーク部分を構成する情報、最後の 64ビットにホスト部分を構成する情報が入っています。例20.4「プレフィクスの長さを指定したIPv6アドレス」言い換えると、64は、ネットマスクに 64個の 1ビット値が左から埋められていることを意味します。IPv4と同様、IPアドレスとネットマスクのANDをとることにより、ホストが同じサブネットワークにあるかそうでないかを判定します。

例20.4 プレフィクスの長さを指定したIPv6アドレス

fe80::10:1000:1a4/64

IPv6は、事前に定義された複数タイプのプレフィクスを認識します。に、一部のプレフィクスタイプを示します。表20.4「IPv6のプレフィクス」

表20.4 IPv6のプレフィクス

プレフィクス(16進)

定義

00

IPv4アドレスおよびIPv4 over IPv6互換性アドレス。これらは、IPv4との互換性を保つために使用します。これらを使用した場合でも、IPv6パケットをIPv4パケットに変換ナきるルータが必要です。いくつかの特殊なアドレス(たとえばループバックデバイスのアドレス)もこのプレフィクスを持ちます。

先頭桁が2または3

集約可能なグローバルユニキャストアドレス。IPv4と同様、インタフェースを割り当てて特定のサブネットワークの一部を構成することができます。現在、2001::/16 (実稼動品質のアドレス空間)と2002::/16 (6to4アドレス空間)の2つのアドレス空間があります。

fe80::/10

リンクローカルアドレス。このプレフィクスを持つアドレスは、ルーティングしてはなりません。したがって、同じサブネットワーク内からのみ到達可能です。

fec0::/10

サイトローカルアドレス。ルーティングはできますが、それが属する組織のネットワーク内に限られます。要するに、IPv6版のプライベートネットワークアドレス空間です(たとえば、10.x.x.x)。

ff

マルチキャストアドレス。


ユニキャストアドレスは、以下の3つの基本構成要素からなります。

パブリックトポロジ

最初の部分(前述のいずれかのプレフィクスが含まれる部分)は、パブリックインターネット内でパケットをルーティングするために使用します。ここには、インターネットアクセスを提供する企業または団体に関する情報が入っています。

サイトトポロジ

2番目の部分には、パケットの配信先のサブネットワークに関するルーティング情報が入っています。

インタフェースID

3番目の部分は、パケットの配信先のインタフェースを示します。これを使用して、MACをアドレスの一部に含めることができます。MACは、世界中で重複がない固定の識別子であり、ハードウェアメーカによってデバイスにコーディングされるので、環境設定手順が大幅に簡素化されます。実際には、最初の 64アドレスビットが統合されてEUI-64トークンを構成します。このうち、最後の 48ビットにはMACアドレス、残りの 24ビットにはトークンタイプに関する特別な情報が入ります。これにより、PPPやISDNのインタフェースのようにMACを持たないインタフェースにEUI-64トークンを割り当てられるようになります。

IPv6は、この基本構造の上で、以下の5種類のユニキャストアドレスを区別します。

:: (未指定)

このアドレスは、インタフェースが初めて初期化されるとき、すなわち、アドレスが他の方法で判定できないときに、ホストがそのソースアドレスとして使用します。

::1 (ループバック)

ループバックデバイスのアドレス。

IPv4互換アドレス

IPv6アドレスが、IPv4アドレスおよび96個の0ビットからなるプレフィクスで作成されます。このタイプの互換アドレスは、IPv4とIPv6のホストが、純粋なIPv4環境で動作している他のホストと通信するためのトンネリング(20.2.3項 「IPv4とIPv6の共存」を参照)として使用されます。

IPv6にマッピングされたIPv4アドレス

このタイプのアドレスは、IPv6表記で純粋なIPv4アドレスを指定します。

ローカルアドレス

ローカルで使用するアドレスのタイプには、以下の2種類があります。

リンクローカル

リンクローカル このタイプのアドレスは、ローカルのサブネットワークでのみ使用できます。このタイプの送信元または宛先アドレスを持つパケットをインターネットまたは他のサブネットワークにルーティングしてはなりません。これらのアドレスは、特別なプレフィクス(fe80::/10)とネットワークカードのインタフェースID、およびヌルバイトからなる中間部分からなります。このタイプのアドレスは、自動環境設定のとき、同じサブネットワークに属する他のホストと通信するために使用されます。

サイトローカル

このタイプのアドレスを持つパケットは、他のサブネットワークにはルーティングできますが、それより広いインターネットにはルーティングしてはなりません。つまり、組織自体のネットワークの内側だけで使用するように制限する必要があります。このようなアドレスはイントラネット用に使用され、IPv4によって定義されているプライベートアドレス空間に相当します。これらのアドレスは、特殊なプレフィクス(fec0::/10)とインタフェースID、およびサブネットワークIDを指定する16ビットのフィールドからなります。

IPv6では、各ネットワークインタフェースが複数のIPアドレスを持つことができるというたまったく新しい機能が導入されました。これにより、同じインタフェースで複数のネットワークにアクセスできます。これらのネットワークは、MACと既知のプレフィクスを使用して完全に自動設定できるので、IPv6を有効にすると すぐに、(リンクローカルアドレスを使用して)ローカルネットワーク上のすべてのホストに接続できるようになります。IPアドレスにMACが組み込まれているので、使用されるIPアドレスは世界中で唯一のアドレスになります。アドレスの唯一の可変部分は、ホストが現在動作している実際のネットワークによって、サイトトポロジパブリックトポロジを指定する部分になります。

複数のネットワークに接続するホストの場合、少なくとも2つのアドレスが必要です。1つはホームアドレスです。ホームアドレスには、インタフェースIDだけでなく、それが通常属するホームネットワークの識別子(および対応するプレフィクス)も含まれています。ホームアドレスは静的アドレスなので、通常は変更されません。しかし、モバイルホスト宛てのパケットは、それがホームネットワーク内にあるかどうかにかかわらず、すべてそのホストに配信できます。これは、IPv6で導入されたステートレス自動環境設定ネイバーディスカバリのようなまったく新しい機能によって実現されました。モバイルホストは、ホームアドレスに加え、ローミング先の外部ネットワークに属するアドレスも取得します。これらはケアオブアドレスと呼ばれます。ホームネットワークには、ホストが対象エリア外をローミングしている間、そのホスト宛てのすべてのパケットを転送する機能があります。IPv6環境において、このタスクは、ホームエージェントによって実行されます。ホームエージェントは、ホームアドレスに届くすべてのパケットを取得してトンネルに リレーします。一方、ケアオブアドレスに届いたパケットは、特別迂回することなく、直接モバイルホストに転送されます。

20.2.3. IPv4とIPv6の共存

インターネットに接続されている全ホストをIPv4からIPv6に移行する作業は、段階的に行われます。両方のプロトコルは今後しばらく共存することになります。両方のプロトコルをデュアルスタックで実装すれば、同じシステム上に共存することが保証されます。しかし、それでもなお、IPv6対応のホストがどのようにしてIPv4ホストと通信するか、また多くがIPv4ベースの現行ネットワークでIPv6パケットをどのように伝送するかなど、解決すべき問題が残ります。最善のソリューションは、トンネリングと互換アドレスです(20.2.2項 「アドレスのタイプと構造」を参照)。

ワールドワイドなIPv4ネットワークと隔離されているIPv6ホストは、トンネルを使って通信を行うことができます。IPv6パケットをIPv4パケットにカプセル化すれば、それをIPv4ネットワークに送ることができます。2つのIPv4ホスト間のこのような接続をトンネルと呼びます。これを行うには、パケットにIPv6の宛先アドレス(または対応するプレフィクス)とともに、トンネルの受信側にあるリモートホストのIPv4アドレスも含める必要があります。基本的なトンネルは、ホストの管理者間が合意すれば、手動で設定が可能です。これは、静的トンネリングとも呼ばれます。

ただし、静的トンネルの環境設定とメンテナンスは、あまりに手間がかかるので、多くの場合、日常の通信には向きません。そこで、IPv6は、動的トンネリングを実現する3つの異なる方法を提供しています。

6over4

IPv6パケットが自動的にIPv4パケットとしてカプセル化され、マルチキャスト対応のIPv4ネットワークによって送信されます。IPv6は、ネットワーク全体(インターネット)を巨大なLAN (local area network)だと思い込んで動作することになります。これにより、IPv4トンネルの着信側の端を自動的に判定できます。ただし、この方法は拡張性に欠けているだけではなく、IPマルチキャストがインターネット上で広く普及しているとはいえないという事実も障害となります。したがってこの解決方法を採用できるのは、マルチキャストが利用できる小規模な企業内ネットワークだけです。この方式の仕様は、RFC 2529に規定されています。

6to4

この方式では、IPv6アドレスからIPv4アドレスを自動的に生成することで、隔離されたIPv6ホストがIPv4ネットワーク経由で通信できるようにします。しかし、隔離されたIPv6ホストとインターネットの間の通信に関して、多くの問題が報告されています。この方式は、RFC 3056で規定されています。

IPv6トンネルブローカ

この方式は、IPv6ホスト専用のトンネルを提供する特殊なサーバに依存します。この方式は、RFC 3053で規定されています。

20.2.4. IPv6の設定

IPv6を設定するには、通常、個々のワークステーションの設定を変更する必要はありません。IPv6は、デフォルトで有効になっています。インストール時にネットワーク設定ステップで、これを無効にすることができます。「Network Configuration」 (第3章 Installation with YaST, ↑導入ガイド)を参照してください。インストール済みシステムでIPv6を有効または無効にするには、YaSTの[Network Settings]モジュールを使用します。[グローバルオプション]タブで、必要に応じて[IPv6を有効にする]オプションをオン/オフします。次回のリブートまで一時的に有効にするには、modprobe -i ipv6rootとして入力します。ipv6モジュールがロードされた後にアンロードすることは、基本的に不可能です。

IPv6の自動環境設定の概念があるため、ネットワークカードには、リンクローカルネットワーク内のアドレスが割り当てられます。通常、ワークステーション上ではルーティングテーブルの管理を実行しません。ワークステーションは、ルータアドバタイズプロトコルを使用して、実装する必要のあるプレフィクスとゲートウェイをネットワークルータに問い合わせます。IPv6ルータは、radvdプログラムを使用して設定できます。このプログラムは、IPv6アドレスに使用するプレフィクスとルータをワークステーションに通知します。または、zebra/quaggaを使用してアドレスとルーティングの両方を自動設定することもできます。

/etc/sysconfig/networkファイルを使用して各種のトンネルを設定する方法については、ifcfg-tunnel (5)のマニュアルページを参照してください。

20.2.5. 詳細情報

ここでの概要は、IPv6に関する情報を網羅しているわけではありません。IPv6の詳細については、次のオンラインドキュメントや書籍を参照してください。

http://www.ipv6.org/

IPv6のあらゆる情報にここからリンクできます。

http://www.ipv6day.org

独自のIPv6ネットワークを開始するには、すべての情報が必要です。

http://www.ipv6-to-standard.org/

IPv6対応製品のリスト。

http://www.bieringer.de/linux/IPv6/

Linux IPv6-HOWTOと多くの関連トピックへのリンクが用意されています。

RFC2640

IPv6に関する基本的なRFCです。

IPv6 Essentials

Silvia HagenによるIPv6 Essentials (ISBN 0-596-00125-8)は、このトピックに関するあらゆる重要な面を扱っている本です。

20.3. ネームレゾリューション

DNSはIPアドレスに1つまたは複数のホスト名を割り当てるとともに、ホスト名をIPアドレスに割り当てます。Linuxでは、この変換は通常、bindという特別な種類のソフトウェアによって行われます。また、この変換を行うマシンをネームサーバと呼びます。ホスト名は、その名前構成要素がピリオド(.)で区切られた階層システムを構成しています。しかしながら名前の階層構造は、先に述べたIPアドレスの階層構造とは無関係です。

hostname.domain形式で書かれた完全な名前(たとえば、jupiter.example.com)について検討してみましょう。完全修飾ドメイン名(FQDN:fully qualified domain name)と呼ばれるフルネームは、ホスト名とドメイン名(example.com)で構成されます。ドメイン名には最上位ドメイン(TLD) (de)が含まれます。

TLDの割り当ては、これまでの経緯もあって、非常に複雑になっています。従来から、米国では、3文字のドメイン名が使用されています。他の国では、ISOで制定された2文字の国コードが標準です。これに加えて、2000年には、特定の活動領域を表す、より長いTLDが導入されました(たとえば、.info.name.museum)。

インターネットの初期( 1990年より前)には、ファイル/etc/hostsに、インターネットで利用されるすべてのマシン名を記述していました。しかし、インターネットに接続されるコンピュータ数の急激な増加により、この方法はすぐに現実的でなくなりました。このため、ホスト名を広く分散して保存するための分散データベースが開発されました。このデータベースは、ネームサーバと同様、インターネット上のすべてのホストに関するデータがいつでも用意されているわけではなく、他のネームサーバに問い合わせを行います。

この階層の最上位には、複数のルートネームサーバがあります。ルートネームサーバは、Network Information Center (NIC)によって運用されており、最上位レベルドメインを管理します。各ルートネームサーバは、特定の最上位ドメインを管理するネームサーバについての情報を持っています。最上位ドメインNICの詳細については、http://www.internic.netを参照してください。

DNSには、ホスト名の解決以外の機能もあります。ネームサーバには、特定のドメイン宛の電子メールをどのホストに転送するかも管理しています(メールエクスチェンジャ(MX))。

マシンがIPアドレスを解決するには、少なくとも1台のネームサーバとそのIPアドレスを知っている必要があります。YaSTを使用すれば、このようなネームサーバを簡単に指定できます。モデムを使ったダイアルアップ接続の場合は、ネームサーバを手動で設定する必要はありません。接続が設定されるときに、ダイアルアッププロトコルによってネームサーバのアドレスが提供されるからです。

whoisプロトコルは、DNSと密接な関係があります。このプログラムを使用すると、特定のドメインの登録者名をすぐに検索できます。

[Note]MDNSおよび.localドメイン名

.localトップレベルドメインは、リゾルバではリンクローカルドメインとして処理されます。DNS要求は通常のDNS要求ではなく、マルチキャスト要求として送信されます。ネームサーバ構成で.localドメインをすでに使用している場合は、このオプションを/etc/host.confでオフに変更する必要があります。詳細については、host.confのマニュアルページを参照してください。

インストール中にMDNSをオフにするには、nomdns=1をブートパラメータとして使用してください。

マルチキャストDNSの詳細は、http://www.multicastdns.orgを参照してください。

20.4. YaSTによるネットワーク接続の設定

Linuxでは多くのタイプのネットワーク接続がサポートされています。その多くは、異なるデバイス名と、ファイルシステム内の複数の場所に分散した設定ファイルを使用しています。手動によるネットワーク設定のさまざまな面についての詳細は、20.6項 「ネットワークの手動環境設定」を参照してください。

NetworkManagerがデフォルトでアクティブなSUSE Linux Enterprise Desktop上では、すべてのネットワークカードが設定されます。NetworkManagerがアクティブでない場合は、リンクアップしている(つまり、ネットワークケーブルが接続している)最初のインタフェースだけが自動的に設定されます。インストール済みのシステムには、付加的なハードウェアを設定することができます。以下のセクションでは、SUSE Linux Enterprise Desktopがサポートするすべてのタイプのネットワーク接続について、その設定方法を説明します。

20.4.1. YaSTでのネットワークカードの設定

YaSTで無線/有線ネットワークカードを設定するには、[ネットワークデバイス]+[ネットワーク設定]の順に選択します。モジュールの開始後に、YaSTはネットワーク設定ダイアログを表示します。ダイアログには[グローバルオプション][概要][ホスト名/DNS]、およびルーティング]の4つのタブがあります。

[グローバルオプション]タブでは、NetworkManager、IPv6、一般的なDHCPオプションの使用など、一般的なネットワークオプションを設定できます。詳細については、20.4.1.1項 「グローバルネットワークオプションの設定」を参照してください。

[概要]タブには、インストールされたネットワークインタフェースと環境設定に関する情報が含まれています。正しく検出されたネットワークカードの名前が表示されます。このダイアログでは、手動で新しいカードを設定し、それらの設定内容を削除または変更できます。自動検出されなかったカードを手動で設定する場合は、20.4.1.3項 「検出されないネットワークカードの設定」を参照してください。すでに設定済みのカードの設定を変更する場合については、20.4.1.2項 「ネットワークカードの設定の変更」を参照してください。

[ホスト名/DNS]タブでは、マシンのホスト名を設定し、使用サーバに名前を付けることができます。詳細については、20.4.1.4項 「ホスト名とDNSの設定」を参照してください。

[ルーティング]タブは、ルーティングの設定で使用します。詳細については、20.4.1.5項 「ルーティングの設定」を参照してください。

図20.3 ネットワーク設定の実行

ネットワーク設定の実行

20.4.1.1. グローバルネットワークオプションの設定

YaSTネットワーク設定モジュールの[グローバルオプション]タブを使用して、NetworkManager、IPv6およびDHCPのクライアントオプションの使用など、重要なグローバルネットワークオプションを設定できます。この設定は、すべてのネットワークインタフェースに適用されます。

[ネットワークのセットアップ方法]では、ネットワーク接続を管理する方法を選択します。NetworkManagerデスクトップアプレットですべてのインタフェースの接続を管理する場合は、[NetworkManagerでユーザを制御]を選択します。このオプションは、複数の有線ネットワークおよび無線ネットワーク間の切り替えに適しています。デスクトップ環境(GNOMEまたはKDE)を実行しない場合、またはコンピュータがXenサーバ(仮想システム)であるか、ネットワーク内でDHCPやDNSなどのネットワークサービスを提供する場合は、[ifupを使用した従来の方法]を使用します。NetworkManagerを使用する場合は、nm-appletを使用して、ネットワークオプションを設定する必要があります。[ネットワーク設定]モジュールのタブである[概要][ホスト名/DNS]、および[ルーティング]は無効になります。NetworkManagerの詳細については、第23章 NetworkManagerの使用を参照してください。

IPv6プロトコル設定で、IPv6プロトコルを使用するかどうかを選択します。IPv4とともにIPv6を使用できます。デフォルトでは、IPv6が選択されています。ただし、IPv6プロトコルを使用しないネットワークでは、IPv6プロトコルを無効にした方が応答時間がより短くなる場合があります。IPv6を無効にする場合は、[IPv6を有効にする]オプションをオフにします。これにより、IPv6のカーネルモジュールの自動ロードが無効になります。これは、再起動後に適用されます。

[DHCPクライアントオプション]では、DHCPクライアントのオプションを設定します。常にその応答をブロードキャストするようにサーバに要求することをDHCPクライアントに求める場合は、[ブロードキャスト応答の要求]をオンにします。この機能は、マシンが異なるネットワーク間を移動する場合に必要になることがあります。DHCPクライアントIDは、単一ネットワーク上の各DHCPクライアントで異なる必要があります。空白のままにした場合は、デフォルトでネットワークインタフェースのハードウェアアドレスになります。ただし、同じネットワークインタフェース、したがって同じハードウェアアドレスを使用して複数の仮想マシンを実行している場合は、ここで自由形式の固有識別子を指定します。

[送信するホスト名]では、dhcpcdがDHCPサーバにメッセージを送信するときに、ホスト名オプションフィールドで使用される文字列を指定します。一部のDHCPサーバでは、このホスト名(ダイナミックDNS)に応じて、ネームサーバゾーン(順レコードおよび逆レコード)を更新します。また一部のDHCPサーバでは、クライアントからのDHCPメッセージで、[送信するホスト名]オプションフィールドに特定の文字列が含まれることが必要です。現在のホスト名(/etc/HOSTNAMEで定義されたホスト名)を送信する場合は、[自動]のままにします。ホスト名を送信しない場合は、このオプションフィールドを空のままにします。DHCPからの情報に従ったデフォルトのルートを変更しない場合は、[Change Default Route via DHCP]をオフにします。

20.4.1.2. ネットワークカードの設定の変更

ネットワークカードの設定を変更するには、YaSTのネットワーク設定+概要で検出されたカードのリストから目的のカードを選択し、編集をクリックします。[ネットワークカードの設定]ダイアログが表示されます。このダイアログの[一般][アドレス]、および[ハードウェア]タブを使用してカードの設定を変更します。無線カードの設定については、17.5項 「YaSTでの設定」を参照してください。

20.4.1.2.1. IPアドレスの設定

[Network Card Setup]ダイアログの[アドレス]タブで、ネットワークカードのIPアドレス、またはそのIPアドレスの決定方法を設定できます。IPv4およびIPv6の両アドレスがサポートされます。ネットワークカードは、[IPアドレスなし](ボンドデバイスで有用)の場合や、[静的に割り当てられたIPアドレス](IPv4またはIPv6)、あるいはDHCPまたはZeroconfのいずれかまたは両方を経由して割り当てられる[動的アドレス]を持つ場合もあります。

[Dynamic Address]を使用する場合は、[DHCP Version 4 Only](IPv4の場合)、[DHCP Version 6 Only](IPv6の場合)、または[DHCP Both Version 4 and 6]のいずれを使用するかを選択します。

可能であれば、インストール時に利用可能なリンクを持つ最初のネットワークカードがDHCPによる自動アドレス設定を使用するように自動的に設定されます。NetworkManagerがデフォルトでアクティブなSUSE Linux Enterprise Desktop上では、すべてのネットワークカードが設定されます。

DSL回線を使用していてISP(Internet Service Provider)からスタティックIPが割り当てられていない場合も、DHCPを使用する必要があります。DHCPを使用することを選択する場合は、YaSTネットワークカード設定モジュールの[ネットワーク設定]ダイアログにある[グローバルオプション]タブの[DHCPクライアントオプション]で詳細を設定します。常にその応答をブロードキャストするようにサーバにDHCPクライアントが要求するかどうかを[ブロードキャスト応答の要求]で指定します。このオプションは、マシンがネットワーク間を移動するモバイルクライアントである場合に必要になることがあります。さまざまなホストが同じインタフェースを介して通信するようにバーチャルホストがセットアップされている場合は、各ホストの識別に[DHCPクライアントID]が必要になります。

DHCPは、クライアント設定には適していますが、サーバ設定には適していません。静的なIPアドレスを設定するには、以下の手順に従ってください。

  1. YaSTネットワークカード設定モジュールの[概要]タブの検出されたカード一覧から目的のカードを選択し、[編集]をクリックします。

  2. [アドレス]タブで、[Statically Assigned IP Address]を選択します。

  3. IPアドレスを入力します。IPv4およびIPv6の両アドレスを使用できます。[サブネットマスク]にネットワークマスクを入力します。IPv6アドレスが使用されている場合は、フォーマット/64のプレフィックス長に対する[サブネットマスク]を使用します。

    オプションで、このアドレスの完全修飾[ホスト名]を入力できます。このホスト名は、/etc/hosts設定ファイルに書き込まれます。

  4. [次へ]をクリックします。

  5. 環境設定を有効にするには、[OK]をクリックします。

静的アドレスを使用する場合、ネームサーバとデフォルトゲートウェイは、自動的には設定されません。ネームサーバを設定するには、20.4.1.4項 「ホスト名とDNSの設定」に従って手順を進めます。ゲートウェイを設定するには、20.4.1.5項 「ルーティングの設定」に従って手順を進めます。

20.4.1.2.2. エイリアスの設定

1台のネットワークデバイスに、複数のIPアドレスを割り当てることをできます。追加するIPアドレスは、エイリアスと呼ばれます。

[Note]エイリアスは互換機能です

これらのいわゆるエイリアスresp. labelsは、IPv4でのみ動作します。IPv6では、無視されます。iproute2ネットワークインタフェースを使用する場合、1つ以上のアドレスを持つことができます。

YaSTを使用してネットワークカードにエイリアスを設定するには、次の手順に従います。

  1. YaSTネットワークカード設定モジュールの[概要]タブの検出されたカード一覧から目的のカードを選択し、[編集]をクリックします。

  2. アドレス+追加アドレスタブで、追加をクリックします。

  3. [エイリアス名][IPアドレス]、および[ネットマスク]に適切な値を入力します。エイリアス名にはインタフェースを含めないでください。

  4. [OK]をクリックします。

  5. [Next]をクリックします。

  6. 環境設定を有効にするには、[OK]をクリックします。

20.4.1.2.3. デバイス名およびUdevルールの変更

ネットワークカードのデバイス名が使用されている場合、ネットワークカードのデバイス名を変更できます。また、ハードウェア(MAC)アドレスまたはバスIDを介してudevによりネットワークカードを識別するかどうかを選択できます。大型のサーバでは、カードのホットスワッピングを容易にするために後者のオプションが適しています。YaSTを使ってこうしたオプションを設定するには、次の手順に従います。

  1. YaSTネットワーク設定モジュールの[概要]タブの検出されたカード一覧から目的のカードを選択し、[編集]をクリックします。

  2. [ハードウェア]タブを開きます。現在のデバイス名がUdevルールに表示されます。[変更]をクリックします。

  3. udevで[MACアドレス]または[バスID]によりカードを識別するかどうかを選択します。カードの現在のMACアドレスおよびバスIDがダイアログに表示されます。

  4. デバイス名を変更するには、[Change Device Name]オプションをオンにし、名前を編集します。

  5. [OK]および[次へ]をクリックします。

  6. 環境設定を有効にするには、[OK]をクリックします。

20.4.1.2.4. ネットワークカードカーネルドライバの変更

一部のネットワークカードには、複数のカーネルドライバを使用できます。カードがすでに設定されている場合は、YaSTで利用可能で適切なドライバのリストから、使用するカーネルドライバを選択できます。また、カーネルドライバのオプションを指定することもできます。YaSTを使ってこうしたオプションを設定するには、次の手順に従います。

  1. YaSTネットワークカード設定モジュールの[概要]タブの検出されたカード一覧から目的のカードを選択し、[編集]をクリックします。

  2. [ハードウェア]タブを開きます。

  3. [モジュール名]で、使用するカーネルドライバを選択します。選択したドライバのオプションを、[オプション]option=valueの形式で入力します。他にもオプションを使用する場合は、スペースで区切る必要があります。

  4. [OK]および[次へ]をクリックします。

  5. 環境設定を有効にするには、[OK]をクリックします。

20.4.1.2.5. ネットワークデバイスの有効化

ifupを使った従来の方法を使用している場合、デバイスをブート時、ケーブル接続時、カード検出時、または手動で起動するように設定したり、起動しないように設定することができます。デバイスの起動方法を変更するには、以下の手順に従ってください。

  1. YaSTで、ネットワークデバイス+ネットワーク設定で検出されたカードの一覧からカードを選択し、編集をクリックします。

  2. [一般]タブの[デバイスの起動]から、適切な項目を選択します。

    システムブート中にデバイスを起動するには、[ブート時]を選択します。[ケーブル接続時]では、インタフェースで物理接続が存在するかどうかが監視されます。[ホットプラグ時]では、インタフェースは可能な限り早急に設定されます。これは、[ブート時]オプションに似ていますが、インタフェースがブート時に存在しない場合にエラーが発生しない点のみが異なります。ifupでインタフェースを手動で制御する場合は、[手動]を選択します。デバイスを全く起動しない場合は、[起動しない]を選択します。[NFSrootオン][ブート時]に似ていますが、インタフェースはrcnetwork stopコマンドではシャットダウンしません。このオプションは、nfsまたはiscsiのルートファイルシステムを使用する場合に選択します。

  3. [次へ]をクリックします。

  4. 環境設定を有効にするには、[OK]をクリックします。

通常、システム管理者のみがネットワークインタフェースを有効および無効にできます。KInternetを利用して誰でもこのインタフェースを有効化できるようにしたい場合は、[Kinternetを利用して root以外のユーザにもデバイス操作を許す]を選択します。

20.4.1.2.6. 最大転送単位サイズの設定

インタフェースの最大転送単位(MTU)を設定できます。MTUでは、最大許容パケットサイズ(バイト)を参照します。MTUが大きいと、帯域幅の効率が高くなります。ただし、パケットが大きくなると、低速なインタフェースの処理がしばらく阻止され、以降のパケットの遅延が増加する場合があります。

  1. YaSTで、ネットワークデバイス+ネットワーク設定で検出されたカードの一覧からカードを選択し、編集をクリックします。

  2. [一般]タブの[Set MTU]リストから、適切な項目を選択します。

  3. [次へ]をクリックします。

  4. 環境設定を有効にするには、[OK]をクリックします。

20.4.1.2.7. ファイアウォールの設定

「Configuring the Firewall with YaST」 (第15章 Masquerading and Firewalls, ↑Security Guide (セキュリティガイド))で説明しているような詳細なファイアウォール設定を行わずに、デバイスに基本的なファイアウォールを設定することができます。次の手順に従います。

  1. YaST[ネットワークデバイス]+[ネットワーク設定]モジュールを開きます。[概要]タブで、検出されたカードの一覧からカードを選択し、[編集]をクリックします。

  2. [ネットワーク設定]ダイアログの[一般]タブを表示します。

  3. インタフェースを割り当てるファイアウォールゾーンを指定します。次のオプションを指定できます。

    Firewall Disabled

    このオプションは、ファイアウォールが無効であり、ファイアウォールがまったく実行しない場合にのみ利用可能です。コンピュータが、外部ファイアウォールにより保護されている、より規模の大きいネットワークに接続している場合にのみ、このオプションを使用してください。

    自動割り当てゾーン

    このオプションは、ファイアウォールが有効になっている場合のみ、利用できます。ファイアウォールが実行中であり、インタフェースがファイアウォールゾーンに自動的に割り当てられます。こうしたインタフェースには、anyキーワードを含むゾーンまたは外部ゾーンが使用されます。

    内部ゾーン(未保護)

    ファイアウォールを実行しますが、このインタフェースを保護するルールは使いません。コンピュータが、外部ファイアウォールにより保護されている、より規模の大きいネットワークに接続している場合に、このオプションを使用してください。また、マシンに追加ネットワークインタフェースが存在する場合、内部ネットワークに接続するインタフェースで使用できます。

    非武装地帯(DMZ)

    非武装地帯ゾーンは、内部ネットワークと(悪意のある)インターネットとの中間にあたるゾーンです。このゾーンに割り当てられたホストは、内部ネットワークおよびインターネットからアクセスされますが、ホストから内部ネットワークにアクセスすることはできません。

    外部ゾーン

    このインタフェースでファイアウォールを実行し、(危険な可能性のある)他のネットワークトラフィックからインタフェースを保護します。これはデフォルトの設定です。

  4. [次へ]をクリックします。

  5. 環境設定を有効にするには、[OK]をクリックします。

20.4.1.3. 検出されないネットワークカードの設定

カードは適切に検出されない場合があります。このような場合、検出されたカードのリストに、そのカードは表示されません。システムにそのカード用のドライバが間違いなく含まれている場合は、そのようなカードを手動で設定することができます。特殊なネットワークデバイスタイプ(ブリッジ、ボンド、TUN、TAPなど)も設定できます。未検出のネットワークカードまたは特殊なデバイスを設定するには、次の手順に従います。

  1. YaSTのネットワークデバイス+ネットワーク設定+概要ダイアログで追加をクリックします。

  2. [ハードウェア]ダイアログで、使用可能なオプションからインタフェースの[デバイスの型][環境設定名]を設定します。ネットワークカードが、PCMCIAデバイスかUSBデバイスの場合、それぞれのチェックボックスを選択して、[次へ]をクリックしダイアログを終了します。それ以外の方法では、必要に応じて、カードとその[オプション]で使用されるカーネルの[モジュール名]を定義できます。

    [Ethtoolオプション]では、インタフェースのifupにより使用されるethtoolオプションを設定できます。使用可能なオプションについては、ethtoolマニュアルページを参照してください。オプション文字列が - で始まる場合(たとえば-K interface_name rx on)、文字列内の2番目の単語が現在のインタフェースの名前に置換されます。それ以外の場合(たとえばautoneg off speed 10)、-s interface_nameの前にifupが追加されます。

  3. [次へ]をクリックします。

  4. [一般][アドレス]、および[ハードウェア]タブで、インタフェースのIPアドレス、デバイス起動方法、ファイアウォールゾーンなどの必要なオプションを設定します。環境設定オプションの詳細については、20.4.1.2項 「ネットワークカードの設定の変更」を参照してください。

  5. インタフェースのデバイスタイプとして、[ワイヤレス]を選択した場合は、次のダイアログで無線接続の設定を行います。無線デバイスの設定方法の詳細は、第17章 無線LANを参照してください。

  6. [次へ]をクリックします。

  7. ネットワーク設定を有効にするには、[OK]をクリックします。

20.4.1.4. ホスト名とDNSの設定

有線ネットワークカードがすでに利用できる状態で、インストール時にネットワーク設定を変更しなかった場合、コンピュータのホスト名が自動的に生成され、DHCPが有効になります。また、ホストがネットワークに参加するために必要なネームサービス情報も自動的に生成されます。ネットワークアドレス設定にDHCPを使用している場合は、ドメインネームサーバのリストは自動的に記入されます。静的設定を利用する場合は、これらの項目を手動で設定してください。

コンピュータ名を変更し、ネームサーバの検索リストを修正するには、以下の手順に従ってください。

  1. YaST内のネットワークデバイスモジュールのネットワーク設定+ホスト名/DNSタブに移動します。

  2. [ホスト名]にホスト名を入力し、必要に応じて[ドメイン名]にドメイン名を入力します。マシンがメールサーバである場合、ドメインは特に重要です。ホスト名はグローバルであり、すべての設定ネットワークインタフェースに適用されることに注意してください。

    IPアドレスを取得するためにDHCPを使用している場合、DHCPによりコンピュータのホスト名が自動的に設定されます。異なるネットワークに接続する場合は、異なるホスト名が割り当てられることがあり、ランタイムにホスト名が変更されるとグラフィックデスクトップが混同される可能性があるので、この機能を無効にした方が良い場合もあります。DHCPを使用したIPアドレスの取得を無効にするには、[DHCPでホスト名を変更する]をオフにします。

    [ホスト名をループバックIPに割り当てる]では、ホスト名を/etc/hosts内の127.0.0.2(loopback)IPアドレスに関連付けます。アクティブネットワークが存在しないときでも常に解決可能なホスト名を必要とする場合に有用なオプションです。

  3. [Modify DNS Configuration]では、DNS設定(ネームサーバ、検索リスト、/etc/resolv.confファイルの内容)を変更する方法を選択します。

    [Use Default Policy]オプションを選択した場合、(DHCPクライアントまたはNetworkManagerから)動的に取得されたデータと、(YaSTまたは設定ファイルで)静的に定義されたデータをマージするnetconfigスクリプトにより設定が処理されます。ほとんどの場合、デフォルトのポリシーで十分です。

    [手動でのみ]オプションを選択した場合、netconfigでは/etc/resolv.confファイルを変更できません。ただし、このファイルは手動で編集できます。

    [Custom Policy]オプションを選択した場合、マージポリシーを定義する[Custom Policy Rule]文字列を指定する必要があります。この文字列は、設定の有効なソースとみなされるインタフェース名のカンマで区切られたリストから構成されます。完全なインタフェース名を除いて、複数のインタフェースに一致する基本的なワイルドカードを使用することもできます。たとえばeth* ppp?は、先頭がethであり、以降にppp0-ppp9を含むすべてのインタフェースが対象になります。/etc/sysconfig/network/configファイルで定義された静的な設定を適用する方法を示す次の2つの特別なポリシー値が存在します。

    STATIC

    静的な設定は、動的な設定とマージされる必要があります。

    STATIC_FALLBACK

    静的な設定は、動的設定が利用できない場合のみ使用されます。

    詳細については、man 8 netconfigを参照してください。

  4. [ネームサーバ]および[ドメイン検索]リストに入力します。ネームサーバは、ホスト名ではなく、192.168.1.116などのIPアドレスにより指定する必要があります。[ドメイン検索]タブで指定した名前は、ドメインが指定されていないホスト名の解決のために使用されるドメイン名です。複数の[ドメイン検索]を使用する場合は、カンマまたは空白でドメインを区切ります。

  5. 環境設定を有効にするには、[OK]をクリックします。

20.4.1.5. ルーティングの設定

コンピュータを他のコンピュータやネットワークと通信させるには、ネットワークトラフィックが正しい経路を通過するように、ルーティング情報を設定する必要があります。DHCPを使用している場合、この情報は自動的に設定されます。静的アドレスを使用する場合は、このデータを手作業で追加する必要があります。

  1. YaSTで、[ネットワーク設定]+[ルーティング]の順に移動します。

  2. [デフォルトゲートウェイ]のIPアドレス(必要に応じてIPv4およびIPv6)を入力します。デフォルトゲートウェイは、すべての宛先に一致しますが、必要なアドレスに一致する他のエントリが存在する場合は、デフォルトルートの代わりにそのエントリが使用されます。

  3. [ルーティングテーブル]には、さらに追加エントリを入力できます。[宛先]のネットワークIPアドレス、[ゲートウェイ]のIPアドレス、および[ネットマスク]を入力します。定義されたネットワークにトラフィックがルーティングされる[デバイス]を選択します(マイナス記号はデバイスを表わします)。このいずれかの値を省略する場合は、マイナス記号(-)を使用します。デフォルトゲートウェイをテーブルに入力するには、[宛先]フィールドをdefaultのままにします。

    [Note]

    追加のデフォルトルートが使用されている場合、より高い優先度を持つルートを決定するためのメトリックオプションを指定できます。メトリックオプションを指定するには、[オプション]- metric番号を入力します。最も高いメトリックを持つルートがデフォルトとして使用されます。ネットワークデバイスが切断している場合は、そのルートが削除され、次のルートが使用されます。ただし、現在のカーネルは静的なルーティングでメトリックを使用せず、multipathdなどのルーティングデーモンのみがメトリックを使用します。

  4. システムがルータである場合は、[ネットワーク設定][IP転送を有効にする]オプションをオンにします。

  5. 環境設定を有効にするには、[OK]をクリックします。

20.4.2. モデム

YaSTコントロールセンターで、[ネットワークデバイス]+[モデム]の順に選択して、モデム設定にアクセスします。モデムが自動的に検出されなかった場合は、[モデムデバイス]タブに移動し、手動設定用のダイアログを[追加]のクリックで開きます。[モデムデバイス]に、モデムの接続先インタフェースを入力します。

[Tip]CDMAおよびGPRSモデム

YaSTのモデムモジュールを使って、通常のモデムの設定と同様に、サポートするCDMAおよびGPRSモデムを設定します。

図20.4 モデム設定

モデム設定

構内交換機(PBX)経由で接続している場合は、ダイヤルプレフィックスの入力が必要な場合があります。通常、このプレフィックスは0 (ゼロ)です。PBX付属の指示書で確認してください。また、トーンダイヤル方式とパルスダイヤル方式のどちらを使用するか、スピーカをオンにするかどうか、およびモデムをダイヤルトーンの検出まで待機させるかどうかも選択します。モデムが交換機に接続されている場合、後者のオプションは無効です。

[詳細]で、ボーレートとモデムの初期化文字列を設定します。これらの設定は、モデムが自動検出されなかった場合、またはデータ転送を動作させるために特殊な設定が必要な場合にのみ変更してください。これは、主にISDN端末アダプタを使用する場合です。[OK]をクリックしてこのダイアログを閉じます。モデムの制御権をroot権限のない通常のユーザに委任するには、[Kinternetを利用してroot以外のユーザにもデバイス操作を許す]を有効にします。このようにすると、管理者権限のないユーザがインタフェースを有効化または無効化できるようになります。[Dial Prefix Regular Expression]には、正規表現を指定します。この正規表現とKInternetで設定する[ダイヤルプレフィックス]が一致する必要があります。このフィールドを空のままにした場合、管理者権限のないユーザは[ダイヤルプレフィックス]を変更できません。

次のダイアログで、ISPを選択します。事前定義済みの国内ISPリストから選択するには、[国]を選択します。または、[新規]をクリックしてダイアログを開き、独自ISPのデータを入力します。これには、ダイヤルアップ接続名、ISP名、ISPから提供されるログインとパスワードが含まれます。接続するたびにパスワードを要求させるには、[常にパスワードを要求する]を選択します。

最後のダイアログでは、次のようにその他の接続オプションを指定できます。

[必要に応じてダイヤルする]

[ダイヤルオンデマンド]を有効にする場合は、ネームサーバを少なくとも1つ指定します。インターネットに定期的にデータを要求するプログラムが存在するために、インターネット接続が低コストである場合にのみこの機能を使用します。

[接続時にDNSを変更する]

このオプションはデフォルトでオンになっていて、インターネットに接続するたびにネームサーバアドレスが更新されます。

[自動でDNS情報を取得]

接続後にプロバイダからドメインネームサーバの情報が送信されない場合は、このオプションをオフにしてDNSの情報を手動で入力します。

[Automatically Reconnect]

このオプションが有効である場合、障害の後で接続が自動的に再確立されます。

[ドライブを無視する]

このオプションは、ダイヤルアップサーバからのプロンプトの検出を無効にします。接続の構成が低速であるか、まったく機能しない場合は、このオプションを試みてください。

[外部ファイアウォールインタフェース]

このオプションを選択すると、ファイアウォールが有効になり、インタフェースが外部として設定されます。このようにして、インターネット接続時に外部からの攻撃から保護されます。

[アイドルタイムアウト(秒)]

このオプションでは、ネットワークがアイドル状態になってからモデムが自動的に切断されるまでの時間を指定します。

[IP Details(IP詳細設定)]

このオプションを選択すると、アドレス設定ダイアログが開きます。ISPからホストにダイナミックIPアドレスが割り当てられていない場合は、[ダイナミックIPアドレス]を無効にして、ホストのローカルIPアドレスとリモートIPアドレスを入力します。この情報については、ISPにお問い合わせください。[デフォルトルート]は有効なままにし、[OK]を選択してダイアログを閉じます。

[次へ]を選択すると、元のダイアログに戻り、モデム設定の概要が表示されます。[OK]をクリックしてこのダイアログを閉じます。

20.4.3. ISDN

このモジュールは、システムの1つ以上のISDNカードを設定します。YaSTによってISDNカードが検出されなかった場合は、[ISDNデバイス]タブで[追加]をクリックして手動で選択してください。複数のインタフェースを設定することも可能ですが、1つのインタフェースに複数のISPを設定することも可能です。以降のダイアログでは、カードが正しく機能するために必要なISDNオプションを設定します。

図20.5 ISDNの設定

ISDNの設定

図20.5「ISDNの設定」に示すダイアログでは、使用するプロトコルを選択します。デフォルトは、[Euro-ISDN (EDSS1)]ですが、旧式または大型の交換機の場合は、[1TR6]を選択します。米国では、[NI1]を選択します。関連するフィールドで国を選択してください。隣接するフィールドに対応する国コードが表示されます。最後に、必要に応じて[市外局番][ダイヤルプレフィックス] を入力します。すべてのISDNトラフィックをログに記録しない場合は、[ISDN記録を開始する]オプションをオフにします。

[デバイスの起動]は、ISDNインタフェースの起動方法を定義します。[ブート時]を選択すると、システムブート時にISDNドライバが毎回初期化されます。[Manually]を選択した場合は、rootとしてrcisdn startコマンドを実行して、ISDNドライバをロードする必要があります。[On Hotplug]は、PCMCIAやUSBデバイスに使用します。デバイスを装着したときにドライバがロードされます。これらの設定が完了したら、[OK]を選択します。

次のダイアログでは、ISDNカードのインタフェースタイプを指定し、既存のインタフェースにISPを追加します。インタフェースタイプには、SyncPPPまたはRawIPのどちらかを指定できますが、たいていのISPは、SyncPPPモードで運用しています。このモードについては後述します。

図20.6 ISDNインタフェースの設定

ISDNインタフェースの設定

[自分の電話番号]に入力する番号は、次の設定によって異なります。

電話線引出口に直接接続されたISDNカード

標準のISDN回線では、3つの電話番号を使用できます(MSN(multiple subscriber number)と呼ばれる)。加入者によっては、最大10個まである場合もあります。これらの電話番号の1つをここに入力します。ただし、市外局番は入力しないでください。間違った番号を入力すると、お使いのISDN回線に付与された最初のMSNが、電話交換手によって自動的に使用されます。

PBX (Private Branch Exchange)に接続されたISDNカード

この場合も、設定方法は設置された装置によって異なります。

  1. 小型のPBX (private branch exchanges)ではたいてい、内線通話にEuro-ISDN (EDSS1)プロトコルを使用します。これらの交換機にはS0バスが内蔵されており、交換機に接続された装置に内線番号を付与します。

    内線番号の1つをMSNとして使用してください。外線用に付与されたMSNの少なくとも1つは内線用に使用できるはずです。もし使用できない場合は、1つのゼロを試してください。詳細については、交換機付属のマニュアルを参照してください。

  2. ビジネス向けに設計された大型の交換機では通常、内線通話に1TR6プロトコルを使用します。このタイプの交換機に付与されるMSNはEAZと呼ばれ、通常直通番号に対応しています。Linuxでの設定では、EAZの最後の数字を入力するだけで十分なはずです。どうしてもうまくいかない場合は、1から9までの数字をすべて試してみてください。

次回の課金単位の直前に接続を切断するようにする場合は、[ChargeHUP(課金HUP)]を有効にします。ただし、このオプションはすべてのISPで使用できるわけではないため注意してください。チャネルバンドル(マルチリンクPPP)を有効にするオプションも用意されています。最後に、[外部ファイアウォールインタフェース][ファイアウォールの再起動]を選択して、使用している回線でファイアウォールを有効にします。管理者権限のない通常のユーザがインタフェースの有効化と無効化を行えるようにするには、[Enable Device Control for Non-root User via Kinternet]を選択します。

[詳細]を選択すると、詳細な接続方式を実装するためのダイアログが開きます。ただし、これらの設定は、通常の個人ユーザには不要です。[OK]をクリックして[Details]ダイアログを閉じます。

次のダイアログでは、IPアドレスを設定します。プロバイダからスタティックなIPアドレスを与えられていない場合は、[ダイナミックIPアドレス]を選択します。スタティックなIPアドレスを与えられている場合は、ISPの指示に従って、ホストのローカルIPアドレスとリモートIPアドレスを該当するフィールドに入力します。このインタフェースをインターネットへのデフォルトルートにする必要がある場合は、[デフォルトルート]を選択します。各ホストは、デフォルトルートとして設定されたインタフェースを1つだけ持つことができます。[次へ]をクリックして次のダイアログに進みます。

次のダイアログでは、国を設定し、ISPを選択できます。リストに登録されているISPは、call-by-callプロバイダだけです。契約しているISPがリストに登録されていない場合は、[新規]を選択します。[プロバイダパラメータ]ダイアログが開き、契約しているISPの詳細な情報を入力できます。電話番号を入力するときは、各数字の間に空白やカンマを挿入しないように注意してください。最後に、ISPから提供されたログインIDとパスワードを入力します。入力したら、[次へ]をクリックします。

スタンドアロンワークステーションで[ダイヤルオンデマンド]を使用するには、ネームサーバ(DNSサーバ)も指定します。ほとんどのISPはダイナミックDNSをサポートしており、接続するたびにISPからネームサーバのIPアドレスが送信されます。ただし、単一ワークステーションの場合は、192.168.22.99のようなプレースホルダアドレスを入力してください。ISPがダイナミックDNSをサポートしていない場合は、ISPから提供されたネームサーバIPアドレスを入力します。必要に応じて、接続タイムアウト、すなわち、ネットワークがアイドル状態になってから接続を自動的に切断するまでの時間(秒)を指定します。[次へ]をクリックすると設定が確定し、YaSTは、設定されたインタフェースの概要を表示します。これらの設定を有効にするには、[OK]を選択します。

20.4.4. ケーブルモデム

一部の国では、ケーブルテレビネットワークを介したインターネット接続が広く普及しています。ケーブルテレビ加入者は通常、モデムを貸与されます。このモデムは、ケーブルテレビの引出線とネットワークカード(10Base-TGより対線を使用)に接続して使用します。ケーブルモデムを接続すると、固定IPアドレスが付与されたインターネット専用接続が提供されます。

契約しているISPから、ネットワークカードを設定する際に、[Dynamic Address]または[Statically Assigned IP Address]のどちらかを選択するように指示があります。最近では、大半のプロバイダがDHCPを使用しています。スタティックなIPアドレスは、多くの場合、特殊なビジネス用アカウントの一部として提供されます。

20.4.5. DSL

DSLデバイスを設定するには、YaSTの[ネットワークデバイス]セクションから[DSL]モジュールを選択します。このモジュールは、次のいずれかのプロトコルに基づいてDSLリンクのパラメータを設定する複数のダイアログで構成されます。

  • PPP over Ethernet (PPPoE)

  • PPP over ATM (PPPoATM)

  • CAPI for ADSL (Fritz Cards)

  • ポイントツーポイントトンネリングプロトコル(PPTP)—オーストリア

[DSLの環境設定の概要]ダイアログの[DSLデバイス]タブに、インストール済みのDSLデバイスのリストが表示されます。DSLデバイスの設定を変更するには、リストでデバイスを選択し、[編集]をクリックします。[追加]をクリックすることで、新しいDSLデバイスを手動で設定できます。

PPPoEまたはPPTPに基づくDSL接続を設定するには、対応するネットワークカードが正しく設定されている必要があります。ネットワークカードをまだ設定していない場合は、はじめに、[ネットワークカードの設定]を選択してカードを設定してください(20.4.1項 「YaSTでのネットワークカードの設定」参照)。DSLリンクの場合は、IPアドレスが自動的に割り当てられる場合もありますが、その場合でもDHCPは使用されません。そのため、[Dynamic Address]オプションを有効にしないでください。その代わり、スタティックなダミーアドレス(192.168.22.1など)をインタフェースに入力します。[サブネットマスク]には、「255.255.255.0」を入力します。スタンドアロンのワークステーションを設定する場合は、[デフォルトゲートウェイ]を空白のままにします。

[Tip]

[IPアドレス][サブネットマスク]の値は単なるプレースホルダーです。これらはネットワークカードを初期化するために必要なだけであって、実際のDSLリンクを表しているわけではありません。

最初の[DSLの環境設定]ダイアログ(図20.7「DSLの設定」参照)で、まず、[PPPモード]と、DSLモデムが接続される[イーサネットカード]を選択します(ほとんどの場合、eth0)。次に、[Activate Device]で、ブート時にDSLリンクを確立する必要があるかどうかを指定します。管理者権限のない通常のユーザがインタフェースの有効化と無効化を行えるようにするには、[Enable Device Control for Non-root User via Kinternet]を選択します。

次のダイアログでは、国とその国で提供されている多くのISPの1つを選択できます。以降のダイアログの詳細は、ここまでで設定したオプションによって異なるため、簡単に触れるだけにとどめておきます。各オプションの詳細については、各ダイアログのヘルプを参照してください。

図20.7 DSLの設定

DSLの設定

スタンドアロンワークステーションで[必要に応じてダイヤルする]を使用するには、ネームサーバ(DNSサーバ)も指定します。ほとんどのISPはダイナミックDNSをサポートしており、接続するたびにISPからネームサーバのIPアドレスが送信されます。ただし、単一ワークステーションの場合は、192.168.22.99のようなプレースホルダアドレスも入力する必要があります。ISPがダイナミックDNSをサポートしていない場合は、ISPのネームサーバIPアドレスを指定してください。

[切断するまでのアイドル時間(秒数)]には、ネットワークがアイドル状態になってからモデムを自動的に切断するまでの時間を指定します。タイムアウト値としては、60秒~300秒が妥当です。[必要に応じてダイヤルする]を無効にしている場合は、このタイムアウト値をゼロに設定して自動的に接続が切断されないようにしておきます。

T-DSLの設定はDSLの設定とほぼ同じです。プロバイダとして[T-Online]を選択すると、T-DSL設定ダイアログが開きます。このダイアログで、T-DSLに必要な追加情報(ラインID、T-Online番号、ユーザコード、パスワードなど)を指定します。T-DSLに加入すると、プロバイダからこれらの情報がすべて提供されるはずです。

20.5. NetworkManager

NetworkManagerは、ラップトップなどの携帯用コンピュータのための理想的ソリューションです。NetworkManagerを使用すると、移動時のネットワーク間の切り替えおよびネットワークインタフェースの設定について心配する必要がなくなります。

20.5.1. NetworkManagerおよびifup

ただし、NetworkManagerはすべての場合に適合するソリューションではありません。したがって、依然としてネットワーク接続管理のための伝統的方法(ifup)とNetworkManagerの間で選択を行うことができます。NetworkManagerでネットワーク接続を管理する場合は、23.2項 「NetworkManagerの有効化」に従ってYaSTネットワーク設定モジュールでNetworkManagerを有効にし、NetworkManagerでネットワーク接続を設定します。ユースケースのリスト、およびNetworkManagerを設定および使用する方法の詳細については、第23章 NetworkManagerの使用を参照してください。

次に、ifupとNetworkManagerの相違をいくつか示します。

root特権

ネットワークセットアップにNetworkManagerを使用する場合、アプレットを使用するデスクトップ環境内からいつでも簡単にネットワーク接続を切り替え、停止または開始できます。NetworkManagerでは、必要なroot権限なしに、ワイヤレスカード接続の変更および設定もできます。この理由から、NetworkManagerは、モバイルワークステーションに理想的なソリューションと言えます。

ifupを使用する従来の設定では、ユーザ管理デバイスのようなユーザの介入があってもなくても、接続を切り替え、停止または開始する方法がいくつか用意されています。ただし、この場合は常に、ネットワークデバイスを変更または設定するためのroot権限が必要です。このことは、多くの場合、考えられるすべての接続を事前に設定することができないモバイルコンピューティングでは問題になります。

ネットワーク接続のタイプ

従来の設定とNetworkManagerの両方で、無線ネットワーク(WEP、WPA-PSK、およびWPA-Enterpriseアクセスを使用)および有線ネットワーク(DHCPと静的設定を使用)とのネットワーク接続を操作できます。これらの設定では、ダイヤルアップ、DSL、およびVPNによる接続もサポートします。NetworkManagerでは、モバイルブロードバンド(3G)モデムも接続できますが、これは従来の設定では不可能です。

NetworkManagerは、コンピュータが常に最適な接続を使用して接続されるようにします。ネットワークケーブルの接続が誤って切断された場合は、再接続しようとします。また、ワイヤレス接続のリストから信号強度が最高のネットワークを検出し、自動的にそれを使用して接続します。ifupと同じ機能を得るため、多くの設定作業が必要です。

20.5.2. NetworkManagerの機能および環境設定ファイル

NetworkManagerで作成された個別のネットワーク接続設定は、設定プロファイルに保存されます。NetworkManagerまたはYaSTで設定されたシステム接続は、/etc/networkmanager/system-connections/*か、または/etc/sysconfig/network/ifcfg-*に保存されます。すべてのユーザ定義接続は、GNOMEの場合にはGConf、KDEの場合には$HOME/.kde4/share/apps/networkmanagement/*に保存されます。

プロファイルが設定されていない場合は、NetworkManagerにより自動的にプロファイルが作成され、Auto $INTERFACE-NAMEという名前が付けられます。これは、(安全性を確保しながら)可能な限り多くの場合に、設定なしで動作することを目的として作成されます。自動的に作成されたプロファイルが適切でない場合は、KDEまたはGNOMEにより提供されるネットワーク接続設定ダイアログを使用して必要に応じてプロファイルを変更します。詳細については、23.3項 「ネットワーク接続の設定」を参照してください。

20.5.3. NetworkManager機能の制御およびロックダウン

中央管理されたコンピュータでは、たとえばユーザが管理者の定義した接続の変更を許可されている場合、またはユーザが独自のネットワーク設定を定義することが許可されている場合に、PolicyKitにより特定のNetworkManager機能を制御するか、または無効にできます。対応するNetworkManagerポリシーを表示または変更するには、PolicyKitのグラフィカル認証ツールを起動します。このポリシーは、左側のツリーで、network-manager-settingsエントリの下にあります。PolicyKitの概要、およびその使用方法の詳細については、第9章 PolicyKit (↑Security Guide (セキュリティガイド))を参照してください。

20.6. ネットワークの手動環境設定

ネットワークソフトウェアの手動環境設定は、常に最後の手段です。設定には可能な限りYaSTを使用してください。しかし、ネットワークの環境設定に関する背景知識がYaSTでの設定作業に役立つことがあります。

カーネルは、ネットワークカードを検出し、対応するネットワークインタフェースを作成する際に、デバイスディスカバリの順序またはカーネルモジュールのロード順序によって、デバイスに名前を割り当てます。デフォルトのカーネルデバイス名は、非常にシンプルまたは厳しく制御されたハードウェア環境でのみ予測可能です。ランタイム時にハードウェアの追加や削除が可能なシステム、またはデバイスの自動設定をサポートするシステムでは、カーネルにより割り当てられたネットワークデバイス名がリブート後も変わらないと期待することはできません。

しかし、すべてのシステム設定ツールは、永続的なインタフェース名に依存しています。この問題は、udevで解決されます。udevの永続的ネットジェネレータ(/lib/udev/rules.d/75-persistent-net-generator.rules)は、ハードウェアを照合するルール(デフォルトでは、そのハードウェアアドレスを使用)を生成し、ハードウェアに永続的に固有のインタフェースを割り当てます。udevのネットワークインタフェースデータベースは、ファイル/etc/udev/rules.d/70-persistent-net.rulesに保存されます。このファイルの行ごとに、1つのネットワークインタフェースが記述され、永続名が指定されます。システム管理者は、NAME=""項目を編集することにより、割り当て名を変更できます。永続的ルールも、YaSTで変更できます。

表20.5「手動ネットワーク環境設定用スクリプト」に、ネットワークの環境設定関連の最も重要なスクリプトをまとめます。

表20.5 手動ネットワーク環境設定用スクリプト

コマンド

機能

ifup、ifdown、ifstatus

ifスクリプトは、ネットワークインタフェースの起動や停止を行ったり、指定のインタフェースのステータスを返したりします。詳細については、ifupのマニュアルページを参照してください。

rcnetwork

rcnetworkスクリプトを使用すると、すべてのネットワークインタフェースまたは特定のネットワークインタフェースだけを起動、停止、または再起動できます。ネットワークインタフェースの停止にはrcnetwork stop、起動にはrcnetwork start、再起動にはrcnetwork restartを使用します。1つのインタフェースだけを停止、起動、または再起動したい場合は、コマンドの後にインタフェース名を指定します(たとえば、rcnetwork restart eth0)。rcnetwork statusコマンドを使用すると、インタフェースの状態、IPアドレス、およびDHCPクライアントが実行中かどうかが表示されます。rcnetwork stop-all-dhcp-clientsまたは rcnetwork restart-all-dhcp-clientsを使用すると、ネットワークインタフェースで実行中のDHCPクライアントを停止または再起動できます。


udevおよび永続的デバイス名については、第13章 udevによる動的カーネルデバイス管理を参照してください。

20.6.1. 環境設定ファイル

ここでは、ネットワークの環境設定ファイルの概要を紹介し、その目的と使用される形式について説明します。

20.6.1.1. /etc/sysconfig/network/ifcfg-*

これらのファイルには、ネットワークインタフェースの環境設定が含まれています。これには、実行モード、IPアドレスなどが含まれます。指定可能なパラメータについては、ifupのマニュアルページを参照してください。また、一般的設定を1つのインタフェースだけに使用する場合は、dhcpファイルのほとんどの変数をifcfg-*ファイルで使用できます。ただし、/etc/sysconfig/network/configの変数の大半はグローバル変数であり、ifcfgファイル内で上書きすることはできません。たとえば、NETWORKMANAGER変数やNETCONFIG_*変数はグローバルです。

ifcfg.templateについては、20.6.1.2項 「/etc/sysconfig/network/config/etc/sysconfig/network/dhcpを参照してください。

20.6.1.2. /etc/sysconfig/network/config/etc/sysconfig/network/dhcp

configファイルは、ifupifdown、およびifstatusの動作の一般設定を含み、dhcpは、DHCの設定を含みます。両方の設定ファイルの変数はコメント付きです。/etc/sysconfig/network/config内の一部の変数は、ifcfg-*ファイルでも使用できます。このファイルでは、高い優先度が設定されます。/etc/sysconfig/network/ifcfg.templateファイルは、インタフェースごとに指定できる変数を一覧表示します。ただし、/etc/sysconfig/network/configの変数の大半はグローバル変数であり、ifcfgファイル内で上書きすることはできません。たとえば、NETWORKMANAGERNETCONFIG_*は、グローバル変数です。

20.6.1.3. /etc/sysconfig/network/routes/etc/sysconfig/network/ifroute-*

TCP/IPパケットの静的ルーティングが設定されています。ホストへのルート、ゲートウェイ経由のホストへのルート、およびネットワークへのルートなど、さまざまなシステムタスクが必要とするすべての静的ルートは、/etc/sysconfig/network/routesファイルに指定できます。個別のルーティングが必要な各インタフェースに対して、付加環境設定ファイル/etc/sysconfig/network/ifroute-*を定義します。*はインタフェース名で読み替えてください。経路の環境設定ファイルのエントリは次のようになります。

# Destination     Dummy/Gateway     Netmask            Device
#
127.0.0.0         0.0.0.0           255.255.255.0      lo
204.127.235.0     0.0.0.0           255.255.255.0      eth0
default           204.127.235.41    0.0.0.0            eth0
207.68.156.51     207.68.145.45     255.255.255.255    eth1
192.168.0.0       207.68.156.51     255.255.0.0        eth1

第1列は、経路の宛先です。この列には、ネットワークまたはホストのIPアドレスが入ります。到達可能なネームサーバの場合は、完全に修飾されたネットワークまたはホスト名が入ります。

第2列は、デフォルトゲートウェイ、すなわちホストまたはネットワークにアクセスする際に経由するゲートウェイです。第3列は、ゲートウェイの背後にあるネットワークまたはホストのネットマスクです。たとえば、ゲートウェイの背後にあるホストのネットマスクは、255.255.255.255になります。

最後の列は、ローカルホスト(ループバック、イーサネット、ISDN、PPP、ダミーデバイスなど)に接続されたネットワークのみに関連します。ここには、デバイス名を指定する必要があります。

(オプションの) 5番目のコラムには、経路のタイプを指定することができます。必要ではないコラムには、マイナス記号-を記入してください。これは、パーサがコマンドを正しく解釈できるようにするためです。詳細は、routes(5)マニュアルページを参照してください。

IPv4とIPv6の統合形式は、次のようになります。

prefix/lengthgateway -            [interface]

いわゆる互換形式は、次のようになります。

prefixgatewaylength       [interface]

IPv4については、ネットマスクを使用する古い形式もまだ使用できます。

ipv4-networkgatewayipv4-netmask [interface]

次の例は、互いに同等です。

2001:db8:abba:cafe::/64 2001:db8:abba:cafe::dead  -            eth0
208.77.188.0/24         208.77.188.166            -            eth0

2001:db8:abba:cafe::    2001:db8:abba:cafe::dead 64            eth0
208.77.188.0            208.77.188.166           24            eth0

208.77.188.0            208.77.188.166           255.255.255.0 eth0

20.6.1.4. /etc/resolv.conf

このファイルには、ホストが属するドメインが指定されています(キーワードsearch)。また、アクセスするネームサーバアドレスのステータスのリストも記述されています(キーワードnameserver)。このファイルでは、複数のドメイン名を指定できます。完全修飾でない名前を解決する場合は、searchの各エントリを付加して完全修飾名の生成が試みられます。複数のネームサーバを、nameserverで始まる複数行で指定できます。コメントの先頭には#記号が付きます。例20.5「/etc/resolv.confには、/etc/resolv.confの可能な内容が示されています。

ただし、/etc/resolv.confは、手動では編集しないでください。このファイルは、netconfigスクリプトで生成されます。YaSTを使用せずに静的DNS設定を定義するには、/etc/sysconfig/network/configファイルの該当する変数を手動で編集します。

NETCONFIG_DNS_STATIC_SEARCHLIST

ホスト名の検索に使用されるDNSドメイン名のリスト

NETCONFIG_DNS_STATIC_SERVERS

ホスト名の検索されるネームサーバIPアドレスのリスト

NETCONFIG_DNS_FORWARDER

設定する必要のあるDNSフォワーダの名前の定義

netconfigでDNS環境設定を無効にするには、NETCONFIG_DNS_POLICY=''を設定します。netconfigの詳細については、man 8 netconfigを参照してください。

例20.5 /etc/resolv.conf

# Our domain
search example.com
#
# We use dns.example.com (192.168.1.116) as nameserver
nameserver 192.168.1.116

20.6.1.5. /sbin/netconfig

netconfigは、追加のネットワーク環境設定を管理するモジュール式ツールです。このツールは、事前定義されたポリシーに従って、 DHCPまたはPPPなどの自動設定メカニズムにより提供される設定と、静的に定義された設定をマージします。要求された変更は、netconfigモジュールの呼び出しによって適用されます。このモジュールは、環境設定ファイルの変更と、サービスまたは同様のアクションの再起動を行います。

netconfigは、3つの主要なアクションを認識します。netconfig modifyコマンドとnetconfig removeコマンドは、 DHCPやPPPなどのデーモンによって使用され、netconfigの設定値を提供したり、削除します。ユーザが使用できるのは、netconfig updateコマンドだけです。

変更

netconfig modifyコマンドは、現在のインタフェースとサービス固有の動的設定を変更し、ネットワーク設定を更新します。netconfigは、標準入力からか、または--lease-file filenameオプションで指定されたファイルから設定を読み込み、システムのリブートまたは次の変更/削除アクションまで、それらの設定を内部的に保存します。同じインタフェースとサービスの組み合わせに関する既存設定は、上書きされます。インタフェースは、-i interface_nameパラメータで指定されます。サービスは、-s service_nameパラメータで指定されます。

削除

netconfig removeコマンドは、特定のインタフェースとコマンドの組み合わせに対する変更アクションによる動的設定を削除し、ネットワーク設定を更新します。インタフェースは、-i interface_nameパラメータで指定されます。サービスは、-s service_nameパラメータで指定されます。

update

netconfig updateコマンドは、現在の設定で、ネットワーク設定を更新します。これは、ポリシーや静的環境設定が変更された場合に便利です。指定したサービスのみ(dnsnis、またはntp)を更新するには、-m module_typeパラメータを使用します。

netconfigポリシーおよび静的環境設定は、手動またはYaSTを使用して、/etc/sysconfig/network/configファイル内で定義します。dhcpやpppなどの自動設定ツールで提供された動的設定は、netconfig modifyおよびnetconfig removeのアクションで、これらのツールによって直接配信されます。NetworkManagerは、netconfig modifyおよびnetconfig removeアクションも使用します。NetworkManagerが有効な場合、netconfig(ポリシーモード-auto)は、NetworkManagerの設定のみを使用し、従来のifup方式で設定された他のインタフェースからの設定を無視します。NetworkManagerが設定を提供しない場合は、静的設定がフォールバックとして使用されます。NetworkManagerと従来のifup方式の混合使用はサポートされません。

netconfigの詳細については、man 8 netconfigを参照してください。

20.6.1.6. /etc/hosts

このファイル(例20.6「/etc/hostsを参照)では、IIPアドレスがホスト名に割り当てられています。ネームサーバが実装されていない場合は、IP接続をセットアップするすべてのホストをここにリストする必要があります。ファイルには、各ホストについて1行を入力し、IPアドレス、完全修飾ホスト名、およびホスト名を指定します。IPアドレスは、行頭に指定し、各エントリはブランクとタブで区切ります。コメントは常に#記号の後に記入します。

例20.6 /etc/hosts

127.0.0.1 localhost
192.168.2.100 jupiter.example.com jupiter
192.168.2.101 venus.example.com venus

20.6.1.7. /etc/networks

このファイルには、ネットワーク名とネットワークアドレスの対応が記述されています。形式は、ネットワーク名をアドレスの前に指定すること以外は、hostsファイルと同様です。詳細については、例20.7「/etc/networksを参照してください。

例20.7 /etc/networks

loopback     127.0.0.0
localnet     192.168.0.0

20.6.1.8. /etc/host.conf

名前解決(リゾルバライブラリを介したホストおよびネットワーク名の解釈)は、このファイルにより制御されます。このファイルは、libc4またはlibc5にリンクされているプログラムについてのみ使用されます。最新のglibcプログラムについては、/etc/nsswitch.confの設定を参照してください。パラメータは、その行内で常に独立しています。コメントは#記号の後に記入します。表20.6「/etc/host.confファイルのパラメータ」に、利用可能なパラメータを示します。/etc/host.confの例については、例20.8「/etc/host.confを参照してください。

表20.6 /etc/host.confファイルのパラメータ

order hosts,bind

名前の解決の際、サービスがアクセスされる順序を指定します。有効な引数は次のとおりです(空白またはカンマで区切ります)。

hosts: /etc/hostsファイルを検索します。

bind: ネームサーバにアクセスします。

nis: NISを使用します。

multi on/off

/etc/hostsに指定されているホストが、複数のIPアドレスを持てるかどうかを定義します。

nospoof on spoofalert on/off

これらのパラメータは、ネームサーバspoofingに影響を与えますが、ネットワークの環境設定にはまったく影響を与えません。

trim domainname

ホスト名が解決された後、指定したドメイン名をホスト名から切り離します(ホスト名にドメイン名が含まれている場合)。ローカルドメインにある名前は/etc/hostsファイルにありますが、付加されるドメイン名でも認識する必要がある場合には便利なオプションです。


例20.8 /etc/host.conf

# We have named running
order hosts bind
# Allow multiple address
multi on

20.6.1.9. /etc/nsswitch.conf

GNU C Library 2.0を導入すると、Name Service Switch (NSS)も合わせて導入されます。詳細については、nsswitch.conf(5) manページおよび『The GNU C Library Reference Manual』を参照してください。

クエリの順序は、ファイル/etc/nsswitch.confで定義します。nsswitch.confの例については、例20.9「/etc/nsswitch.confを参照してください。コメントの先頭には#記号が付きます。この例では、hostsデータベースのエントリによると、要求がDNS経由で/etc/hosts (files)に送信されています。

例20.9 /etc/nsswitch.conf

passwd:     compat
group:      compat

hosts:      files dns
networks:   files dns

services:   db files
protocols:  db files
rpc:        files
ethers:     files
netmasks:   files
netgroup:   files nis
publickey:  files

bootparams: files
automount:  files nis
aliases:    files nis
shadow:     compat

NSSで利用できるデータベースについては、表20.7「/etc/nsswitch.confで利用できるデータベース」を参照してください。 NSSデータベースの環境設定オプションについては、表20.8「NSS データベースの環境設定オプション」を参照してください。

表20.7 /etc/nsswitch.confで利用できるデータベース

aliases

sendmailによって実行されたメールエイリアス。man 5 aliasesコマンドで、マニュアルページを参照してください。

ethers

イーサネットアドレス。

netmasks

ネットワークとそのサブネットマスクのリスト。サブネットを使用する場合のみ必要です。

group

getgrentによって使用されるユーザグループ。groupのマニュアルページも参照してください。

hosts

gethostbynameおよび同類の関数によって使用されるホスト名とIPアドレス。

netgroup

アクセス許可を制御するための、ネットワーク内にある有効なホストとユーザのリスト。netgroup(5) manページを参照してください。

networks

ネットワーク名とアドレス。 getnetentによって使用されます。

publickey

NFSとNIS+によって使用されるSecure_RPCの公開鍵と秘密鍵。

passwd

ユーザパスワード。getpwentによって使用されます。passwd(5) manページを参照してください。

protocols

ネットワークプロトコル。getprotoentによって使用されます。protocols(5) manページを参照してください。

rpc

リモートプロシージャコール名とアドレス。 getrpcbynameおよび同様の関数によって使用されます。

services

ネットワークサービス。getserventによって使用されます。

shadow

ユーザのシャドウパスワード。getspnamによって使用されます。shadow(5) manページを参照してください。


表20.8 NSS データベースの環境設定オプション

ファイル

直接アクセスファイル。たとえば/etc/aliases

db

データベース経由のアクセス。

nisnisplus

NIS。第3章 Using NIS (↑Security Guide (セキュリティガイド))を参照。

dns

hostsおよびnetworksの拡張としてのみ使用できます。

compat

passwdshadow、およびgroupの拡張としてのみ使用できます。


20.6.1.10. /etc/nscd.conf

このファイルは、nscd (name service cache daemon)の環境設定に使用します。nscd(8)およびnscd.conf(5) manページを参照してください。デフォルトでは、nscdによってpasswdgroupsのシステムエントリがキャッシュされます。キャッシュが行われないと名前やグループにアクセスするたびにネットワーク接続が必要になるため、このキャッシュ処理は NIS や LDAP といったディレクトリサービスのパフォーマンスに関して重要な意味を持ちます。hostsはデフォルトではキャッシュされません。これは、nscd でホストをキャッシュすると、ローカルシステムで正引き参照と逆引き参照のルックアップチェックを信頼できなくなるからです。したがって、nscdを使用して名前をキャッシュするのではなく、キャッシュDNSサーバをセットアップします。

passwdオプションのキャッシュを有効にすると、新しく追加したローカルユーザが認識されるまで、通常、約15秒かかります。この待ち時間を短縮するには、コマンドrcnscdrestartを使用してnscdを再起動します。

20.6.1.11. /etc/HOSTNAME

このファイルには、ドメイン名付きで完全修飾されたホスト名が含まれています。このファイルは、マシンの起動時に複数のスクリプトによって読み込まれます。指定できるのは、ホスト名が設定されている1行のみです。

20.6.2. 設定のテスト

設定内容を設定ファイルに書き込む前に、それをテストすることができます。テスト環境を設定するには、ipコマンドを使用します。接続をテストするには、pingコマンドを使用します。また、以前の設定ツールのifconfigrouteも使用することができます。

ipifconfig、およびrouteコマンドは、ネットワーク設定を直接変更します。ただし、変更内容は設定ファイルに保存されません。正しい設定ファイルに変更内容を保存しない限り、変更したネットワーク設定は再起動時に失われてしまいます。

20.6.2.1. ipによるネットワークインタフェースの設定

ip は、ネットワークデバイス、ルーティング、ポリシールーティング、およびトンネルの表示と設定を行うツールです。

ipは非常に複雑なツールです。一般的には、ipoptionsobjectcommandの形式で指定します。objectの部分には、次のオブジェクトを指定することができます。

リンク

ネットワークデバイスを表します。

アドレス

デバイスのIPアドレスを表します。

隣接

ARPまたはNDISCキャッシュエントリを表します。

route

ルーティングテーブルエントリを表します。

ルール

ルーティングポリシーデータベース中のルールを表します。

maddress

マルチキャストアドレスを表します。

mroute

マルチキャストルーティングキャッシュエントリを表します。

tunnel

IPトンネルを表します。

commandを指定しないと、デフォルトのコマンド(通常はlist)が使用されます。

デバイスの状態を変更するには、ip link setdevice_name commandコマンドを使用します。たとえば、デバイスeth0を無効にするには、ip link seteth0 downを実行します。このデバイスを再び有効にする場合は、ip link seteth0 upを実行します。

デバイスを有効にしたら、そのデバイスを設定することができます。デバイスのIPアドレスを使用する場合は、ip addr addip_address + dev device_nameを使用します。たとえば、インタフェースeth0にアドレス「 192.168.12.154/30」を設定し、標準のブロードキャスト(brdオプション)を使用する場合は、「ip addradd 192.168.12.154/30 brd + dev eth0」と入力します。

接続を実際に利用可能にするには、デフォルトゲートウェイの設定も必要です。システムのゲートウェイを設定するには、「ip route add gateway_ip_address」を入力します。あるIPアドレスを別のIPアドレスに変換するには、nat: ip route add nat ip_address via other_ip_addressを使用します。

すべてのデバイスを表示する場合は、ip link lsを使用します。動作しているインタフェースだけを表示する場合は、ip link ls upを使用します。デバイスのインタフェース統計情報を印刷する場合は、「ip -s link lsdevice_name」と入力します。デバイスのアドレスを表示する場合は、「ip addr」と入力します。ip addrの出力には、デバイスのMACアドレスに関する情報も表示されます。すべてのルートを表示する場合は、ip route showを使用します。

ipの使用方法の詳細については、iphelpを入力するか、またはip(8)マニュアルページを参照してください。helpオプションは、すべてのipサブコマンドに関して利用できます。たとえば、ip addrのヘルプが必要な場合は、ipaddr helpと入力します。ipマニュアルについては、 /usr/share/doc/packages/iproute2/ip-cref.pdfを参照してください。

20.6.2.2. pingを使った接続のテスト

pingコマンドは、TCP/IP接続が正常に動作しているかどうかを調べるための、標準ツールです。pingコマンドはICMPプロトコルを使って、小さなデータパケットECHO_REQUESTデータグラムを、宛先ホストに送信し、即時応答を要求します。この作業が成功した場合、pingコマンドは、その結果を知らせるメッセージを表示します。これは、ネットワークリンクが基本的に機能していることを意味します。

pingは、2台のコンピュータ間の接続機能をテストするだけでなく、接続品質に関する基本的な情報も提供します。ping例20.10「pingコマンドの出力」コマンドの実行結果例は、を参照してください。最後から2番目の行に、転送パケット数、失われたパケット数、およびpingの実行時間の合計が記載されています。

PINGの宛先には、ホスト名またはIPアドレスを指定することができます。たとえば、pingexample.comまたはping192.168.3.100のように指定します。pingコマンドを実行すると、<Ctrl>+<C>を押すまでの間、継続的にパケットが送信されます。

接続されているかどうかを確認するだけで良い場合は、-cオプションを使って送信するパケット数を指定することができます。たとえば、PINGを3パケットに制限する場合は、「ping -c 3 example.com」を入力します。

例20.10 pingコマンドの出力

ping -c 3 example.com
PING example.com (192.168.3.100) 56(84) bytes of data.
64 bytes from example.com (192.168.3.100): icmp_seq=1 ttl=49 time=188 ms
64 bytes from example.com (192.168.3.100): icmp_seq=2 ttl=49 time=184 ms
64 bytes from example.com (192.168.3.100): icmp_seq=3 ttl=49 time=183 ms
--- example.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2007ms
rtt min/avg/max/mdev = 183.417/185.447/188.259/2.052 ms

デフォルトでは、pingは1秒ごとにパケットを送信します。間隔を変更するには、 -i オプションを指定します。たとえば、pingの間隔を10秒に増大する場合は、ping -i 10 example.comを入力します。

複数のネットワークデバイスを持つシステムの場合、特定のインタフェースアドレスを指定してpingを実行することができます。その場合は、-Iオプションを、選択したデバイスの名前とともに使用します。たとえば、ping -I wlan1 example.comと指定します。

pingのオプションと使用方法の詳細は、「ping-h」を入力するか、またはping(8)マニュアルページを参照してください。

[Tip]IPv6アドレスのping

IPv6の場合は、ping6コマンドを使用します。ただし、リンクローカルアドレスをpingするには、-Iでインタフェースを指定する必要があります。アドレスがeth1を介して到達可能な場合は、次のコマンドが有効です。

ping6 -I eth1 fe80::117:21ff:feda:a425

20.6.2.3. ifconfigを使ったネットワークの設定

ifconfigは、ネットワーク設定ツールです。

[Note]ifconfigとip

ifconfigツールは廃止されました。代わりに、ipを使用してください。ipと異なり、ifconfigは、インタフェースの設定にのみ使用できます。ただし、インタフェース名は9文字までに制限されます。

ifconfigに引数を指定しないと、現在アクティブなインタフェースのステータスが表示されます。例20.11「ifconfigコマンドの出力」が示すように、ifconfigは、非常にわかりやすく表示された詳細情報を出力します。この出力では、デバイスのMACアドレス(HWaddrの値)も1行目に表示されています。

例20.11 ifconfigコマンドの出力

eth0      Link encap:Ethernet  HWaddr 00:08:74:98:ED:51
          inet6 addr: fe80::208:74ff:fe98:ed51/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:634735 errors:0 dropped:0 overruns:4 frame:0
          TX packets:154779 errors:0 dropped:0 overruns:0 carrier:1
          collisions:0 txqueuelen:1000
          RX bytes:162531992 (155.0 Mb)  TX bytes:49575995 (47.2 Mb)
          Interrupt:11 Base address:0xec80

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8559 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8559 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:533234 (520.7 Kb)  TX bytes:533234 (520.7 Kb)    

wlan1     Link encap:Ethernet  HWaddr 00:0E:2E:52:3B:1D
          inet addr:192.168.2.4  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::20e:2eff:fe52:3b1d/64 Scope:Link
          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:50828 errors:0 dropped:0 overruns:0 frame:0
          TX packets:43770 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:45978185 (43.8 Mb)  TX bytes:7526693 (7.1 MB)

ifconfigのオプションと使用方法の詳細については、ifconfig-hを入力するか、またはifconfig(8)マニュアルページを参照してください。

20.6.2.4. routeによるルーティングの設定

routeは、IPルーティングテーブルを操作するプログラムです。このコマンドを使用すると、ルーティングの設定を表示したり、ルートを追加または削除できます。

[Note]routeとip

routeプログラムは廃止されました。代わりに、ipを使用してください。

routeは、総合的なルーティング情報を素早く参照して、ルーティングに関する問題を探す場合などに役立ちます。現在のルーティング設定を表示するには、rootとして「route-n」を入力します。

例20.12 route -nコマンドの出力


route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.20.0.0       *               255.255.248.0   U         0 0          0 eth0
link-local      *               255.255.0.0     U         0 0          0 eth0
loopback        *               255.0.0.0       U         0 0          0 lo
default         styx.exam.com   0.0.0.0         UG        0 0          0 eth0

routeのオプションと使用方法の詳細については、「route-h」を入力するか、またはroute (8)マニュアルページを参照してください。

20.6.3. スタートアップスクリプト

前述の環境設定ファイルに加え、マシンのブート時にネットワークプログラムをロードするさまざまなスクリプトも用意されています。これらは、システムがマルチユーザランレベルのいずれかに切り替わったときに起動します。これらのスクリプトの一部は、表20.9「ネットワークプログラム用スタートアップスクリプト」で説明されています。

表20.9 ネットワークプログラム用スタートアップスクリプト

/etc/init.d/network

このスクリプトは、ネットワークインタフェースの環境設定を処理します。networkサービスが開始されなかった場合、ネットワークインタフェースは実装されません。

/etc/init.d/xinetd

xinetdを開始します。xinetdを使用すると、サーバサービスがシステム上で利用できるようになります。たとえば、FTP接続の開始時に必ずvsftpdを起動することができます。

/etc/init.d/rpcbind

RPCプログラム番号をユニバーサルアドレスに変換するrpcbindユーティリティを起動します。NFSサーバなどのRPCサービスで必要です。

/etc/init.d/nfsserver

NFSサーバを起動します。

/etc/init.d/postfix

postfixプロセスを制御します。

/etc/init.d/ypserv

NISサーバを起動します。

/etc/init.d/ypbind

NISクライアントを起動します。


20.7. ダイアルアップアシスタントとしてのsmpppd

一部のホームユーザは、インターネット接続専用の回線を持っていません。代わりにダイアルアップ接続を使用しています。接続は、ダイアルアップ方法(ISDNまたはDSL)に応じてipppdまたはpppdで制御されます。基本的には、これらのプログラムを正常に起動するだけでオンラインで接続できます。

ダイアルアップ接続時に追加費用が発生しない定額接続を使用している場合は、単に該当するデーモンを起動します。ダイアルアップ接続の管理には、デスクトップアプレットまたはコマンドラインインタフェースを使用します。インターネットゲートウェイ以外のホストを使用している場合は、ネットワークホスト経由でダイアルアップ接続を管理できます。

smpppd (SUSE Meta PPP Daemon)は、ここで関与します。このプログラムは補助プログラム用に一様なインタフェースを提供し、双方向に動作します。第1に、必要なpppdまたはipppdをプログラミングし、そのダイアルアッププロパティを制御します。第2に、各種プロバイダをユーザプログラムで使用できるようにして、現在の接続ステータスに関する情報を送信します。smpppdはネットワーク経由で制御することもできるため、プライベートサブネットワーク内のワークステーションからインターネットへのダイアルアップ接続の制御に適しています。

20.7.1. smpppdの設定

smpppdによる接続は、YaSTにより自動的に設定されます。実際のダイアルアッププログラムであるkinternetとcinternetも事前に設定済みです。手動設定が必要となるのは、リモート制御など、smpppdの付加的機能を設定する場合のみです。

smpppdの設定ファイルは/etc/smpppd.confです。デフォルトでは、このファイルによるリモート制御はできません。この設定ファイルの最も重要なオプションを次に示します。

open-inet-socket = yes|no

smpppdをネットワーク経由で管理するには、このオプションをyesに設定します。smpppdはポート3185でリッスンします。このパラメータをyesに設定した場合は、パラメータbind-addresshost-range、およびpasswordもそれに応じて設定する必要があります。

bind-address = ip address

ホストに複数のIPアドレスがある場合は、このパラメータを使用してsmpppdで接続の受け入れに使用するIPアドレスを指定します。デフォルトでは、すべてのアドレスでリッスンします。

host-range = min ipmax ip

パラメータhost-rangeを使用して、ネットワーク範囲を定義します。この範囲内のIPアドレスを持つホストには、smpppdへのアクセス権が付与されます。この範囲外のホストはすべてアクセスを拒否されます。

password = password

パスワードを割り当てることで、クライアントを認可されたホストに限定できます。これはプレーンテキストによるパスワードのため、このパスワードによるセキュリティを過大評価しないでください。パスワードを割り当てないと、すべてのクライアントがsmpppdへのアクセスを許可されます。

slp-register = yes|no

このパラメータにより、smpppdサービスがSLPによってネットワーク上にアナウンスされます。

smpppdについての詳細は、smpppd(8)およびsmpppd.conf(5) manページを参照してください。

20.7.2. cinternetのリモート使用設定

cinternetは、ローカルまたはリモートのsmpppd制御に使用できます。cinternetは、グラフィックKInternetのコマンドライン版です。これらのユーティリティをリモートsmpppdで使用できるようにするには、設定ファイル /etc/smpppd-c.conf を手動またはcinternetの使用によって編集します。このファイルでは、次の4つのオプションのみを使用します。

sites = list of sites

フロントエンドがsmpppdを検索するサイトのリスト。フロントエンドは、ここに記述されている順序でオプションをテストします。localは、ローカルsmpppdへの接続の確立を指定します。gatewayは、ゲートウェイ上のsmpppdをポイントします。config-fileは、/etc/smpppd-c.confファイルのserverオプションとportオプションで指定されたsmppdに対して接続を確立することを指定しています。slpは、フロントエンドを、SLPで検出されたsmppdに接続することを指定します。

server = server

smpppdを実行するホスト。

port = port

smpppdを実行するポート。

password = password

smpppdに選択されたパスワード。

smpppdがアクティブな場合、アクセスしようとします。たとえば、cinternet --verbose --interface-listとします。この時点でアクセスできない場合は、smpppd-c.conf(5)およびcinternet(8)のマニュアルページを参照してください。