JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Solaris のシステム管理 (IP サービス)     Oracle Solaris 10 8/11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I システム管理の概要: IP サービス

1.  Oracle Solaris TCP/IP プロトコル群 (概要)

パート II TCP/IP の管理

2.  TCP/IP ネットワークの計画 (手順)

3.  IPv6 の紹介(概要)

4.  IPv6 ネットワークの計画 (手順)

5.  TCP/IP ネットワークサービスと IPv4 アドレス指定の構成 (作業)

6.  ネットワークインタフェースの管理 (作業)

7.  IPv6 ネットワークの構成 (手順)

8.  TCP/IP ネットワークの管理 (手順)

9.  ネットワークの問題の障害追跡 (手順)

10.  TCP/IP と IPv4 の詳細 (リファレンス)

11.  IPv6 の詳細 (リファレンス)

IPv6 の新機能の詳細

IPv6 アドレス指定書式の詳細

6to4 派生のアドレス指定

ホストにおける 6to4 派生のアドレス指定

IPv6 マルチキャストアドレスの詳細

IPv6 パケットヘッダーの書式

IPv6 拡張ヘッダー

デュアルスタックプロトコル

Oracle Solaris の IPv6 の実装

IPv6 設定ファイル

ndpd.conf 設定ファイル

IPv6 インタフェース設定ファイル

/etc/inet/ipaddrsel.conf 設定ファイル

IPv6 関連のコマンド

ipaddrsel コマンド

6to4relay コマンド

IPv6 をサポートするための ifconfig コマンドの拡張

IPv6 をサポートするための netstat コマンドの変更

IPv6 をサポートするための snoop コマンドの変更

IPv6 をサポートするための route コマンドの変更

IPv6 をサポートするための ping コマンドの変更

IPv6 をサポートするための traceroute コマンドの変更

IPv6 関連のデーモン

in.ndpd デーモン、近傍検索用

in.ripngd デーモン、IPv6 経路制御用

inetd デーモンと IPv6 サービス

IPv6 近傍検索プロトコル

近傍検索からの ICMP メッセージ

自動設定プロセス

ルーター広告の受信

接頭辞設定変数

アドレスの一意性

近傍要請と不到達

重複アドレス検出アルゴリズム

プロキシ通知

入力負荷分散

リンクローカルアドレスの変更

近傍検索と ARP および関連する IPv4 プロトコルとの比較

IPv6 の経路制御

ルーター広告

ルーター広告接頭辞

ルーター広告メッセージ

IPv6 トンネル

トンネルの設定

6to4 自動トンネル

6to4 トンネルのトポロジ

6to4 トンネルを介したパケットフロー

6to4 リレールーターとの間のトンネルについての考慮事項

Oracle Solaris ネームサービスに対する IPv6 拡張機能

IPv6 の DNS 拡張機能

nsswitch.conf ファイルへの変更

ネームサービスコマンドの変更

NFS と RPC による IPv6 のサポート

IPv6 over ATM のサポート

パート III DHCP

12.  DHCP について (概要)

13.  DHCP サービスの使用計画 (手順)

14.  DHCP サービスの構成 (手順)

15.  DHCP の管理 (手順)

16.  DHCP クライアントの構成と管理

17.  DHCP の障害追跡 (リファレンス)

18.  DHCP コマンドと DHCP ファイル (リファレンス)

パート IV IP セキュリティー

19.  IP セキュリティーアーキテクチャー (概要)

20.  IPsec の構成 (手順)

21.  IP セキュリティーアーキテクチャー (リファレンス)

22.  インターネットキー交換 (概要)

23.  IKE の設定 (手順)

24.  インターネットキー交換 (リファレンス)

25.  Oracle Solaris の IP フィルタ (概要)

26.  IP フィルタ (手順)

パート V モバイル IP

27.  モバイル IP (概要)

28.  モバイル IP の管理 (手順)

29.  モバイル IP のファイルおよびコマンド (リファレンス)

パート VI IPMP

30.  IPMP の紹介 (概要)

31.  IPMP の管理 (手順)

パート VII IP サービス品質 (IPQoS)

32.  IPQoS の紹介 (概要)

