ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris の管理: IP サービス Oracle Solaris 11 Information Library (日本語) |
TCP ラッパーを使って TCP サービスのアクセスを制御する方法
13. DHCP コマンドと DHCP ファイル (リファレンス)
16. IP セキュリティーアーキテクチャー (リファレンス)
20. Oracle Solaris の IP フィルタ (概要)
ネットワークシステムを構成するときは、次の構成情報が必要です。
各システムのホスト名。
各システムの IP アドレスとネットマスク。ネットワークがサブネットに分割されている場合、各サブネットのシステムに適用するサブネット番号と IP アドレススキーマが必要です。それぞれのネットマスクも含みます。
各システムが属しているドメイン名。
デフォルトのルーターアドレス。
この情報は、各ネットワークにルーターが 1 つしか接続していないような単純なネットワークトポロジの場合、またはルーターが RDISC (Router Discovery Protocol) や RIP (Routing Information Protocol) などの経路制御プロトコルを実行しない場合に指定します。Oracle Solaris でサポートされているルーターの詳細と、経路制御プロトコルの一覧については、『Solaris のシステム管理 (IP サービス)』の「IPv4 ネットワーク上でのパケット転送と経路制御」を参照してください。
注 - Oracle Solaris のインストール中にネットワークを構成できます。手順については、『Oracle Solaris 11 システムのインストール』を参照してください。
このドキュメントの手順では、OS をインストールしたあとにネットワークを構成することを想定しています。
以降のセクションの図 3-1 を、ネットワークのコンポーネントシステムを構成するための参照情報として使用してください。
複数のルーターとネットワークを持つサイトでは、通常そのネットワークトポロジは単一の経路制御ドメイン、つまり「自律システム (AS: Autonomous System)」として管理されます。
図 3-1 複数の IPv4 ルーターを備えた自律システム
図 3-1 は、3 つのローカルネットワーク 10.0.5.0、172.20.1.0、および 192.168.5.0 に分割された AS を示しています。ネットワークは次の種類のシステムで構成されています。
ルーターは経路制御プロトコルを使用して、ローカルネットワーク内で、または外部ネットワークに対して、ネットワークパケットを発信元から着信先に伝送または経路制御する方法を管理します。Oracle Solaris でサポートされている経路制御プロトコルについては、「Oracle Solaris の経路制御プロトコルの表」を参照してください。
ルーターは次のように分類されます。
デフォルトルーターは、ローカルネットワーク内のパケット経路制御を管理し、それ自体にいくつかのローカルネットワークを含めることができます。たとえば、図 3-1 では、ルーター 1 は 192.168.5 のデフォルトルーターとして機能します。同時に、ルーター 1 は 10.0.5.0 の内部ネットワークにも接続されています。ルーター 2 のインタフェースは 10.0.5.0 および 172.20.1.0 の内部ネットワークに接続しています。
パケット転送ルーターは、内部ネットワーク間でパケットを転送しますが、経路制御プロトコルは実行しません。図 3-1 で、ルーター 3 はパケット転送ルーターで、172.20.1 および 192.168.5 ネットワークに接続されています。
クライアントシステム
次の手順では、IP インタフェースの基本的な構成を実行する例を示します。
始める前に
システムのデータリンクの名前を変更する必要があるかどうかを判断します。通常は、データリンクにデフォルトで割り当てられている総称名を使用します。リンク名を変更するには、『Oracle Solaris 管理: ネットワークインタフェースとネットワーク仮想化』の「データリンクの名前を変更する方法」を参照してください。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
# dladm show-phys
このコマンドは、システムに取り付けられている物理ネットワークカードとその一部のプロパティーを表示します。このコマンドの詳細については、『Oracle Solaris 管理: ネットワークインタフェースとネットワーク仮想化』の「データリンクの物理属性に関する情報を表示する方法」を参照してください。
# dladm show-link
このコマンドは、データリンクと、それら対して設定されている特定のプロパティーを表示します。リンクが作成されている物理カードが含まれます。
# ipadm create-interface-class interface
作成できる次の 3 つのインタフェースのクラスのいずれかを指します。
IP インタフェース。このインタフェースクラスは、ネットワーク構成を実行するときに作成するもっとも一般的なものです。このインタフェースクラスを作成するには、create-ip サブコマンドを使用します。
STREAMS 仮想ネットワークインタフェースドライバ (VNI インタフェース)。このインタフェースクラスを作成するには、create-vni サブコマンドを使用します。VNI デバイスまたはインタフェースの詳細は、vni(7d) のマニュアルページを参照してください。
IPMP インタフェース。このインタフェースは IPMP グループを構成するときに使用します。このインタフェースクラスを作成するには、create-ipmp サブコマンドを使用します。IPMP グループの詳細については、『Oracle Solaris 管理: ネットワークインタフェースとネットワーク仮想化』の第 14 章「IPMP の紹介」を参照してください。
インタフェースの名前を指します。この名前はインタフェースが作成される基になるリンクの名前と同一です。
注 - IP インタフェースに IP アドレスを割り当てる前に IP インタフェースを作成する必要があります。
次の構文は、インタフェースに静的アドレスを割り当てます。IP アドレスを割り当てるためのほかのオプションについては、ipadm(1M) のマニュアルページを参照してください。
# ipadm create-addr -T address-type -a address/prefixlen addrobj
インタフェースに割り当てられる IP アドレスの種類を指定します。これは static、dhcp、または addrconf のいずれかです。Addrconf は、自動的に生成される IPv6 アドレスを指します。
インタフェースに構成する IP アドレスを指定します。ローカルアドレスのみ指定するか、トンネル構成の場合はローカルアドレスとリモートアドレスの両方を指定することができます。通常、ローカルアドレスのみ割り当てます。この場合、-a オプションを使用して、-a address のようにアドレスを直接指定します。アドレスは自動的にローカルアドレスと見なされます。
トンネルを構成する場合、システムのローカルアドレスと、着信先システムのリモートアドレスの両方を指定することが必要な場合があります。この場合、2 つのアドレスを識別するために、local および remote を指定する必要があり、-a local=local-addr,remote= remote-addr のようになります。トンネルの構成の詳細については、Chapter 6, IP トンネルの構成を参照してください。
数値 IP アドレスを使用する場合、アドレスは CIDR 表記の address/ prefixlen 形式を使用します。たとえば、1.2.3.4/24 となります。prefixlen オプションの説明を参照してください。
オプションとして、address には数値 IP アドレスの代わりにホスト名を指定できます。ホスト名の使用は、そのホスト名に対応する数値 IP アドレスが /etc/hosts ファイル内に定義されている場合に有効です。ファイル内に数値 IP アドレスが定義されていない場合、数値は name-service/switch サービス内の host に対して指定されたリゾルバ順を使用して一意に取得されます。あるホスト名について複数のエントリが存在する場合はエラーが生成されます。
注 - ブートプロセス中、IP アドレスの作成は、ネームサービスがオンラインになるより前に行われます。したがって、ネットワーク構成で使用されるホスト名が、/etc/hosts ファイル内で定義されているようにする必要があります。
CIDR 表記を使用するときに IPv4 アドレスの一部となるネットワーク ID の長さを指定します。アドレス 12.34.56.78/24 では、24 が prefixlen です。prefixlen を含めない場合、ネットマスクは name-service/switch サービスの netmask に示されるシーケンスに従うか、クラスフルアドレスセマンティクスを使用して計算されます。
システム内で使用される一意の IP アドレスまたは一連のアドレスの識別子を指定します。アドレスは IPv4 または IPv6 タイプのいずれかです。識別子は interface/ user_specified_string の形式を使用します。
interface はアドレスが割り当てられる IP インタフェースを指します。interface 変数は、IP インタフェースが構成されるデータリンクの名前を反映する必要があります。
user-specified-string は英字で始まり最大長が 32 文字の英数字の文字列を指します。後続の処理で、ipadm show-addr や ipadm delete-addr などのシステム内のアドレスを管理する ipadm サブコマンドを使用するとき、数値 IP アドレスではなく addrobj を参照できます。
確認する情報に応じて、次のいずれかのコマンドを使用できます。
インタフェースの一般的なステータスを表示します。
# ipadm show-if [interface]
インタフェースを指定しない場合、システム内のすべてのインタフェースについての情報が表示されます。
インタフェースのアドレス情報を表示します。
# ipadm show-addr [addrobj]
addrobj を指定しない場合、システム内のすべてのアドレスオブジェクトの情報が表示されます。
ipadm show-* サブコマンドの出力の詳細については、『Oracle Solaris 管理: ネットワークインタフェースとネットワーク仮想化』の「IP インタフェースとアドレスの監視」を参照してください。
このファイルのエントリは、IP アドレスと対応するホスト名で構成されます。
注 - このステップは、ホスト名を使用する静的 IP アドレスを構成する場合にのみ適用されます。DHCP アドレスを構成する場合、/etc/hosts ファイルを更新する必要はありません。
例 3-1 ネットワークインタフェースを静的アドレスで構成する
# dladm show-phys LINK MEDIA STATE SPEED DUPLEX DEVICE net3 Ethernet up 100Mb full bge3 # dladm show-link LINK CLASS MTU STATE BRIDGE OVER net3 phys 1500 up -- -- # ipadm create-ip net3 # ipadm create-addr -T static -a 192.168.84.3/24 net3/v4static # ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes -- net3 ip ok yes -- # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/? static ok 127.0.0.1/8 net3/v4 static ok 192.168.84.3/24 # vi /etc/hosts # Internet host table # 127.0.0.1 localhost 10.0.0.14 myhost 192.168.84.3 campus01
campus01 が /etc/hosts ファイル内ですでに定義されている場合、次のアドレスを割り当てるときにこのホスト名を使用できます。
# ipadm create-addr -T static -a campus01 net3/v4static
例 3-2 ネットワークインタフェースに IP アドレスを自動的に構成する
この例では、前の例と同じネットワークデバイスを使用しますが、IP インタフェースがアドレスを DHCP サーバーから受け取るように構成します。
# dladm show-phys LINK MEDIA STATE SPEED DUPLEX DEVICE net3 Ethernet up 100Mb full bge3 # dladm show-link LINK CLASS MTU STATE BRIDGE OVER net3 phys 1500 up -- -- # ipadm create-ip net3 # ipadm create-addr -T dhcp net3/dhcp # ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes -- net3 ip ok yes -- # ipadm show-addr net3/dhcp ADDROBJ TYPE STATE ADDR net3/dhcp dhcp ok 10.8.48.242/24 # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/? static ok 127.0.0.1/8 net3/dhcp dhcp ok 10.8.48.242/24
このセクションでは、ローカルファイルモードまたはネットワーククライアントモードのいずれかで動作するシステムを設定する手順について説明します。ローカルファイルモードで動作するときは、システムはローカルディレクトリにあるファイルからすべての TCP/IP 構成情報を取得します。ネットワーククライアントモードでは、構成情報はリモートネットワーク構成サーバーによって、ネットワーク内のすべてのシステムに提供されます。
一般的に、ネットワーク内の次のようなサーバーはローカルファイルモードで動作します。
ネットワーク構成サーバー
NFS サーバー
NIS、LDAP、または DNS のサービスを提供するネームサーバー
メールサーバー
ルーター
クライアントはいずれのモードでも動作できます。したがって、ネットワーク内では次の図に示すように、これらのモードを組み合わせて、さまざまなシステムを構成できます。
図 3-2 IPv4 ネットワークトポロジに属するシステムのシナリオ
図 3-2 は、192.9.200 ネットワーク内のシステムを示しています。
すべてのシステムは、組織ドメイン deserts.worldwide.com に属しています。
sahara は構成サーバーです。これはサーバーとしてローカルファイルモードで動作し、TCP/IP 構成情報はシステムのローカルディスクから取得します。
注 - クライアントがネットワーククライアントモードで動作するように構成する場合、これらのクライアントに構成情報を提供するネットワーク構成サーバーを少なくとも 1 つ構成する必要があります。
tenere、nubian、および faiyum はネットワーク内のクライアントです。tenere および nubian はローカルファイルモードで動作します。faiyum のローカルディスクに関係なく、このシステムはネットワーククライアントモードで動作するように構成されています。
timbuktu はルーターとして構成されているため、ローカルファイルモードで動作します。このシステムには 2 つの NIC が組み込まれ、それぞれ固有の IP インタフェースが構成されています。第 1 の IP インタフェースは timbuktu という名前で、ネットワーク 192.9.200 に接続します。第 2 の IP インタフェースは timbuktu-201 という名前で、ネットワーク 192.9.201 に接続します。
2 つの構成モードの概要の詳細については、『Solaris のシステム管理 (IP サービス)』の「ホスト構成モードの決定」を参照してください
『Solaris のシステム管理 (IP サービス)』の「ローカルファイルモードで実行するシステム」に記載されているように、ローカルファイルモードで動作するシステムを構成するには、次の手順を使用します。
手順については、「IP インタフェースを構成する方法」を参照してください。
Oracle Solaris インストールプログラムは、プライマリネットワークインタフェース、ループバックアドレス、およびインストール時に構成された追加インタフェース (該当する場合) に対する各エントリを作成します。
このファイルは、デフォルトルーターの名前とルーターの IP アドレスも含む必要があります。
たとえば、nis/domain SMF サービスの domainname プロパティーの値として deserts.worldwide.com を指定します。
注 - DHCP サービスを使用中の場合、このステップをスキップします。
エントリを作成するには、network-number netmask の形式を使用します。たとえば、Class C ネットワーク番号 192.168.83 の場合は、次のように入力します。
192.168.83.0 255.255.255.0
CIDR アドレスの場合は、ネットワークの接頭辞をそれと同等の 10 進ドット表記に変換します。ネットワーク接頭辞とその 10 進ドット表記は、表 1-1 を参照してください。たとえば、192.168.3.0/22 という CIDR ネットワーク接頭辞を表現するには、次のような表記を使用します。
192.168.3.0 255.255.252.0
# svccfg -s name-service/switch setprop config/host = astring: "files nis" # svccfg -s name-service/switch:default refresh
ネットワーククライアントモードに構成する各ホスト上で、次の手順を実行します。
始める前に
ネットワーククライアントは、各自の構成情報をネットワーク構成サーバーから受け取ります。したがって、あるシステムをネットワーククライアントとして構成するときは、このネットワーク用にネットワーク構成サーバーが少なくとも 1 つは設定されていることを確認してください。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
手順については、「IP インタフェースを構成する方法」を参照してください。
# cat /etc/inet/hosts # Internet host table # 127.0.0.1 localhost
インストールサーバーおよびブートサーバーの設定の情報については、『Oracle Solaris 11 システムのインストール』を参照してください。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
# mkdir /tftpboot
このコマンドにより、システムは、TFTP、bootparams、RARP のサーバーに構成されます。
# ln -s /tftpboot/. /tftpboot/tftpboot
行は次のようになるはずです。
tftp dgram udp6 wait root /usr/sbin/in.tftpd in.tftpd -s /tftpboot
これによって、in.tftpd は、/tftpboot にあるファイルだけから読み取られます。
このデータベース内のエントリは、次の形式を使用します。
MAC Address host name #comment
詳細は、ethers(4) のマニュアルページを参照してください。
このデータベースの編集については、bootparams(4) のマニュアルページを参照してください。
# /usr/sbin/inetconv
# svcs network/tftp/udp6
次のような出力が表示されます。
STATE STIME FMRI online 18:22:21 svc:/network/tftp/udp6:default
in.tftpd デーモンはサービス管理機能によって管理されます。in.tftpd に対する管理アクション (有効化、無効化、再起動など) を実行するには、svcadm コマンドを使用します。このサービスを起動したり、再起動したりする責任は inetd に委譲されています。in.tftpd の構成を変更したり、構成情報を表示したりするには、inetadm コマンドを使用します。このサービスのステータスを照会するには、svcs コマンドを使用します。サービス管理機能の概要については、『Oracle Solaris の管理: 一般的なタスク』の第 6 章「サービスの管理 (概要)」を参照してください。
ルーターは 2 つ以上のネットワーク間のインタフェースを提供します。したがって、ルーターの物理ネットワークインタフェースに、固有の名前と IP アドレスを割り当てる必要があります。これで、各ルーターは、そのプライマリネットワークインタフェースのホスト名と IP アドレスに加えて、増設した各ネットワークインタフェースについて少なくとも 1 つずつ、一意な名前と IP アドレスを持つことになります。
次の手順を使えば、物理インタフェースが 1 つだけのシステム (デフォルトではホスト) をルーターとして構成することもできます。システムを PPP リンクの 1 つのエンドポイントとして使用する場合、単一インタフェースのシステムをルーターとして構成するときがあります (『Oracle Solaris のシステム管理 (ネットワークサービス)』の「ダイアルアップ PPP リンクの計画」を参照)。
次の手順では、システムのインストール後にルーターのインタフェースを構成していることを想定しています。
始める前に
ルーターを物理的にネットワークに取り付けあとに、「システムをローカルファイルモード用に構成する方法」の説明に従って、ルーターがローカルファイルモードで動作するように構成します。これで、ネットワーク構成サーバーがダウンしても、ルーターが確実にブートされるようになります。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
システムがパケットを経路指定するネットワークの IP アドレスを、各 IP インタフェースに構成するようにします。したがって、システムで 192.168.5.0 および 10.0.5.0 のネットワークに対応する場合、ネットワークごとに 1 つの NIC を構成する必要があります。
注意 - IPv4 ルーターで DHCP を使用するように構成する場合、DHCP 管理について十分な知識を持っておく必要があります。 |
たとえば、ルーター 1 の 2 つのインタフェースに割り当てた名前を、それぞれ krakatoa および krakatoa-1 とします。/etc/inet/hosts ファイルのエントリは次のようになります。
192.168.5.1 krakatoa #interface for network 192.168.5.0 10.0.5.1 krakatoa-1 #interface for network 10.0.5.0
「システムをローカルファイルモード用に構成する方法」を参照してください。
たとえば、192.168.5.0 などの従来の IPv4 アドレス表記法の場合は、次のように入力します。
192.168.5.0 255.255.255.0
# ipadm set-prop -p forwarding=on ipv4
次のいずれかのコマンド構文を使用します。
# routeadm -e ipv4-routing -u
# svcadm enable route:default
in.routed デーモンに関連付けられている SMF FMRI は svc:/network/routing/route です。
経路制御プロトコルを開始するときに、経路制御デーモン /usr/sbin/in.routed は自動的に経路制御テーブルを更新します。このプロセスのことを動的経路制御と呼びます。経路制御の種類の詳細は、「経路制御テーブルと経路制御の種類」を参照してください。routeadm コマンドについては、routeadm(1M) のマニュアルページを参照してください。
例 3-3 ネットワークのデフォルトルーターを構成する
この例は、図 3-1 に基づきます。ルーター 2 には有線ネットワーク接続が 2 つあり、1 つはネットワーク 172.20.1.0、もう 1 つはネットワーク 10.0.5.0 に接続されています。この例では、ルーター 2 が 172.20.1.0 ネットワークのデフォルトルーターになるように構成する方法を示します。またこの例では、「システムをローカルファイルモード用に構成する方法」に説明されているように、ルーター 2 がローカルファイルモードで動作するように構成されていることを想定しています。
スーパーユーザーになるか、同等の役割になったあと、システムのインタフェースのステータスを調べます。
# dladm show-link LINK CLASS MTU STATE BRIDGE OVER net0 phys 1500 up -- -- net1 phys 1500 up -- -- net2 phys 1500 up -- -- # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 net0/v4 static ok 172.20.1.10/24
net0 だけが IP アドレスで構成されています。ルーター 2 をデフォルトルーターにするには、net1 インタフェースを 10.0.5.0 ネットワークに物理的に接続します。
# ipadm create-ip net1 # ipadm create-addr -T static -a 10.0.5.10/24 net1/v4 # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 net0/v4 static ok 172.20.1.10/24 net1/v4 static ok 10.0.5.10/24
次に、新たに構成したインタフェースとその接続先ネットワークの情報を使用して、次のネットワークデータベースを更新します。
# vi /etc/inet/hosts 127.0.0.1 localhost 172.20.1.10 router2 #interface for network 172.20.1 10.0.5.10 router2-out #interface for network 10.0.5 # vi /etc/inet/netmasks 172.20.1.0 255.255.255.0 10.0.5.0 255.255.255.0
最後に、パケット転送と in.routed 経路制御デーモンを有効にします。
# ipadm set-prop -p forwarding=on ipv4 # svcadm enable route:default
これで、IPv4 パケット転送と RIP による動的経路制御がルーター 2 で有効になりました。ただし、ネットワーク 172.20.1.0 のデフォルトルーターの構成はまだ完了していません。次の作業を行う必要があります。
172.20.1.0 ネットワークの各ホストを変更して、ホストが経路制御情報をこの新しいデフォルトルーターから取得するようにします。詳細については、「単一インタフェースホストで静的経路制御を有効にする方法」を参照してください。
ルーター 2 の経路制御テーブルで、ボーダールーターへの静的ルートを定義します。詳細については、「経路制御テーブルと経路制御の種類」を参照してください。
ルーターとホストの両方が経路制御テーブルを管理します。経路制御テーブルには、システムのデフォルトのローカルネットワークも含め、システムで知られているネットワークの IP アドレスがリストされています。このテーブルには、既知の各ネットワークに対するゲートウェイシステムの IP アドレスもリストされています。ゲートウェイとは、発信パケットを受け取り、それらをローカルネットワークの 1 ホップ外側に転送するシステムです。
次は、IPv4 のみのネットワーク上のシステムについての単純な経路制御テーブルです。
Routing Table: IPv4 Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ --------- default 172.20.1.10 UG 1 532 net0 224.0.0.0 10.0.5.100 U 1 0 net1 10.0.0.0 10.0.5.100 U 1 0 net1 127.0.0.1 127.0.0.1 UH 1 57 lo0
Oracle Solaris システムでは、静的および動的という 2 種類の経路制御を構成できます。1 つのシステムに、これらの経路制御のどちらか一方を構成することも、両方を構成することもできます。動的経路制御を実装するシステムは、IPv4 ネットワークの場合は RIP、IPv6 ネットワークの場合は RIPng などの経路制御プロトコルを利用して、ネットワークトラフィックを経路制御し、テーブル内の経路制御情報を更新します。静的経路制御の場合、経路制御情報は route コマンドを使用して手動で維持されます。詳細は、route(1M) のマニュアルページを参照してください。
ローカルネットワークまたは自律システムの経路制御を構成するときは、特定のルーターやホストでどの種類の経路制御をサポートするかを検討してください。
次の表に、経路制御の種類と、それぞれの種類の経路制御を適用するのに最も適したネットワークの条件を示します。
|
図 3-1 に示された AS は、静的経路制御と動的経路制御の両方を組み合わせて使用しています。
注 - 同じ宛先へのルートが 2 つあっても、システムで負荷分散やフェイルオーバーが自動的に行われるわけではありません。これらの機能が必要な場合、『Oracle Solaris 管理: ネットワークインタフェースとネットワーク仮想化』の第 14 章「IPMP の紹介」で説明するように、IPMP を使用します。
通常のユーザーアカウントを使用して、次の形式の netstat コマンドを実行します。
% netstat -rn
次のような出力が表示されます。
Routing Table: IPv4 Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ --------- 192.168.5.125 192.168.5.10 U 1 5879 net0 224.0.0.0 198.168.5.10 U 1 0 net0 default 192.168.5.10 UG 1 91908 127.0.0.1 127.0.0.1 UH 1 811302 lo0
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
# route flush
# route -p add -net network-address -gateway gateway-address
リブート後も保持される必要のあるルートを作成します。現在のセッションだけに有効なルートを作成する場合は、-p オプションを使用しないでください。
network-address で指定されたアドレスを持つネットワークへのルートであることを示します。
指定されたルートのゲートウェイシステムの IP アドレスが gateway-address であることを示します。
例 3-4 経路制御テーブルに静的ルートを追加する
次の例は、図 3-1 のルーター 2 に静的ルートを追加する方法を示しています。静的ルートは AS のボーダールーター 10.0.5.150 で必要です。
ルーター 2 の経路制御テーブルを表示するために、次の手順を実行します。
# netstat -rn Routing Table: IPv4 Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ --------- default 172.20.1.10 UG 1 249 ce0 224.0.0.0 172.20.1.10 U 1 0 ce0 10.0.5.0 10.0.5.20 U 1 78 bge0 127.0.0.1 127.0.0.1 UH 1 57 lo0
この経路制御テーブルは、ルーター 2 に既知のルートが 2 つあることを示しています。デフォルトのルートは、ルーター 2 の 172.20.1.10 インタフェースをゲートウェイとして使用します。2 番目のルート 10.0.5.0 は、ルーター 2 で実行中の in.routed デーモンによって検出されました。このルートのゲートウェイはルーター 1 で、その IP アドレスは 10.0.5.20 です。
ネットワーク 10.0.5.0 にはボーダールーターとして機能するゲートウェイがあります。このネットワークへのルートをもう 1 つ追加するには、次の手順を実行します。
# route -p add -net 10.0.5.0/24 -gateway 10.0.5.150 add net 10.0.5.0: gateway 10.0.5.150
これで、IP アドレス 10.0.5.150/24 を持つボーダールーターへのルートが、経路制御テーブルに追加されました。
# netstat -rn Routing Table: IPv4 Destination Gateway Flags Ref Use Interface -------------------- -------------------- ----- ----- ------ --------- default 172.20.1.10 UG 1 249 ce0 224.0.0.0 172.20.1.10 U 1 0 ce0 10.0.5.0 10.0.5.20 U 1 78 bge0 10.0.5.0 10.0.5.150 U 1 375 bge0 127.0.0.1 127.0.0.1 UH 1 57 lo0
Oracle Solaris では、複数のインタフェースを持つシステムはマルチホームホストと見なされます。マルチホームホストのインタフェースは、異なる物理ネットワーク上または同じ物理ネットワーク上のさまざまなサブネットに接続します。
複数のインタフェースが同じサブネットに接続しているシステムでは、最初にそれらのインタフェースを IPMP グループ内に構成する必要があります。そうしない場合、システムはマルチホームホストになることができません。IPMP の詳細については、『Oracle Solaris 管理: ネットワークインタフェースとネットワーク仮想化』の第 14 章「IPMP の紹介」を参照してください。
マルチホームホストは IP パケットを転送しませんが、経路制御プロトコルを実行するように構成できます。一般に、次のような種類のシステムをマルチホームホストとして構成します。
NFS サーバー、特に大規模なデータセンターとして機能する NFS サーバーを複数のネットワークに接続することによって、多数のユーザー間でファイルを共有できるようになります。この種のサーバーは経路制御テーブルを備えている必要はありません。
データベースサーバーは、NFS サーバーと同様に、多数のユーザーに資源を提供する目的で複数のネットワークインタフェースを持つことができます。
ファイアウォールゲートウェイは、企業のネットワークとインターネットなどの公共ネットワークとの間の接続を提供するシステムです。管理者は、セキュリティーの手段としてファイアウォールを設定します。ファイアウォールとして構成されたホストは、ホストのインタフェースに接続されたネットワーク間でのパケット交換を行いません。ただしこの場合でも、承認ユーザーに対する ssh など、ホストは標準的な TCP/IP サービスを提供します。
注 - マルチホームホストのいずれかのインタフェースでファイアウォールの種類が異なるときは、ホストのパケットの予期しない混乱を回避するようにしてください。この問題は、特にステートフルなファイアウォールで発生します。解決策の 1 つは、ステートレスなファイアウォールを構成することです。ファイアウォールの詳細については、『Oracle Solaris の管理: セキュリティーサービス』の「ファイアウォールシステム」またはサードパーティー製のファイアウォールのドキュメントを参照してください。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
「IP インタフェースを構成する方法」を参照してください。
# ipadm show-prop -p forwarding ipv4 PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE ipv4 forwarding rw on -- off on,off ipadm set-prop -p forwarding=off ipv4
次のいずれかのコマンド構文を使用します。
# routeadm -e ipv4-routing -u
# svcadm enable route:default
in.routed デーモンに関連付けられている SMF FMRI は svc:/network/routing/route です。
例 3-5 マルチホームホストの構成
次の例は、図 3-1 に示すマルチホームホストを構成する方法を示しています。この例で、システムのホスト名は hostc です。このホストには 2 つのインタフェースがあり、両方ともネットワーク 192.168.5.0 に接続されています。
まず、システムのインタフェースのステータスを表示します。
# dladm show-link LINK CLASS MTU STATE BRIDGE OVER net0 phys 1500 up -- -- net1 phys 1500 up -- -- # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 net0/v4 static ok 192.168.5.82/24
dladm show-link コマンドの報告は、hostc に 2 つのデータリンクがあることを示しています。ただし、net0 だけに IP アドレスが構成されています。hostc をマルチホームホストとして構成するには、net1 に、同じ 192.168.5.0 ネットワーク内の IP アドレスを構成します。net1 のベースとなる物理 NIC がネットワークに物理的に接続されていることを確認してください。
# ipadm create-ip net1 # ipadm create-addr -T static -a 192.168.5.85/24 bge0/v4 # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 net0/v4 static ok 192.168.5.82/24 net1/v4 static ok 192.168.5.85/24
次に、net1 インタフェースを /etc/hosts データベースに追加します。
# vi /etc/inet/hosts 127.0.0.1 localhost 192.168.5.82 hostc #primary network interface for host3 192.168.5.85 hostc-2 #second interface
次に、パケット転送が hostc 上で実行中の場合、このサービスをオフにします。
# ipadm show-prop -p forwarding ipv4 PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE ipv4 forwarding rw on -- off on,off # ipadm set-prop -p forwarding=off ipv4 # routeadm Configuration Current Current Option Configuration System State --------------------------------------------------------------- IPv4 routing enabled enabled IPv6 routing disabled disabled Routing services "route:default ripng:default"
routeadm コマンドの報告は、in.routed デーモンによる動的経路制御が現在有効になっていることを示しています。
単一インタフェースシステムは、静的経路制御または動的経路制御のいずれかで構成できます。静的経路制御では、ホストはデフォルトルーターのサービスを利用して経路制御情報を取得する必要があります。次の手順では、両方の種類の経路制御を有効にする方法を示します。
次の手順を使用して、マルチホームホストで静的経路制御を構成することもできます。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
手順については、「IP インタフェースを構成する方法」を参照してください。
# routeadm Configuration Current Current Option Configuration System State --------------------------------------------------------------- IPv4 routing enabled disabled IPv6 routing disabled disabled Routing services "route:default ripng:default" # svcadm disable route:default
# # ipadm show-prop -p forwarding ipv4 PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE ipv4 forwarding rw on -- off on,off # ipadm set-prop -p forwarding=off ipv4
例 3-6 単一インタフェースシステムの静的経路制御を構成する
次の例は、図 3-1 に示す 172.20.1.0 ネットワーク上にある単一インタフェースシステム hostb に静的経路制御を構成する方法を示しています。hostb はそのデフォルトルーターとしてルーター 2 を使用する必要があります。この例は、システムの IP インタフェースがすでに構成されていることを想定しています。
まず、管理者権限で hostb にログインします。次に、システムに /etc/defaultrouter ファイルが存在するかどうかを調べます。
# cd /etc # ls | grep defaultrouter # vi /etc/defaultrouter 172.20.1.10
IP アドレス 172.20.1.10 はルーター 2 に属しています。
# vi /etc/inet/hosts 127.0.0.1 localhost 172.20.1.18 host2 #primary network interface for host2 172.20.1.10 router2 #default router for host2 # ipadm show-prop -p forwarding ipv4 PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE ipv4 forwarding rw on -- off on,off # ipadm set-prop -p forwarding=off ipv4 # routeadm Configuration Current Current Option Configuration System State --------------------------------------------------------------- IPv4 routing enabled disabled IPv6 routing disabled disabled Routing services "route:default ripng:default" # svcadm disable route:default
経路制御プロトコルを使用した動的経路制御は、システム上で経路制御を管理するもっとも簡単な方法です。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
手順については、「IP インタフェースを構成する方法」を参照してください。
/etc/defaultrouter ファイルが空の場合、システムは強制的に動的経路制御を使用します。
# ipadm set-prop -p forwarding=off ipv4
次のコマンドのいずれかを使用します。
# routeadm -e ipv4-routing -u
# svcadm enable route:default
例 3-7 単一インタフェースシステムで動的経路制御を実行する
次の例は、図 3-1 に示すネットワーク 192.168.5.0 上にある単一インタフェースシステム hosta に動的経路制御を構成する方法を示しています。システムはルーター 1 をデフォルトルーターとして使用します。この例は、システムの IP インタフェースがすでに構成されていることを想定しています。
まず、管理者権限で hosta にログインします。次に、システムに /etc/defaultrouter ファイルが存在するかどうかを調べます。
# cd /etc # ls | grep defaultrouter defaultrouter # cat defaultrouter 192.168.5.10
ファイルには、ルーター 1 の IP アドレスである 192.168.5.10 のエントリが正しく含まれています。
# routeadm Configuration Current Current Option Configuration System State --------------------------------------------------------------- IPv4 routing disabled disabled IPv6 routing disabled disabled Routing services "route:default ripng:default" # svcadm enable route:default # ipadm show-prop -p forwarding ipv4 PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE ipv4 forwarding rw on -- off on,off # ipadm set-prop -p forwarding=off ipv4
サブネットを使用しないネットワークからサブネットを使用するネットワークに変更する場合、次の一覧に含まれるタスクを実行します。この一覧では、サブネットスキーマをすでに準備していることを想定しています。概要については、『Solaris のシステム管理 (IP サービス)』の「サブネット化とは」を参照してください。
新しいサブネット番号を持つ一連の IP アドレスを、サブネットに属するシステムに割り当てます。
参照情報については、「IP インタフェースを構成する方法」を参照してください。
正しい IP アドレスとネットマスクを各システムの /etc/netmasks ファイルに追加します。
各システムの /etc/inet/hosts ファイルを、ホスト名に対応する正しい IP アドレスで改訂します。
サブネット内のすべてのシステムをリブートします。
次の手順はサブネットと密接に関係しています。当初はサブネットを用いずにネットワークを構成し、ずっとあとでサブネットを実装する場合、次の手順を実行して変更を実装します。
この手順では、すでにインストールされているシステムの IPv4 アドレス、ホスト名、およびその他のネットワークパラメータを変更する方法について説明します。サーバーまたはネットワーク接続されたスタンドアロンシステムの IP アドレスを変更する場合は、この手順を使用します。この手順は、ネットワーククライアントやネットワーク機器には適用されません。この手順で作成する構成は、リブート後も保持されます。
注 - ここで説明する手順は、プライマリネットワークインタフェースの IPv4 アドレスを変更する場合にのみ適用されます。別のインタフェースをシステムに追加するには、「IP インタフェースを構成する方法」を参照してください。
次の手順では、IPv4 アドレスとサブネットマスクを指定するときに、ほとんどの場合は IPv4 で一般的な 10 進ドット表記を使用しています。この手順で使用されるすべてのファイルでは、CIDR 表記を使用して IPv4 アドレスを指定することもできます。CIDR 表記の概要については、『Solaris のシステム管理 (IP サービス)』の「CIDR 書式の IPv4 アドレス」を参照してください。
詳細は、『Oracle Solaris の管理: セキュリティーサービス』の「管理権限を取得する方法」を参照してください。
ipadm コマンドでは、IP アドレスを直接変更することはできません。最初に、修正対象の IP アドレスを表すアドレスオブジェクトを削除します。次に、同じアドレスのオブジェクト名を使って、新しいアドレスを割り当てます。
# ipadm delete-addr addrobj # ipadm create-addr -T static IP-address addrobj
# svccfg -s svc:/system/identity:node setprop config/nodename = astring: hostname
# reboot -- -r
例 3-8 IP アドレスおよびホスト名を変更する
この例では、ホストの名前、プライマリネットワークインタフェースの IP アドレス、およびサブネットマスクを変更する方法を示しています。プライマリネットワークインタフェース bge0 の IP アドレスが 10.0.0.14 から 192.168.34.100 に変わります。
# ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 bge0/v4 static ok 10.0.0.14/24 # ipadm delete-addr bge0/v4 # ipadm create-addr -T static -a 192.168.34.100/24 bge0/v4 # svccfg -s svc:/system/identity:node setprop config/nodename = astring: mynewhostname # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 bge0/v4new static ok 192.168.34.100/24 # hostname mynewhostname
参照
プライマリネットワークインタフェース以外のインタフェースの IP アドレスを変更するには、『Oracle Solaris の管理: 一般的なタスク』および「IP インタフェースを構成する方法」を参照してください。