ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Oracle Solaris 11.1 ネットワークの構成と管理 Oracle Solaris 11.1 Information Library (日本語) |
このセクションでは、ノードがホストまたはサーバーのときに、そのノードで IPv6 が有効なインタフェースの構成を変更する方法について説明します。IPv6 対応のインタフェースでは、通常はアドレスの自動構成を使用するようにしてください。ただし、インタフェースの IPv6 アドレスの変更が必要な場合は、このセクションのタスクの説明に従って変更できます。
一般的な 3 つのタスクを次の順番で実行する必要があります。
IPv6 アドレスの自動構成を無効にします。「IPv6 アドレスの自動構成を無効にする方法」を参照してください。
ホストの一時アドレスを作成します。「一時アドレスを構成する方法」を参照してください。
インタフェース ID の IPv6 トークンを構成します。「ユーザー指定の IPv6 トークンを構成する方法」を参照してください。
IPv6 「一時アドレス」には、インタフェースの MAC アドレスの代わりに、インタフェース ID としてランダムに生成された 64 ビットの数字が含まれます。匿名にしておきたい IPv6 ノード上の任意のインタフェースに対しては、一時アドレスを使用できます。たとえば、公開 Web サーバーにアクセスする必要があるホストのインタフェースに対しては、一時アドレスを使用したい場合もあります。一時アドレスには、IPv6 プライバシー拡張が実装されます。これらの拡張機能については、RFC 3041“Privacy Extensions for Stateless Address Autoconfiguration in IPv6” を参照してください。
1 つまたは複数のインタフェースに対して一時アドレスを有効にする必要がある場合は、/etc/inet/ndpd.conf ファイルを使用します。しかし、標準の自動構成された IPv6 アドレスとは異なり、一時アドレスは、64 ビットのサブネット接頭辞とランダムに生成された 64 ビット数から構成されます。このランダムな数は、IPv6 アドレスのインタフェース ID 部分になります。リンクローカルアドレスでは、一時アドレスはインタフェース ID としては生成されません。
一時アドレスの preferred lifetime のデフォルトは、1 日です。一時アドレスの生成を有効にした場合、/etc/inet/ndpd.conf ファイルでは次の変数も構成できます。
一時アドレスが存在できる寿命。この寿命を過ぎると、そのアドレスはホストから削除されます。
一時アドレスが無効にされるまでの時間。この時間は、valid lifetime よりも短くします。
preferred lifetime が満了するまでの時間。この時間内に、ホストは新しい一時アドレスを生成します。
一時アドレスの時間を表現するには、次の書式を使用します。
n 秒数 (デフォルト)
n 時間数 (h)
n 日数 (d )
「IPv6 用にシステムを構成する方法」を参照してください。
ifdefault TmpValidLifetime duration
この構文は、ホストのすべてのインタフェースに対して valid lifetime を指定します。duration の値は、秒、時間、または日です。valid lifetime のデフォルトは 7 日です。TmpValidLifetime に if interface キーワードを使用すると、特定のインタフェースに対して一時アドレスの valid lifetime を指定できます。
if interface TmpPreferredLifetime duration
この構文は、特定のインタフェースに対して一時アドレスの preferred lifetime を指定します。preferred lifetime のデフォルトは 1 日です。TmpPreferredLifetime に ifdefault キーワードを使用すると、ホストのすべてのインタフェースに対して preferred lifetime を指定できます。
注 - デフォルトアドレス選択では、無効にされた IPv6 アドレスには低い優先順位が与えられます。IPv6 一時アドレスが無効にされると、デフォルトアドレス選択によって、パケットのソースアドレスとして無効でないアドレスが選択されます。無効でないアドレスは、自動的に生成された IPv6 アドレス、またはインタフェースの IPv4 アドレス (使用できる場合) になります。デフォルトアドレス選択の詳細については、「デフォルトアドレス選択の管理」を参照してください。
ifdefault TmpRegenAdvance duration
この構文は、ホストのすべてのインタフェースに対して、一時アドレスを無効にするまでの時間を指定します。デフォルトは 5 秒です。
# pkill -HUP in.ndpd # /usr/lib/inet/in.ndpd
コマンド出力では、一時アドレスの CURRENT フィールドに t フラグが表示されます。
例 4-3 /etc/inet/ndpd.conf ファイルの一時アドレス変数
次に、プライマリネットワークインタフェースに対して一時アドレスを有効にした /etc/inet/ndpd.conf ファイルの例 (一部) を示します。
ifdefault TmpAddrsEnabled true ifdefault TmpValidLifetime 14d ifdefault TmpPreferredLifetime 7d ifdefault TmpRegenAdvance 6s
例 4-4 一時アドレスを有効にした状態での ipadm show-addr コマンドの出力
次に、一時アドレスを作成したあとの ipadm show-addr コマンドの出力の例を示します。このサンプル出力には IPv6 関連の情報のみが含まれています。
# ipadm show-addr -o all ADDROBJ TYPE STATE CURRENT PERSISTENT ADDR lo0/v6 static ok U---- --- ::1/128 net0/v6 addrconf ok U---- --- fe80::a00:20ff:feb9:4c54/10 net0/v6a static ok U---- --- 2001:db8:3c4d:15:a00:20ff:feb9:4c54/64 net0/? addrconf ok U--t- --- 2001:db8:3c4d:15:7c37:e7d1:fc9c:d2cb/64
アドレスオブジェクト net0/? の CURRENT フィールドに t フラグが設定されています。このフラグは、対応するアドレスに一時インタフェース ID が含まれていることを示します。
参照
ネームサービスが IPv6 アドレスをサポートするように設定する方法については、「ネームサービスの IPv6 サポート用の構成」を参照してください。
サーバー上で IPv6 アドレスを構成する方法については、「ユーザー指定の IPv6 トークンを構成する方法」を参照してください。
IPv6 ノード上での活動を監視するには、第 5 章TCP/IP ネットワークの管理を参照してください。
IPv6 アドレスの 64 ビットのインタフェース ID は、トークンとも呼ばれます。トークンは、アドレスが自動構成されるときに、インタフェースの MAC アドレスに関連付けられます。ほとんどの場合、ルーティングを行わないノード (IPv6 ホストと IPv6 サーバー) では、自動構成されたトークンを使用するようにしてください。
ただし、システムが保守されるときにインタフェースが定期的に交換されるサーバーでは、自動構成されたトークンを使用すると問題が発生することがあります。インタフェースカードが変更されると、MAC アドレスも変更されます。その結果、IP アドレスが変わらないことを前提とするサーバーでは、問題が発生することがあります。ネットワークインフラストラクチャーの各ノード (DNS、NIS など) に、サーバーのインタフェースに固有の IPv6 アドレスが保存されている場合があります。
アドレスが変わることで発生する問題を回避するために、IPv6 アドレスのインタフェース ID として使用されるトークンを手動で構成できます。トークンを作成するには、IPv6 アドレスのインタフェース ID 部分に相当する 64 ビット以下の 16 進数を指定します。それ以降は、アドレスが自動構成されるときに近傍検索によって作成されるインタフェース ID は、インタフェースの MAC アドレスからは作成されません。代わりに、手動で作成したトークンがインタフェースID になります。このトークンは、カードを交換しても、インタフェースに割り当てられたままになります。
注 - ユーザー指定のトークンと一時アドレスとの違いは、一時アドレスがランダムに生成されるのに対し、ユーザー指定のトークンはユーザーが明示的に作成する点です。
次の手順は、インタフェースが定期的に置き換えられるサーバーで特に役立ちます。また、任意の IPv6 ノード上でユーザー指定のトークンを構成する場合にも有効です。
注 - 構成済みの IPv6 アドレスがインタフェースに一切含まれていないことを確認します。
# ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes --- net0 ip ok yes --- # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8
この出力は、ネットワークインタフェース net0 が存在しており、IPv6 アドレスは一切構成されていないことを示しています。
次の形式の ipadm コマンドを使用して、ユーザー指定のインタフェース ID (トークン) を各インタフェースが持つようにします。
# ipadm create-addr -T addrconf -i interface-ID interface
たとえば、インタフェース net0 をトークンで構成するには、次のコマンドを使用します。
# ipadm create-addr -T addrconf -i ::1a:2b:3c:4d/64 net0
注 - トークンを使用してアドレスオブジェクトが作成されると、そのトークンはもう変更できなくなります。
# pkill -HUP in.ndpd
例 4-5 ユーザー指定のトークンを IPv6 インタフェースに構成する
次の例では、IPv6 アドレスとトークンを使用して net0 を構成する方法を示します。
# ipadm show-if IFNAME CLASS STATE ACTIVE OVER lo0 loopback ok yes --- net0 ip ok yes --- # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 # ipadm create-addr -T addrconf -i ::1a:2b:3c:4d/64 net0 # pkill -HUP in.ndpd # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v6 static ok ::1/128 net0/v6 addrconf ok fe80::1a:2b:3c:4d/10 net0/v6a addrconf ok 2002:a08:39f0:1:1a:2b:3c:4d/64
トークンの構成が完了したあと、アドレスオブジェクト net0/v6 は、1a:2b:3c:4d がインタフェース ID として構成されたリンクローカルアドレスと別のアドレスの両方を持っています。net0/v6 が作成されたあとで、このトークンはこのインタフェースではもう変更できなくなります。
参照
ネームサービスをサーバーの IPv6 アドレスで更新する方法については、「ネームサービスの IPv6 サポート用の構成」を参照してください。
サーバーのパフォーマンスを監視する方法については、第 5 章TCP/IP ネットワークの管理を参照してください。
サーバーで IPv6 を使用することを計画するときは、サーバーのインタフェースの IPv6 を有効にするために、いくつかのことを決定する必要があります。それらの決定は、インタフェースの IPv6 アドレスのインタフェース ID (「トークン」とも呼ばれる) を構成するときに、どのような方法を採用するかに影響します。
この手順では、ネットワークのサーバーで IPv6 を有効にするための一般的な手順を提供します。IPv6 の実装方法によっては一部の手順が変わる可能性があります。
手順については、「IPv6 インタフェースの構成」を参照してください。
詳細は、「IPv6 ルーターの構成」を参照してください。
デフォルトでは、IPv6 アドレスの自動構成によって IPv6 アドレスのインタフェース ID 部分が作成されるときに、インタフェースの MAC アドレスが使用されます。インタフェースの IPv6 アドレスが既知の場合には、インタフェースが切り替わると、問題が発生することがあります。新しいインタフェースの MAC アドレスは、別のアドレスになります。アドレスが自動構成されると、新しいインタフェース ID が生成されます。
IPv6 対応のインタフェースを置き換えないで使用する場合は、「自動構成プロセス」で説明しているように、自動構成された IPv6 アドレスを使用します。
IPv6 が有効なインタフェースをローカルネットワークの外部には匿名で表示する必要がある場合は、ランダムに生成されたトークンをインタフェース ID に使用することを検討します。手順および例については、「一時アドレスを構成する方法」を参照してください。
IPv6 が有効なインタフェースを定期的に切り替えて使用する場合は、インタフェース ID のトークンを作成します。手順および例については、「ユーザー指定の IPv6 トークンを構成する方法」を参照してください。