33.  IPQoS 対応ネットワークの計画 (手順)

34.  IPQoS 構成ファイルの作成 (手順)

35.  IPQoS の起動と保守(手順)

36.  フローアカウンティングの使用と統計情報の収集 (手順)

37.  IPQoS の詳細 (リファレンス)

用語集

索引

Oracle Solaris の IPv6 の実装

この節では、Oracle Solaris で IPv6 が有効なファイル、コマンド、およびデーモンについて説明します。

IPv6 設定ファイル

この節では、IPv6 実装の一部である設定ファイルについて説明します。

ndpd.conf 設定ファイル

/etc/inet/ndpd.conf ファイルは、 近傍検索デーモン in.ndpd が使用するオプションを設定するために使用されます。ルーターの場合、ndpd.conf は、主にサイト接頭辞をリンクに通知されるように設定するときに使用します。ホストの場合、ndpd.conf は、アドレスの自動設定を無効にしたり、一時アドレスを設定したりするときに使用します。

次の表に、ndpd.conf ファイルで使用されるキーワードを示します。

表 11-2 /etc/inet/ndpd.conf キーワード

変数
説明
ifdefault
すべてのインタフェースのルーターの動作を指定します。次の構文を使用してルーターパラメータと対応する値を設定します。

ifdefault [variable-value]

prefixdefault
接頭辞通知のデフォルトの動作を指定します。次の構文を使用してルーターパラメータと対応する値を設定します。

prefixdefault [variable-value]

if
インタフェース別パラメータを設定します。構文は次のとおりです。

if interface [variable-value ]

prefix
インタフェース別接頭辞情報を通知します。構文は次のとおりです。

prefix prefix/length interface [variable-value]

ndpd.conf ファイルでは、この表にあるキーワードといっしょに、いくつかのルーター設定変数を使用します。これらの変数の詳細については、RFC 2461, Neighbor Discovery for IP Version 6 (IPv6) を参照してください。

次の表に、インタフェースを設定するための変数と、その簡単な説明を示します。

表 11-3 /etc/inet/ndpd.conf インタフェース設定変数

変数
デフォルト
定義
AdvRetransTimer
0
ルーターが送信する通知メッセージにおいて、Retrans Timer フィールドの値を指定します。
AdvCurHopLimit
インターネットの現在の直径
ルーターが送信する通知メッセージにおいて、現在のホップ制限に設定する値を指定します。
AdvDefaultLifetime
3 + MaxRtrAdvInterval
ルーター広告のデフォルトの寿命を指定します。
AdvLinkMTU
0
ルーターが送信する最大転送単位 (MTU) の値を指定します。ゼロは、ルーターが MTU オプションを指定しないことを意味します。
AdvManaged Flag
False
ルーター広告において、Manage Address Configuration フラグに設定する値を指定します。
AdvOtherConfigFlag
False
ルーター広告において、Other Stateful Configuration フラグに設定する値を指定します。
AdvReachableTime
0
ルーターが送信する通知メッセージにおいて、Reachable Time フィールドの値を指定します。
AdvSendAdvertisements
False
ノードが通知を送信し、ルーター要請に応答するかどうかを指定します。ルーター広告機能を有効にするには、 ndpd.conf ファイルにおいて、この変数を明示的に「TRUE」に設定する必要があります。詳細については、「IPv6 対応のルーターを構成する方法」を参照してください。
DupAddrDetect

Transmits

1
近傍検索プロトコルがローカルノードのアドレスの重複アドレス検出中に送信する、連続近傍要請メッセージの数を定義します。
MaxRtrAdvInterval
600 秒
非要請マルチキャスト通知を送信する間隔の最大時間を指定します。
MinRtrAdvInterval
200 秒
非要請マルチキャスト通知を送信する間隔の最小時間を指定します。
StatelessAddrConf
True
ノードがその IPv6 アドレスを設定するときに、ステートレスアドレス自動設定を使用するかどうかを制御します。 ndpd.conf で False が宣言されている場合、そのアドレスは手動で設定する必要があります。詳細については、「ユーザー指定の IPv6 トークンを構成する方法」を参照してください。
TmpAddrsEnabled
False
あるノードのすべてのインタフェースまたは特定のインタフェースに対して、一時アドレスを作成するかどうかを指定します。 詳細については、「一時アドレスを構成する方法」を参照してください。
TmpMaxDesyncFactor
600 秒
in.ndpd を起動するときに、優先寿命変数 TmpPreferredLifetime から引くランダム数を指定します。TmpMaxDesyncFactor 変数の目的は、ネットワーク上のすべてのシステムが同時に一時アドレスを再生成することを防ぐことです。TmpMaxDesyncFactor を使用すると、このランダム数の上限値を変更できます。
TmpPreferredLifetime
False
一時アドレスの優先寿命を設定します。詳細については、「一時アドレスを構成する方法」を参照してください。
TmpRegenAdvance
False
一時アドレスのアドレス劣化までの先行時間を指定します。詳細については、「一時アドレスを構成する方法」を参照してください。
TmpValidLifetime
False
一時アドレスの有効寿命を設定します。詳細については、「一時アドレスを構成する方法」を参照してください。

次の表に、IPv6 接頭辞を設定するときに使用する変数を示します。

表 11-4 /etc/inet/ndpd.conf 接頭辞設定変数

変数
デフォルト
定義
AdvAutonomousFlag
True
Prefix Information オプションの Autonomous Flag フィールドに格納される値を指定します。
AdvOnLinkFlag
True

Prefix Information オプションのオンリンクフラグ (“L-bit”) に格納される値を指定します。
AdvPreferredExpiration
「設定なし」
接頭辞の優先満了日を指定します。
AdvPreferredLifetime
604800 秒
Prefix Information オプションの優先寿命に格納される値を指定します。
AdvValidExpiration
「設定なし」
接頭辞の有効満了日を指定します。
AdvValidLifetime
2592000 秒
設定している接頭辞の有効寿命を指定します。

例 11-1 /etc/inet/ndpd.conf ファイル

次に、ndpd.conf ファイルでキーワードや設定変数を使用する例を示します。変数を有効にするには、コメント (#) を削除します。

# ifdefault      [variable-value ]*
# prefixdefault [variable-value ]*
# if ifname   [variable-value ]*
# prefix prefix/length ifname
#
#  Per interface configuration variables
#
#DupAddrDetectTransmits
#AdvSendAdvertisements
#MaxRtrAdvInterval
#MinRtrAdvInterval
#AdvManagedFlag
#AdvOtherConfigFlag
#AdvLinkMTU
#AdvReachableTime
#AdvRetransTimer
#AdvCurHopLimit
#AdvDefaultLifetime
#
# Per Prefix:  AdvPrefixList configuration variables
#
#
#AdvValidLifetime
#AdvOnLinkFlag
#AdvPreferredLifetime
#AdvAutonomousFlag
#AdvValidExpiration
#AdvPreferredExpiration

ifdefault AdvReachableTime 30000 AdvRetransTimer 2000
prefixdefault AdvValidLifetime 240m AdvPreferredLifetime 120m

if qe0 AdvSendAdvertisements 1
prefix 2:0:0:56::/64 qe0
prefix fec0:0:0:56::/64 qe0

if qe1 AdvSendAdvertisements 1
prefix 2:0:0:55::/64 qe1
prefix fec0:0:0:56::/64 qe1

if hme1 AdvSendAdvertisements 1
prefix  2002:8192:56bb:1::/64 qfe0 

if hme1 AdvSendAdvertisements 1
prefix  2002:8192:56bb:2::/64 hme1

IPv6 インタフェース設定ファイル

起動時、IPv6 は /etc/hostname6.interface ファイルを使用して、IPv6 論理インタフェースを自動的に定義します。Oracle Solaris のインストール中に IPv6 Enabled オプションを選択した場合、インストールプログラムは、/etc/hostname.interface ファイルに加えて、一次ネットワークインタフェース用の /etc/hostname6.interface ファイルを作成します。

インストール中に複数の物理インタフェースが検出された場合、このようなインタフェースを設定するかどうかをたずねられます。インストールプログラムは、指定された追加のインタフェースごとに、IPv4 物理インタフェース設定ファイルと IPv6 論理インタフェース設定ファイルを作成します。

IPv4 インタフェースと同様に、IPv6 インタフェースも Oracle Solaris インストール後に手動で設定できます。新しいインタフェースには /etc/hostname6.interface ファイルを作成します。インタフェースを手動で構成する方法については、第 6 章ネットワークインタフェースの管理 (作業)を参照してください。

ネットワークインタフェース設定ファイル名の構文は次のとおりです。

hostname.interface
hostname6.interface

interface 変数の構文は次のとおりです。

dev[.module[.module ...]]PPA
dev

ネットワークインタフェースデバイスを示します。デバイスは eriqfe などの物理ネットワークインタフェースか、トンネルなどの論理インタフェースです。詳細については、「IPv6 インタフェース設定ファイル」を参照してください。

Module

plumb される際にデバイスにプッシュされる 1 つまたは複数の STREAMS モジュールのリスト。

PPA

物理的な接続ポイントを示します。

構文 [.[.]] も可能です。

例 11-2 IPv6 インタフェース設定ファイル

次に、有効な IPv6 設定ファイル名の例を示します。

hostname6.qfe0
hostname.ip.tun0
hostname.ip6.tun0
hostname6.ip6to4tun0
hostname6.ip.tun0
hostname6.ip6.tun0

/etc/inet/ipaddrsel.conf 設定ファイル

/etc/inet/ipaddrsel.conf ファイルには、IPv6 デフォルトアドレス選択ポリシーテーブルが含まれます。Oracle Solaris をインストールしたときに IPv6 を有効にした場合、このファイルには、表 11-5 に示す内容が含まれます。

/etc/inet/ipaddrsel.conf ファイルの内容は編集できます。しかし、このファイルを変更することは極力避けるべきです。どうしても変更が必要な場合、手順については、「IPv6 アドレス選択ポリシーテーブルを管理する方法」を参照してください。ippaddrsel.conf の詳細については、「IPv6 アドレス選択ポリシーテーブルを変更する理由」ipaddrsel.conf(4) のマニュアルページを参照してください。

IPv6 関連のコマンド

この節では、Oracle Solaris IPv6 実装で追加されたコマンドについて説明します。また、IPv6 をサポートするために行われた既存のコマンドへの変更についても説明します。

ipaddrsel コマンド

ipaddrsel コマンドを使用すると、IPv6 デフォルトアドレス選択ポリシーテーブルを変更できます。

Oracle Solaris カーネルは IPv6 デフォルトアドレス選択ポリシーテーブルを使用して、IPv6 パケットヘッダーに対して、宛先アドレス順序付けやソースアドレス選択を実行します。/etc/inet/ipaddrsel.conf ファイルには、このポリシーテーブルが含まれます。

次の表に、このポリシーテーブルのデフォルトアドレス書式とその優先度のリストを示します。IPv6 アドレス選択に関する技術的な詳細については、inet6(7P) のマニュアルページを参照してください。

表 11-5 IPv6 アドレス選択ポリシーテーブル

接頭辞
優先度
定義
::1/128
50
ループバック
::/0
40
デフォルト
2002::/16
30
6to4
::/96
20
IPv4 互換
::ffff:0:0/96
10
IPv4

この表では、IPv6 接頭辞 (::1/128::/0) は 6to4 アドレス (2002::/16) と IPv4 アドレス (::/96::ffff:0:0/96) よりも優先されます。したがって、カーネルは、別の IPv6 宛先に向かうパケットに対して、インタフェースのグローバル IPv6 アドレスをデフォルトで選択します。インタフェースの IPv4 アドレスの優先度は、特に IPv6 宛先に向かうパケットに対しては低くなります。選択した IPv6 ソースアドレスを考えて、カーネルは宛先アドレスにも IPv6 書式を使用します。

IPv6 アドレス選択ポリシーテーブルを変更する理由

ほとんどの場合、IPv6 デフォルトアドレス選択ポリシーテーブルを変更する必要はありません。どうしてもポリシーテーブルを管理する必要がある場合は、 ipaddrsel コマンドを使用します。

次のような場合、ポリシーテーブルの変更をお勧めします。

ipaddrsel コマンドの詳細については、ipaddrsel(1M) のマニュアルページを参照してください。

6to4relay コマンド

6to4 トンネリング」を使用すると、孤立した 6to4 サイト間で通信できます。しかし、6to4 以外のネイティブ IPv6 サイトにパケットを転送する場合は、6to4 ルーターは 6to4 リレールーターとのトンネルを確立する必要があります。このトンネルが確立されると、「6to4 リレールーター」によって 6to4 パケットが IPv6 ネットワークに転送され、最終的にネイティブ IPv6 サイトに送信されます。6to4 有効化サイトがネイティブな IPv6 サイトとデータを交換する必要がある場合、6to4relay コマンドを使用して、適切なトンネルを有効にします。

リレールーターの使用は安全とは言えないため、Oracle Solaris のデフォルト設定ではリレールーターとの間のトンネリングは無効になっています。このシナリオを実践に移す場合は、6to4 リレールーターとの間のトンネル構築に伴って発生する問題点をあらかじめ慎重に検討してください。6to4 リレールーターの詳細については、「6to4 リレールーターとの間のトンネルについての考慮事項」を参照してください。6to4 リレールーターのサポートを有効にする場合、その関連手順については、「6to4 トンネルを設定する方法」を参照してください。

6to4relay の構文

6to4relay コマンドの構文は次のとおりです。

6to4relay -e [-a IPv4-address] -d -h
-e

6to4 ルーターとエニーキャスト 6to4 リレールーター間のトンネルサポートを有効にします。このオプションを指定すると、トンネルのエンドポイントアドレスが 192.88.99.1 (6to4 リレールーターのエニーキャストグループのデフォルトアドレス) に設定されます。

-a IPv4-address

6to4 ルーターと指定された IPv4-address の 6to4 リレールーター間にトンネルのサポートを有効にします。

-d

6to4 リレールーターとの間のトンネリングのサポートを無効にします。これは、Oracle Solaris のデフォルトの設定です。

-h

6to4relay のヘルプを表示します。

詳細は、6to4relay(1M) のマニュアルページを参照してください。

例 11-3 6to4 リレールーターサポートのデフォルトの状態の表示

引数を指定せずに 6to4relay コマンドを実行すると、6to4 リレールーターサポートの現在の状態が表示されます。次の例に、Oracle Solaris における IPv6 実装のデフォルトを示します。

# /usr/sbin/6to4relay
6to4relay:6to4 Relay Router communication support is disabled

例 11-4 6to4 リレールーターサポートを有効にした状態の表示

リレールーターサポートが有効に設定されている場合には、6to4relay を実行すると次のように表示されます。

# /usr/sbin/6to4relay
6to4relay:6to4 Relay Router communication support is enabled
IPv4 destination address of Relay Router=192.88.99.1

例 11-5 6to4 リレールーターを指定した状態の表示

6to4relay コマンドに -a オプションと IPv4 アドレスを指定した場合、192.88.99.1 ではなく、- a オプションに指定した IPv4 アドレスが表示されます。

6to4relay は、-d-e、および -a IPv4 address オプションが成功したかどうかを報告しません。しかし、これらのオプションの実行時に発生した可能性のあるエラーは表示します。

IPv6 をサポートするための ifconfig コマンドの拡張

ifconfig コマンドにより、IPv6 インタフェースとトンネリングモジュールを plumb できるようになりました。ifconfig は、ioctl の拡張セットを使用して、IPv4 と IPv6 の両方のネットワークインタフェースを設定します。次に、IPv6 操作をサポートする ifconfig オプションについて説明します。ifconfig に関連する IPv4 と IPv6 の両方の作業については、ifconfig コマンドによるインタフェース構成の監視」を参照してください。

index

インタフェースインデックスを設定します。

tsrc/tdst

トンネルソース / 宛先を設定します。

addif

論理インタフェースの次の候補を作成します。

removeif

指定された IP アドレスの論理インタフェースを削除します。

destination

インタフェースにポイントツーポイント宛先アドレスを設定します。

set

インタフェースにアドレスとネットマスクのどちらか、または両方を設定します。

subnet

インタフェースのサブネットアドレスを設定します。

xmit/-xmit

インタフェースにおけるパケット伝送を使用可能または使用不能にします。

IPv6 を設定する手順については、第 7 章IPv6 ネットワークの構成 (手順)を参照してください。

例 11-6 ifconfig コマンドの -addif オプションによる IPv6 論理インタフェースの追加

次の形式の ifconfig コマンドは、 hme0:3 論理インタフェースを作成します。

# ifconfig hme0 inet6 addif up
Created new logical interface hme0:3

次の形式の ifconfig は、新しいインタフェースの作成を確認します。

# ifconfig hme0:3 inet6
hme0:3: flags=2000841<UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 2
        inet6  inet6 fe80::203:baff:fe11:b321/10

例 11-7 ifconfig コマンドの -removeif オプションによる IPv6 論理インタフェースの削除

次の形式の ifconfig コマンドは、 hme0:3 論理インタフェースを削除します。

# ifconfig hme0:3 inet6 down

# ifconfig hme0 inet6 removeif 1234::5678

例 11-8 ifconfig コマンドによる IPv6 トンネルソースの設定

# ifconfig ip.tun0 inet6 plumb index 13

物理インタフェース名に関連するトンネルを開きます。

# ifconfig ip.tun0 inet6
ip.tun0: flags=2200850<POINTOPOINT,RUNNING,MULTICAST,NONUD,
#IPv6> mtu 1480 index 13
        inet tunnel src 0.0.0.0 
        inet6 fe80::/10 --> :: 

トンネルデバイスを使用して、そのデバイスの状態を報告するように、TCP/IP に必要なストリームを設定します。

# ifconfig ip.tun0 inet6 tsrc 120.46.86.158 tdst 120.46.86.122

トンネルのソースアドレスと宛先アドレスを設定します。

# ifconfig ip.tun0 inet6
ip.tun0: flags=2200850<POINTOPOINT,RUNNING,MULTICAST,NONUD,
IPv6> mtu 1480 index 13
        inet tunnel src 120.46.86.158  tunnel dst 120.46.86.122
        inet6 fe80::8192:569e/10 --> fe80::8192:567a

設定後のデバイスの新しい状態を報告します。

例 11-9 ifconfig による 6to4 トンネルの設定 (長形式)

この 6to4 擬似インタフェース設定例は、サブネット ID として 1 を使用し、ホスト ID を 16 進形式で指定しています。

# ifconfig ip.6to4tun0 inet6 plumb
# ifconfig ip.6to4tun0 inet tsrc 129.146.86.187 \ 2002:8192:56bb:1::8192:56bb/64 up
# ifconfig ip.6to4tun0 inet6
ip.6to4tun0: flags=2200041<UP,RUNNING,NONUD,IPv6>mtu 1480 index 11
        inet tunnel src 129.146.86.187 
        tunnel hop limit 60 
        inet6 2002:8192:56bb:1::8192:56bb/64 

例 11-10 ifconfig による 6to4 トンネルの設定 (短形式)

この例では、6to4 トンネルを設定するための短い形式を示します。

# ifconfig ip.6to4tun0 inet6 plumb
# ifconfig ip.6to4tun0 inet tsrc 129.146.86.187 up
# ifconfig ip.6to4tun0 inet6
ip.6to4tun0: flags=2200041<UP,RUNNING,NONUD,IPv6>mtu 1480 index 11
        inet tunnel src 129.146.86.187 
        tunnel hop limit 60 
        inet6 2002:8192:56bb::1/64 

IPv6 をサポートするための netstat コマンドの変更

netstat コマンドは、IPv4 ネットワークと IPv6 ネットワークの両方の状態を表示します。 表示するプロトコル情報を選択するには、/etc/default/inet_type ファイルに DEFAULT_IP 値を設定するか、-f コマンド行オプションを使用します。DEFAULT_IP のパラメータ設定では、netstat に IPv4 情報だけが表示されていることを確認できます。この設定は、-f オプションで無効にできます。inet_type ファイルの詳細については、inet_type(4) のマニュアルページを参照してください。

netstat コマンドの -p オプションは、net-to-media テーブルを表示します。これは、 IPv4 の場合は ARP テーブルであり、IPv6 の場合は近傍キャッシュです。詳細は、netstat(1M) のマニュアルページを参照してください。このコマンドを使用する手順については、「ソケットの状態を表示する方法」を参照してください。

IPv6 をサポートするための snoop コマンドの変更

snoop コマンドは、IPv4 パケットと IPv6 パケットの両方を取り込むことができます。IPv6 ヘッダー、IPv6 拡張ヘッダー、ICMPv6 ヘッダー、近傍検索プロトコルデータを表示できます。デフォルトで、snoop コマンドは、IPv4 パケットと IPv6 パケットの両方を表示します。ip または ip6 のプロトコルキーワードを指定した場合、snoop コマンドは IPv4 パケットまたは IPv6 パケットだけを表示します。IPv6 フィルタオプションでは、すべてのパケットをフィルタの対象にでき (IPv4 と IPv6 の両方)、IPv6 パケットだけが表示されます。詳細は、snoop(1m) のマニュアルページを参照してください。snoop コマンドを使用する手順については、「IPv6 ネットワークトラフィックを監視する方法」を参照してください。

IPv6 をサポートするための route コマンドの変更

route コマンドは IPv4 ルートと IPv6 ルートの両方で動作します。デフォルトでは、IPv4 ルートで動作します。route コマンドのすぐあとに -inet6 コマンド行オプションを指定した場合、route コマンドは IPv6 ルート上で動作します。詳細は、route(1M) のマニュアルページを参照してください。

IPv6 をサポートするための ping コマンドの変更

ping コマンドは、ターゲットホストを検証するのに、IPv4 プロトコルと IPv6 プロトコルの両方で使用できます。プロトコル選択は、指定のターゲットホストのネームサーバーが戻すアドレスに依存します。デフォルトでネームサーバーによってターゲットホストの IPv6 アドレスが返されると、ping コマンドは IPv6 プロトコルを使用します。サーバーが IPv4 アドレスだけを戻すと、ping コマンドは IPv4 プロトコルを使用します。-A コマンド行オプションで使用するプロトコルを指定すれば、この動作を無効にできます。

詳細については、ping(1M) のマニュアルページを参照してください。ping を使用する手順については、ping コマンドによるリモートホストの検証」を参照してください。

IPv6 をサポートするための traceroute コマンドの変更

traceroute コマンドは、指定したホストへの IPv4 ルートと IPv6 ルートの両方で使用できます。使用するプロトコルの選択について、traceroute では、ping と同じアルゴリズムを使用します。選択を無効にするには、-A コマンド行オプションを使用します。マルチホームホストのすべてのアドレスまでの各ルートは -a コマンド行オプションでトレースできます。

詳細については、traceroute(1M) のマニュアルページを参照してください。traceroute を使用する手順については、traceroute コマンドによる経路制御情報の表示」を参照してください。

IPv6 関連のデーモン

この節では、IPv6 関連のデーモンについて説明します。

in.ndpd デーモン、近傍検索用

in.ndpd デーモンは、IPv6 近傍検索プロトコルとルーター発見を実装します。このデーモンは、IPv6 のアドレス自動設定も実装します。次に、in.ndpd でサポートされるオプションを示します。

-d

デバッグを有効にします。

-D

特定のイベントのデバッグを有効にします。

-f

デフォルトの /etc/inet/ndpd.conf ファイル以外で、設定データを読み取るファイルを指定します。

-I

インタフェースごとに関連情報を印刷します。

-n

ルーター広告をループバックしません。

-r

受信パケットを無視します。

-v

冗長モードを指定します (さまざまな種類の診断メッセージを報告する)。

-t

パケット追跡をオンに設定します。

in.ndpd デーモンは、/etc/inet/ndpd.conf 設定ファイルに設定されたパラメータと、/var/inet/ndpd_state.interface 起動ファイルの任意の適用可能なパラメータによって制御されます。

/etc/inet/ndpd.conf が存在すると構文解析され、ノードをルーターとして使用するための設定が行われます。表 11-2 に、このファイルに現れる可能性がある有効なキーワードのリストを示します。ホストを起動しても、ルーターがすぐには使用できない場合があります。ルーターによって通知されたパケットがドロップしたり、また、通知されたパケットがホストに届かない場合もあります。

/var/inet/ndpd_state.interface ファイルは状態ファイルです。このファイルはノードごとに定期的に更新されます。ノードに障害が発生し再起動した場合、ルーターがなくてもノードはインタフェースを設定できます。このファイルにはインタフェースアドレス、最終更新時間、有効期間などの情報が含まれています。また、先のルーター広告で得られた情報も含まれています。


注 - 状態ファイルの内容を変更する必要はありません。このファイルは、in.ndpd デーモンが自動的に管理します。


設定変数とそれに指定できる値のリストについては、in.ndpd(1M) のマニュアルページと ndpd.conf(4) のマニュアルページを参照してください。

in.ripngd デーモン、IPv6 経路制御用

in.ripngd デーモンは、RIPng (Routing Information Protocol next-generation for IPv6 routers) を実装します。RIPng は IPv6 における RIP 相当機能を定義します。routeadm コマンドで IPv6 ルーターを設定し、IPv6 経路制御を有効にした場合、in.ripngd デーモンはそのルーターに RIPng を実装します。

次に、RIPng のサポートされるオプションを示します。

-p n

n は RIPNG パケットの送受信に使用する代替ポート番号を指定します。

-q

経路制御情報を打ち切ります。

-s

デーモンがルーターとして動作しているかどうかの経路制御情報の提供を強制します。

-P

ポイズンリバースを打ち切ります。

-S

in.ripngd がルーターとして機能しない場合、各ルーターにはデフォルトのルートだけが指定されます。

inetd デーモンと IPv6 サービス

IPv6 が有効なサーバーアプリケーションは、IPv4 要求と IPv6 要求の両方、あるいは、IPv6 要求だけを処理できます。IPv6 が有効なサーバーは常に、IPv6 ソケット経由の要求を処理します。さらに、IPv6 が有効なサーバーは、対応するクライアントで使用しているプロトコルと同じプロトコルを使用します。IPv6 用にサービスを追加または変更するには、Service Management Facility (SMF) から入手できるコマンドを使用します。

IPv6 サービスを設定するには、そのサービスの inetadm プロファイルにある proto フィールド値に、適切な値のリストが含まれていることを確認する必要があります。

Oracle Solaris コマンドを別の実装で置き換えた場合、そのサービスの実装が IPv6 をサポートすることを確認する必要があります。その実装が IPv6 をサポートしない場合、proto 値と して、tcpudp、または sctp のいずれかを指定する必要があります。

次に、IPv4 とIPv6 の両方をサポートし、SCTP で動作する echo サービスマニフェストに inetadm を実行した結果のプロファイルを示します。

# inetadm -l svc:/network/echo:sctp_stream
    SCOPE    NAME=VALUE      name="echo"
             endpoint_type="stream"
             proto="sctp6"
             isrpc=FALSE
             wait=FALSE
             exec="/usr/lib/inet/in.echod -s"
             user="root"
    default  bind_addr=""
    default  bind_fail_max=-1
    default  bind_fail_interval=-1
    default  max_con_rate=-1
    default  max_copies=-1
    default  con_rate_offline=-1
    default  failrate_cnt=40
    default  failrate_interval=60
    default  inherit_env=TRUE
    default  tcp_trace=FALSE
    default  tcp_wrappers=FALSE

proto フィールドの値を変更するには、次の構文を使用します。

# inetadm -m FMRI proto="transport-protocols"

Oracle Solaris ソフトウェアが提供されるサーバーはすべて、proto 値として、tcp6udp6、または sctp6 のいずれかを指定するプロファイルエントリを 1 つだけ必要とします。しかし、リモートシェルサーバー (shell) とリモート実行サーバー (exec) は、現在、単一のサービスインスタンスで設定されており、proto 値として、tcptcp6only の両方を含める必要があります。たとえば、shellproto 値を設定するには、次のコマンドを発行します。

# inetadm -m network/shell:default proto="tcp,tcp6only"

ソケットを使用する IPv6 対応サーバーの作成方法の詳細については、『プログラミングインタフェース』のソケット API の IPv6 拡張機能を参照してください。

サービスを IPv6 用に設定するときの注意事項

サービスを IPv6 用に追加または変更するときには、次のことに注意しておく必要があります。