Go to main content
Oracle® Solaris 11.3 でのネットワーク管理のトラブルシューティング

印刷ビューの終了

更新: 2016 年 11 月
 
 

ネットワーク構成およびトラフィック使用状況の監視

次の情報は、表 2で説明されている可観測性ツールを使用する方法を示しています。

次の図は、Oracle Solaris ネットワークプロトコルスタックのさまざまなレイヤーで構成されているネットワーク機能のうちのいくつかから成る一般的な仮定のネットワーク構成を示しています。例としてのみ提供されているこの図のあとには、実際に Oracle Solaris ツールを使用して、関連するさまざまなコンポーネントに関する統計を監視および収集する方法を示す一連のコマンド例が示されています。


注 -  この図に、構成可能なすべてのタイプのデータリンクが含まれているわけではありません。ネットワークプロトコルスタックの各レイヤーで構成可能なすべての機能の詳細は、Oracle Solaris 11.3 でのネットワーク管理の計画 の 第 1 章, Oracle Solaris ネットワーク管理のサマリーを参照してください。

図 1  Oracle Solaris ネットワークプロトコルスタック内のネットワーク構成

image:図では、さまざまな機能のネットワークトラフィックを、その機能が構成されているスタックのレイヤーに従って監視するためのツールについて説明しています。

    この図は、ネットワークプロトコルスタックのさまざまなレイヤーでいくつかの Oracle Solaris 機能を組み合わせる方法を示す次の構成を表しています。

  • ネットワークスタックの物理レイヤーには、3 つの物理 NIC nxgbe0ixgbe0、および ixgbe1 がシステム内に存在し、それぞれ物理データリンクインスタンス net2net1、および net0 として表示されます。

  • 次に、これらの物理 NIC が aggr0 と呼ばれるリンクアグリゲーションにグループ化されます。

  • このリンクアグリゲーションデータリンクが次に、IP アドレス (aggr0/v4) で直接構成されると同時に、エラスティック仮想スイッチとして構成されている、tenant/hr と呼ばれる仮想スイッチのアップリンクとしても使用されます。この仮想スイッチには、vport0vport1 の 2 つの仮想ポートがあります。

  • Oracle Solaris ゾーン (zone-A) には、これらの仮想ポートの 1 つに接続されている、zone-A/net0 と呼ばれる VNIC が存在します。そのゾーン自体の中では、この VNIC は、IP アドレス (net0/v4) で構成されているデータリンク (net0) として表示されます。

  • HTTP トラフィックのフローもアグリゲーション (aggr0) 上に作成されます。

次の例では、Oracle Solaris で提供されているツールを使用して、これらのコンポーネントに関する構成情報を取得したり、さまざまなネットワーク機能のネットワークトラフィック使用状況を監視したりする方法についてさらに詳細に説明しています。

ネットワーク構成およびトラフィック使用状況を監視するためのツール

データリンクは、dladm コマンドを使用して構成および管理します。データリンクのネットワークトラフィック使用状況に関する統計を取得するには、dlstat コマンドを使用します。たとえば、リンクごとのインバウンドおよびアウトバウンドトラフィック統計は、次のコマンドのいずれかを使用して表示します。

# dlstat link
# dlstat show-link link

物理ネットワークデバイスごとのインバウンドおよびアウトバウンドトラフィックの統計情報は次のように表示します。

# dlstat show-phys link

ポートごと、およびリンクアグリゲーションごとのインバウンドおよびアウトバウンドトラフィック統計は次のように表示します。

# dlstat show-aggr link

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

フローは、flowadm コマンドを使用して構成および管理します。フローのネットワークトラフィック使用状況に関する統計を取得するには、flowstat コマンドを使用します。図 1に示すように、指定した属性に応じて、フローを使用して、ネットワークスタックのさまざまなレイヤーでのネットワークトラフィックの使用状況を監視できます。

# flowstat

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

次の例は、ネットワーク構成情報を表示したり、機能ごと、および Oracle Solaris ネットワークプロトコルスタックのレイヤーごとのネットワークトラフィック統計を監視したりする方法を示しています。ネットワークトラフィック使用状況のモニタリングの詳細は、Oracle Solaris 11.3 での仮想ネットワークとネットワークリソースの管理 の 第 8 章, ネットワークトラフィックとリソース使用状況のモニタリングを参照してください。

ハードウェアレイヤーでのネットワーク構成およびトラフィック使用状況の監視

    ネットワークプロトコルスタックのハードウェアレイヤーでのネットワーク構成やパフォーマンスの問題のトラブルシューティングには、次の監視が必要になることがあります。

  • 物理 NIC ごとに存在するリングの数と、それらのリングを通して転送されているパケットの数。

  • 発生しているパケット破棄の数。

    • 物理 NIC ごと

    • 物理リングごと

  • 役立つ可能性のある NIC 固有のカウンタ。

  • 物理 NIC ごとに構成されているリングの数と記述子の数。

物理デバイスの場合は、dladm show-phys および dlstat show-phys コマンドを使用するとネットワークトラフィック使用状況を監視できます。これらの 2 つのコマンドは、取得する情報のタイプによって異なる出力を表示します。

たとえば、システム上のすべての物理リンクの物理デバイスと属性を表示するには、dladm show-phys コマンドをオプションなしで使用します。

# dladm show-phys
LINK MEDIA    STATE   SPEED DUPLEX   DEVICE
net1 Ethernet unknown 0     unknown  bge0
net0 Ethernet up      1000  full     nge0

詳細および例については、Oracle Solaris 11.3 でのネットワークコンポーネントの構成と管理 の 第 2 章, Oracle Solaris でのデータリンク構成の管理および dladm(1M) のマニュアルページを参照してください。

dlstat show-phys コマンドは、物理デバイスごとの送受信されたパケット数とバイト数に関する統計を表示します。このサブコマンドは、ネットワークスタックのデバイスレイヤーにあるハードウェアリングに対して動作します。

次の例では、システム上のすべての物理リンクに関する統計を表示します。この出力は、システム上の各リンクに関する受信トラフィックと送信トラフィックの両方の統計を表示します。また、パケットの数とパケットごとのバイトサイズも表示されます。

# dlstat show-phys
LINK    IPKTS   RBYTES    OPKTS   OBYTES
net1        0        0        0        0
net0    1.95M  137.83M   37.95K    3.39M

–r オプションを使用すると、データリンクデバイスの各ハードウェアリングに関する受信側の統計を表示できます。このコマンドの出力には、そのデータリンクデバイスで受信されたバイト数とパケット数や、ハードウェアとソフトウェアでの破棄数などが含まれます。この例は、net4 に、次の出力の INDEX フィールドで識別される 8 つのリングが存在することを示しています。

# dlstat show-phys -r net4
LINK TYPE INDEX IPKTS RBYTES
net4 rx   0     701   42.06K
net4 rx   1     0     0
net4 rx   2     0  0
net4 rx   3     0  0
net4 rx   4     0  0
net4 rx   5     0  0
net4 rx   6     0  0
net4 rx   7     0  0

転送されたトラフィックに関する同様の情報を取得するには、–t オプションを使用します。

次の例では、物理リンクごとの破棄されたインバウンドパケットの数を表示します。

dlstat show-phys -o idrops
IDROPS   
0
871.14K

–o field[,...] オプションは、表示する出力フィールドの大文字と小文字が区別されないコンマ区切りリストを指定するために使用されます。

次の例では、物理リンクごとの破棄されたインバウンドおよびアウトバウンドパケット数とバイト数が表示されます。

# dlstat show-phys -o idrops,idropbytes,odrops,odropbytes
IDROPS    IDROPBYTES ODROPS ODROPBYTES
0         0          0      0
871.14K   0          0      0

dlstat show-phys –o コマンドでは idropsidropbytes の両方のオプションを指定することをお勧めします。IDROPS フィールドが 0 以外であるのに対して、IDROBYTES フィールドは 0 である前の出力に示すように、システムのハードウェア機能によっては、これらの値のどちらかが 0 になる場合があることに注意してください。

ドライバ構成の場合は、driver.conf ファイルだけでなく、dladm プロパティーでも特定のドライバのプロパティー値を管理できます。ドライバ構成ファイルを使用すると、そのデバイス自体によって提供されるデフォルト値をオーバーライドするデバイスのプロパティー値を指定できます。driver.conf ファイルを使用して情報を管理する方法の詳細は、driver.conf(4) のマニュアルページを参照してください。

データリンクレイヤーでのネットワーク構成およびトラフィック使用状況の監視

ネットワークプロトコルスタックのデータリンクレイヤー (L2) では、いくつかのネットワーク機能が構成されます。これらの機能には、物理データリンクと仮想データリンクの両方が含まれます。スタックのこのレイヤーでのネットワークトラフィック使用状況を監視するために使用する特定のコマンドは汎用であるため、構成されているすべてのタイプのデータリンクに使用できます。その他のサブコマンドはその機能自体に固有であるため、その機能の構成に関する追加情報を表示するために使用できます。

スタックのこのレイヤーで使用するコマンドはまた、監視する情報のタイプによっても異なります。たとえば、スタックのデータリンクレイヤーでは、ファンアウトの統計またはリンクごとの統計を表示することがあります。各タイプの情報を取得するには、異なるコマンドを使用します。

データリンクに関する基本情報を取得するには、dladm show-link を使用します。このコマンドは、次の出力に示すように、システム上のすべてのデータリンクまたは指定されたデータリンクのリンク構成情報を表示します。

# dladm show-link
LINK CLASS MTU STATE   OVER
net1 phys 1500 unknown --
net0 phys 1500 up      --

前の出力は、このシステムに、それぞれ対応する物理 NIC に直接関連付けられた 2 つのデータリンクが存在することを示しています。システム上に特殊なデータリンク (アグリゲーションや VNIC など) は存在しません。これらのタイプの L2 エンティティーは、phys クラスの下の物理データリンク上に構成されます。

データリンクレイヤーでのネットワークトラフィック使用状況を監視するには、dlstat show-link コマンドを使用します。show-link サブコマンドは、ネットワークプロトコルスタックのデータリンクレイヤーで動作し、物理リンク上に構成されているレーンに関する統計を提供します。

次の出力は、リンクごとのインバウンドおよびアウトバウンドトラフィック統計を示しています。

# dlstat show-link
LINK   IPKTS  RBYTES  OPKTS  OBYTES
net1   0      0         0         0
net0   1.96M  137.97M   38.40K    3.29M

次の例では、net4 デバイスの受信側のトラフィック統計が報告されます。また、INTRS および POLLS カウンタの統計も表示されます。これらの統計は、割り込みコンテキストとポーリングモードのそれぞれで受信されたパケットの数を報告します。IDROPS カウンタは、ネットワークスタックのデータリンクレイヤーで破棄されたパケットの数を示しています。

# dlstat show-link -r net4
LINK TYPE   ID    INDEX    IPKTS  RBYTES    INTRS    POLLS   IDROPS
net4 rx    local  --        0      0        0        0       0
net4 rx    other  --        0      0        0        0       0
net4 rx    hw     0     7.46M  1.06G    5.62M    1.84M       0
net4 rx    hw     1        0      0         0        0       0
net4 rx    hw     2        0      0         0        0       0
net4 rx    hw     3        0      0         0        0       0
net4 rx    hw     4        2    196         2        0       0
net4 rx    hw     5        0      0         0        0       0
net4 rx    hw     6        0      0         0        0       0
net4 rx    hw     7        0      0         0        0       0

前の出力では、指定されたリンク、物理デバイス (show-phys サブコマンドの場合)、またはアグリゲーション (show-aggr サブコマンドの場合) の統計のみが表示されます。このコマンドで link が指定されていない場合は、すべてのリンク、デバイス、およびアグリゲーションの統計が出力に表示されます。

    この例では、ID フィールドに表示される情報は次のように解釈されます。

  • local – ネットワークスタックのレイヤー 2 (L2) 上の対応するループバックトラフィックを示します。

  • other – ブロードキャストおよびマルチキャストトラフィックが含まれます。

    データリンクの有効期間を通して、そのデータリンクに関連付けられたハードウェアリソースは、リソース使用率、リンク構成、または物理 NIC のリンクアグリゲーションへの割り当てによって異なる可能性があります。show-link –r コマンドの出力に示されている rx エントリは、現在そのリンクに割り当てられているハードウェアリソースに対応します。other 行の出力には、そのデータリンクにはすでに割り当てられていないハードウェアリソースのトラフィックが含まれています。

  • hw – ハードウェアレーンを示します。

  • sw – ソフトウェアレーンを示します (次の例を参照してください)。

ハードウェアレーンとソフトウェアレーンの区別は、リング割り当てをサポートする NIC の能力に基づいています。ハードウェアレーン上では、リングは、それらのレーンを使用するパケット専用になります。これに対して、ソフトウェアレーン上のリングはデータリンクの間で共有されます。

次の出力は、net1 によって使用されているリング上のアウトバウンドパケットに関する統計を報告します。

# dlstat show-link -t net1
LINK  TYPE      ID  INDEX    OPKTS   OBYTES   ODROPS
net4    tx   local     --        0        0        0  
net4    tx   other     --        0        0        0  
net4    tx      hw      0      372   15.67K        0  
net4    tx      hw      1        1       98        0
net4    tx      hw      2        0        0        0 
net4    tx      hw      3        0        0        0
net4    tx      hw      4        0        0        0
net4    tx      hw      5        0        0        0
net4    tx      hw      6        1        98       0
net4    tx      hw      7        0        0        0

アグリゲーションのネットワーク構成およびトラフィック使用状況の監視

アグリゲーションもまた、ネットワークプロトコルスタックのデータリンクレイヤー (L2) で構成されます。取得する情報のタイプ (物理 NIC 間のトラフィックの全体的な分布やアグリゲーションの統計など) に応じて、次のコマンドを使用します。

dladm show-aggr

すべてのアグリゲーションまたは指定されたアグリゲーションのアグリゲーション構成 (デフォルト)、LACP 情報、または DLMP プローブベースの障害および回復検出ステータスを表示します。

アグリゲーションの詳細なアグリゲーションごとの情報を表示するには、–x オプションを指定します。

dlstat show-aggr

アグリゲーションで送受信されたパケット数とバイト数に関するポートごとの統計を表示します。

dlstat show-link

アグリゲーション (データリンクであるアグリゲーション) で送受信されたパケット数とバイト数に関する統計を表示します。

dlstat show-aggr コマンドと dlstat show-link コマンドの 1 つの違いは、dlstat show-aggr コマンドがポートごとの統計を表示するのに対して、dlstat show-link コマンドはリンクごとの統計を提供することです。これらの 2 つのコマンドのもう 1 つの重要な違いとして、dlstat show-aggr コマンドは、アグリゲーション全体に関する全体的な統計を表示します。これに対して、dlstat show-link コマンドは、アグリゲーションのプライマリクライアント (IP など) に関する統計のみを表示します。

そのため、アグリゲーション上に VNIC を作成した場合、dlstat show-aggr コマンドはすべての VNIC にわたるパケットの総数に加え、プライマリクライアント (IP) に関する統計を報告します。この出力は、show-link サブコマンドと比較した場合の show-phys サブコマンドに似ています。この場合、show-phys が全体的なトラフィック使用状況を表示するのに対して、show-link はプライマリデータリンクのトラフィック使用状況のみを表示します。

次の例は、アグリゲーションのネットワークトラフィック使用状況を監視する方法を示しています。アグリゲーションの管理の詳細は、Oracle Solaris 11.3 でのネットワークコンポーネントの構成と管理 の 第 2 章, Oracle Solaris でのデータリンク構成の管理を参照してください。

使用例 1  アグリゲーション構成情報の表示

次の出力例では、システム上に構成されている既存のアグリゲーションのステータスを報告します。

# dladm show-aggr -x
LINK  PORT SPEED    DUPLEX  STATE  ADDRESS          PORTSTATE
aggr1 --   1000Mb   full    up     0:14:4f:29:d1:9d --
net1       1000Mb   full    up     0:14:4f:29:d1:9d attached
net3       0Mb      unknown down   0:14:4f:29:d1:9f standby
使用例 2  アグリゲーションのポートごとの統計の表示

dlstat show-aggr コマンドの次の出力例では、アグリゲーションのポートごとの統計を報告します。アグリゲーションで送受信されたパケット数とバイト数の両方が表示されます。

# dlstat show-aggr
LINK            PORT    IPKTS      RBYTES    OPKTS   OBYTES
aggr1             --      99 1      2.18K     23       966
aggr1             net4    25        1.50K      8       336
aggr1             net5    74        10.68K    15       630
使用例 3  アグリゲーションのリンクごとの統計の表示

dlstat show-link コマンドの次の出力例では、アグリゲーションのリンクごとの統計を報告します。アグリゲーションで送受信されたパケット数とバイト数の両方が表示されます。この例と前の例の違いは、show-aggr サブコマンドがポートごとの統計を報告するのに対して、show-link サブコマンドはリンクごとの統計を報告することです。

# dlstat show-link
LINK    IPKTS     RBYTES    OPKTS   OBYTES
net5        0          0        0        0
net2        0          0    5.60K    1.49M
net4        0          0        0        0
net6    4.43K      1.32M    6.39K    1.56M
net1    4.43K      1.32M    6.39K    1.56M
net0  387.10K     99.42M   59.43K    7.67M
net3        0          0    5.61K    1.50M
aggr1     150     18.65K        30   1.26K
使用例 4  アグリゲーションのハードウェアリングに関する受信側のトラフィック統計の表示

次の例では、アグリゲーション (aggr1) のハードウェアリングに関する受信側の統計を報告します。

# dlstat show-phys -r aggr1
LINK TYPE INDEX   IPKTS  RBYTES
aggr1   rx     0     723  43.38K
aggr1   rx     1       0       0
aggr1   rx     2       0       0
aggr1   rx     3       0       0
aggr1   rx     4       0       0
aggr1   rx     5       0       0
aggr1   rx     6       0       0
aggr1   rx     7       0       0
aggr1   rx     8  22.20K   1.33M
aggr1   rx     9     692  63.66K
aggr1   rx    10       0       0
aggr1   rx    11       0       0
aggr1   rx    12       0       0
aggr1   rx    13  12.99K   4.44M
aggr1   rx    14       0       0
aggr1   rx    15  10.39K 623.34K
使用例 5  アグリゲーションのハードウェアレーンに関する受信側のトラフィック統計の表示

次の例では、アグリゲーション (aggr1) の各ハードウェアレーンに関する受信側のトラフィック統計を報告します。報告される統計が、アグリゲーションのプライマリクライアントのトラフィック (そのアグリゲーション上の IP トラフィックなど) にのみ関連していることに注意してください。この出力には、そのアグリゲーション上に構成されているほかのクライアント (VNIC など) に関するトラフィック統計は含まれていません。アグリゲーションのすべてのクライアントのトラフィック使用状況を表示するには、使用例 1および 使用例 4に示すように、dlstat show-aggr および dlstat show-phys を使用します。

# dlstat show-link -r aggr1
LINK   TYPE    ID    INDEX    IPKTS   RBYTES    INTRS   POLLS  IDROPS
aggr1   rx   local     --       0       0        0        0      0
aggr1   rx   other     --       0       0        0        0      0
aggr1   rx      hw      0     721   43.26K     721        0      0
aggr1   rx      hw      1       0       0        0        0      0
aggr1   rx      hw      2       0       0        0        0      0
aggr1   rx      hw      3       0       0        0        0      0
aggr1   rx      hw      4       0       0        0        0      0
aggr1   rx      hw      5       0       0        0        0      0
aggr1   rx      hw      6       0       0        0        0      0
aggr1   rx      hw      7       0       0        0        0      0
aggr1   rx      hw      8  22.23K   1.33M   22.23K        0      1
aggr1   rx      hw      9     693  63.76K      693        0      0
aggr1   rx      hw     10       0       0        0        0      0
aggr1   rx      hw     11       0       0        0        0      0
aggr1   rx      hw     12       0       0        0        0      0
aggr1   rx      hw     13  13.00K   4.45M    13.00K       0      2
aggr1   rx      hw     14       0       0        0        0      0
aggr1   rx      hw     15  10.40K 624.06K   10.40K        0      0

EVS スイッチのネットワーク構成およびトラフィック使用状況の監視

Oracle Solaris のエラスティック仮想スイッチ (EVS) 機能は、ネットワークプロトコルスタックのデータリンクレイヤーで構成および管理します。表示する情報のタイプに応じて、次のコマンドを使用します。

evsadm

EVS スイッチとそのリソースである IP ネットワーク (IPnet) および仮想ポート (VPort) を作成および管理します。

EVS コントローラによって管理されているすべての EVS スイッチまたは指定された EVS スイッチの情報を表示するには、show-evs サブコマンドを使用します。

evsstat

大規模な配置のすべての VPort または指定されたエラスティック仮想スイッチのすべての VPort のネットワークトラフィック統計を表示します。このコマンドはまた、その VPort に関連付けられたすべての VNIC の統計も報告します。

dladm show-vnic -c

EVS スイッチに接続されている VNIC に関する情報を表示します。その VNIC が接続されている VPort と EVS スイッチは、EVS スイッチによって決定されます。

次の例は、エラスティック仮想スイッチの構成情報を表示したり、EVS 構成のネットワークトラフィック使用状況やその他の統計を監視したりする方法を示しています。EVS 機能の管理の詳細は、Oracle Solaris 11.3 での仮想ネットワークとネットワークリソースの管理 の 第 6 章, エラスティック仮想スイッチの管理を参照してください。

使用例 6  EVS 構成に関する情報の表示

次の例では、evsadm コマンドを使用して EVS 構成に関する基本情報を表示します。

# evsadm
NAME          TENANT        STATUS  VNIC    IP          HOST
evs0          sys-global    busy    --      ipnet0      sysabc-02
sys-vport0    --            used    vnic0   10.0.0.2/24 sysabc-02
使用例 7  EVS スイッチに接続されている VPort のインバウンドおよびアウトバウンドトラフィック使用状況の表示

次の例では、evsstat コマンドを使用して、EVS スイッチに接続されている VPort のみの受信および送信ネットワークトラフィック統計を表示します。

# evsstat
VPORT       EVS   TENANT      IPKTS    RBYTES   OPKTS  OBYTES
sys-vport0  evs0  sys-tenant  101.88K  32.86M  40.16K  4.37M
sys-vport1  evs0  sys-tenant    4.50M   6.78G   1.38M  90.90M
使用例 8  EVS スイッチに接続されている VNIC に関する情報の表示

VNIC には、ベースとなるリンク上に作成するものと、EVS スイッチに接続されているものの 2 つのタイプがあります。EVS スイッチに接続されている VNIC に関する情報を取得するには、次の例に示すように、dladm show-vnic コマンドを –c オプションとともに使用します。

# dladm show-vnic -c
LINK       TENANT        EVS     VPORT       OVER   MACADDRESS        IDS
vnic0      sys-global    evs0    sys-vport0  net    12:8:20:f2:46:22  VID:200

VNIC のネットワーク構成およびトラフィック使用状況の監視

VNIC は、ネットワークプロトコルスタックのデータリンクレイヤー (L2) で構成されます。これらの L2 エンティティーに関する構成情報を表示したり、ネットワークトラフィック使用状況を監視したりするには、次のコマンドを使用します。

dladm show-vnic

システム上のすべての VNIC、リンク上のすべての VNIC、または指定された vnic-link の VNIC 構成情報を表示します。

dlstat

VNIC ごとの送受信されたパケット数とバイト数に関する統計を表示します。

次の例は、VNIC のネットワークトラフィック使用状況を監視する方法を示しています。VNIC の管理の詳細は、Oracle Solaris 11.3 での仮想ネットワークとネットワークリソースの管理 の VNIC の管理を参照してください。

使用例 9  VNIC 構成情報の表示

次の例では、システム上の 1 つの既存の VNIC (vnic0) の VNIC 構成情報を表示します。

# dladm show-vnic
LINK        OVER        SPEED  MACADDRESS       MACADDRTYPE IDS
vnic0       net1        1000   2:8:20:f2:46:22  fixed       VID:200
使用例 10  VNIC のネットワークトラフィック統計の表示

次の例では、dlstat コマンドを使用して、特定の VNIC (vnic0) によって送受信されたパケット数とバイト数に関する統計を表示します。

# dlstat vnic0            
LINK    IPKTS   RBYTES    OPKTS    OBYTES           
vnic0   1.53M   158.18M   154.22K  32.84M

IP レイヤーでのネットワーク構成およびトラフィック使用状況の監視

ネットワークプロトコルスタックの IP レイヤー (L3) でのネットワークトラフィック使用状況は、いくつかの異なるコマンドを使用して監視します。表示する情報のタイプに応じて、次のコマンドを使用します。

flowstat

ネットワークプロトコルスタックの IP レイヤーで構成されているさまざまな IP アドレスまたはサブネットに対して作成するフローに関する統計を表示します。

ipadm

IP インタフェースおよびアドレスに関する一般的な構成情報を表示します。

ipadm show-addr

指定されたアドレスオブジェクト (addrobj)、または指定されたインタフェース上に構成されているすべてのアドレスオブジェクト (永続的な構成だけに存在するものも含む) の IP アドレス情報を表示します。

ipadm show-if

システム上に構成されているすべてのネットワークインタフェース (永続的な構成だけに存在するものも含む)、または指定されたインタフェースのネットワークインタフェース構成情報を表示します。

ipstat

選択された出力モードとソート順序に基づいて、IP トラフィックに関する統計を表示します。

netstat

ネットワークに関連した特定のデータ構造の内容をさまざまな形式で表示します。

次の例は、ネットワークプロトコルスタックの IP レイヤーで構成されているネットワーク機能に関するネットワークトラフィック使用状況を監視したり、統計を収集したりする方法を示しています。IP 構成の管理の詳細は、Oracle Solaris 11.3 でのネットワークコンポーネントの構成と管理 の IP インタフェースとアドレスのモニタリングを参照してください。ipstat(1M) および netstat(1M) のマニュアルページも参照してください。

使用例 11  IP 構成に関する一般的な情報の表示

IP 構成に関する一般的な情報を表示するには、ipadm コマンドを使用します。次の例は、システム上に構成されているすべての IP インタフェースおよびアドレスに関する情報を表示する方法を示しています。

# ipadm
NAME             CLASS/TYPE STATE        UNDER      ADDR
lo0              loopback   ok           --         --
   lo0/v4        static     ok           --         127.0.0.1/8
   lo0/v6        static     ok           --         ::1/128
net0             ip         ok           --         -- 
   net0/v4       static     ok           --         10.134.67.140/24
使用例 12  構成されている IP インタフェースに関する情報の表示

システム上に構成されている IP インタフェースに関する情報を表示するには、次の例に示すように、ipadm コマンドを show-if サブコマンドとともに使用します。

# ipadm show-if
IFNAME   CLASS      STATE   ACTIVE   OVER
lo0      loopback   ok       yes     ---
net0     ip         ok       yes     ---
使用例 13  構成されている IP アドレスオブジェクトに関する情報の表示

次の例は、ipadm コマンドを show-addr サブコマンドとともに使用して、システム上に構成されている IP アドレスオブジェクトに関する情報を表示する方法を示しています。

# ipadm show-addr
ADDROBJ      TYPE       STATE   ADDR
lo0/v4       static     ok      127.0.0.1/8
使用例 14  ipstat コマンドを使用した IP トラフィックに関する統計の表示

次の例は、ipstat コマンドを使用して IP トラフィックに関する統計を表示する方法を示しています。このコマンドには、指定された発信元または宛先アドレス、インタフェース、および上位レイヤープロトコルに一致する IP トラフィックに関する統計を報告するためのオプションが用意されています。

# ipstat
SOURCE               DEST                  PROTO   INT   RATE
abc11example-02      dhcp-sys.example      TCP     net0  145.6
dns1.example.com     abc11example-02       UDP     net0  66.0
abc11example-02      dns1.example.com      UDP     net0  10.4
dhcp-sys.example     abc11example-02       TCP     net0  4.0
foo1.example.com     all-sys.mcast.net     ICMP    net0  3.2

詳細は、Oracle Solaris 11.3 での TCP/IP ネットワーク、IPMP、および IP トンネルの管理 の ipstat および tcpstat コマンドを使用したネットワークトラフィックの監視を参照してください。

使用例 15  netstat コマンドを使用した接続されたソケットの表示

netstat コマンドは、ネットワークステータスやプロトコル統計を表示します。TCP、SCTP、および UDP の各エンドポイントのステータスは表形式で表示できます。また、このコマンドを使用して、ルーティングテーブルやインタフェース情報を表示することもできます。報告されるさまざまなタイプのネットワークデータは、指定するコマンド行オプションによって異なります。

次の例では、netstat コマンドをオプションなしで使用して、プロトコルごとのアクティブなソケットのリストを表示します。

# netstat
 TCP: IPv4
   Local Address        Remote Address          Swind  Send-Q  Rwind   Recv-Q  State
  ------------------     -----------------    -------  ------  ------- ------  --------
   localsys.local.port1  remotesys1             65535   0      128592   0      ESTABLISHED
   localsys.local.port2  localsys.local.port5   130880  0      139264   0      ESTABLISHED
   localsys.local.port3  localsys.local.port6   139060  0      130880   0      ESTABLISHED
   localsys.local.port4  remotesys2.remote.port2 65572  63     128480   0      ESTABLISHED

次の例に示すように、適用可能なソケットのみの統計または状態の表示を特定のプロトコルに制限するには、netstat –P protocol コマンドを次のように使用します。

# netstat -P tcp
TCP: IPv4
Local Address Remote Address               Swind  Send-Q  Rwind  Recv-Q    State
------------ --------------------          ------ ------ ------- ------  -------- 
sys3.48962   foo.com.ldaps                 49232   0   128872    0    ESTABLISHED
sys3.ssh     dhcp1-10-132-146-210.foo.com  64292  63   128480    0    ESTABLISHED

protocol は、ipipv6icmpicmpv6igmpudptcprawip のいずれかとして指定できます。

次の簡略化された例は、netstat –s コマンドを使用してプロトコルごとの統計を表示する方法を示しています。

# netstat -s
RAWIP   rawipInDatagrams    =     2    rawipInErrors   =  0
        rawipInCksumErrs    =     0
        rawipOutDatagrams   =     2
        rawipOutErrors      =     0
    
UDP     udpInDatagrams      =   1023   udpInErrors    =   0
        udpOutDatagrams     =   1023
        udpOutErrors        =      0
    
TCP     tcpRtoAlgorithm     =      4    tcpRtoMin     =   200
        tcpRtoMax           =  60000
        tcpMaxConn          =     -1
        tcpActiveOpens      =    382
        tcpPassiveOpens     =     83
        tcpAttemptFails     =     81
        tcpEstabResets      =      1
        tcpCurrEstab        =      2
        tcpOutSegs          =   6598
        tcpOutDataSegs      =   5653
        tcpOutDataBytes     = 836393
        tcpRetransSegs      =     16 
. . .
使用例 16  ネットワークスタックの IP レイヤーで構成されているフローに関する統計の表示

次の例に示すように、ネットワークプロトコルスタックの IP レイヤーで構成されている目的とするさまざまな IP アドレスまたはサブネットのフローを作成できます。次に、flowstat コマンドを使用すると、これらのフローに関する統計を表示できます。

# flowadm add-flow -l net0 -a transport=tcp tcpflow1
# flowadm add-flow -l net4 -a transport=tcp tcpflow2

# flowstat
FLOW      IPKTS   RBYTES   IDROPS    OPKTS   OBYTES   ODROPS
tcpflow2      0       0        0        0        0        0
tcpflow1     53   5.62K        0       45    5.52K        0

特定のデータリンクデバイスのフロー情報を表示するには、–l オプションを指定します。

# flowstat -l net0
FLOW      IPKTS   RBYTES  IDROPS   OPKTS  OBYTES ODROPS
tcpflow1    108   11.19K       0     86   10.45K      0
使用例 17  特定の IP アドレスのフローの作成および監視

flowadm add-flow コマンドで local_ip および remote_ip 属性を使用しすると、特定の IP アドレスのフローを作成できます。次の例に示すように、次に flowstat コマンドを使用すると、これらのフローに関する統計を表示できます。

# flowadm add-flow -l net0 -a local_ip=10.10.12.45 flow1
# flowadm add-flow -l net4 -a remote_ip=10.134.64.0/24 flow2
# flowstat 
FLOW      IPKTS     RBYTES   IDROPS    OPKTS  OBYTES   ODROPS
flow2   528.54K    787.39M        0  179.39K  11.85M        0
flow1   742.81K      1.10G        0        0       0        0

トランスポートレイヤーでのネットワーク構成およびトラフィック使用状況の監視

ネットワークプロトコルスタックのトランスポートレイヤー (L4) で構成および管理されている機能のネットワークトラフィックは、次のコマンドを使用して監視します。

flowstat

ユーザー定義のフローに関する実行時統計を報告します。flowstat コマンドで指定するフロー名を確認するには、flowadm show-flow コマンドを使用します。

フローは、帯域幅制御のためだけではなく、(たとえば、特定のサービスが消費するトラフィックの量を測定するための) 可観測性ツールとしても使用できます。

netstat

ネットワークに関連した特定のデータ構造の内容をさまざまな形式で表示します。引数なしの netstat コマンドは、–f オプションを使用して変更されないかぎり、PF_INETPF_INET6、および PF_UNIX の接続されたソケットを表示します。

tcpstat

コマンド構文で指定されている選択された出力モードとソート順序に基づいて、サーバー上の TCP および UDP トラフィックに関する統計を報告します。

次の例は、ネットワークプロトコルスタックのトランスポートレイヤーで構成されている機能に関するネットワークトラフィック使用状況を監視したり、統計を収集したりする方法を示しています。

netstat および tcpstat コマンドを使用した TCP/IP ネットワークの管理の詳細は、Oracle Solaris 11.3 での TCP/IP ネットワーク、IPMP、および IP トンネルの管理 の 第 1 章, TCP/IP ネットワークの管理を参照してください。

flowstat コマンドの詳細は、Oracle Solaris 11.3 での仮想ネットワークとネットワークリソースの管理 の フロー上のネットワークトラフィックの統計情報の表示および flowstat(1M) のマニュアルページを参照してください。

使用例 18  flowstat コマンドを使用したフローに関する実行時統計の表示

次の出力例は、システム上の構成されているすべてのフローに関するトラフィック情報の静的な表示を示しています。flowadm コマンドは、フローの名前を確認するために使用されます。

# flowadm
FLOW        LINK     PROTO LADDR   LPORT RADDR  RPORT DIR
tcpflow1    net1     tcp   --      --    --     --    bi
tcpflow0    net0     tcp   --      --    --     --    bi
udpflow0    net0     udp   --      --    --     --    bi

# flowstat
FLOW       IPKTS   RBYTES  IDROPS    OPKTS   OBYTES   ODROPS
tcpflow1      0        0       0        0        0        0
tcpflow0  1.39K  117.86K       0     2.16K  260.77K        0
udpflow0      5    1.43K       0         0        0        0

次の 2 つの例の出力に示すように、flowstat コマンドを –l オプションとともに使用して、指定されたリンクのすべてのフローに関する統計または指定されたフローに関する統計を表示することもできます。

# flowstat -l net0
FLOW      IPKTS   RBYTES   IDROPS    OPKTS    OBYTES   ODROPS
tcpflow0  1.51K  126.85K        0    2.43K   292.85K        0
udpflow0      9    2.80K        0        0         0        0
# flowstat -l net0 tcpflow0
FLOW      IPKTS    RBYTES   IDROPS     OPKTS   OBYTES  ODROPS
tcpflow0  1.66K   137.11K        0     2.69K  324.42K       0
使用例 19  netstat コマンドを使用したトランスポートレイヤーのデータ構造に関する情報の表示

netstat コマンドを使用すると、ネットワークプロトコルスタックのトランスポートレイヤー (L4) のデータ構造 (TCP や UDP など) に関する情報を表示できます。次の例では、netstat –P transport-protocol コマンドを使用して TCP に関する情報を表示します。

# netstat -p tcp
TCP: IPv4 
  Local Address     Remote Address   Swind   Send-Q  Rwind  Recv-Q  State
  ----------------  ---------------  ------- ------ ------- ------ -----------
  localsys.ssh     remotesys1.port4   65380     63     128480   0    ESTABLISHED
  localsys.port1   remotesys2.ldaps   65535      0     128592   0    ESTABLISHED
  localsys.port2   localsys.port5    130880     0      139264   0    ESTABLISHED
  localsys.port3   localsys.port6    139060     0      130880   0    ESTABLISHED
使用例 20  tcpstat コマンドを使用した TCP および UDP トラフィックに関する統計の表示

ネットワークプロトコルスタックのトランスポートレイヤーのネットワークトラフィック (特に TCP および UDP) を監視するには、tcpstat コマンドを使用します。発信元および宛先 IP アドレスに加えて、発信元および宛先 TCP または UDP ポート、トラフィックを送信または受信しているプロセスの PID、およびそのプロセスが動作している大域ゾーンの名前を監視できます。

次の例は、tcpstat コマンドを –c オプションとともに使用したときに報告される情報のタイプを示しています。–c オプションは、新しいレポートを前のレポートのあとに、前のレポートを上書きすることなく出力するように指定します。

# tcpstat -c 3
ZONE         PID PROTO  SADDR             SPORT DADDR             DPORT   BYTES
global    100680 UDP    antares           62763 agamemnon          1023   76.0
global    100680 UDP    antares             775 agamemnon          1023   38.0
global    100680 UDP    antares             776 agamemnon          1023   37.0
global    100680 UDP    agamemnon          1023 antares           62763   26.0
global    104289 UDP    zucchini          48655 antares            6767   16.0
global    104289 UDP    clytemnestra      51823 antares            6767   16.0
global    104289 UDP    antares            6767 zucchini          48655   16.0
global    104289 UDP    antares            6767 clytemnestra      51823   16.0
global    100680 UDP    agamemnon          1023 antares             776   13.0
global    100680 UDP    agamemnon          1023 antares             775   13.0
global    104288 TCP    zucchini          33547 antares            6868    8.0
global    104288 TCP    clytemnestra      49601 antares            6868    8.0
global    104288 TCP    antares            6868 zucchini          33547    8.0
global    104288 TCP    antares            6868 clytemnestra      49601    8.0
Total: bytes in: 101.0  bytes out: 200.0 

次の出力では、tcpstat コマンドは、サーバーでもっともアクティブな 5 つの TCP トラフィックフローを報告します。

# tcpstat -l 5
ZONE            PID PROTO  SADDR            SPORT DADDR            DPORT   BYTES
global        28919 TCP    achilles.exampl  65398 aristotle.exampl   443   33.0
zone1          6940 TCP    ajax.example.com  6868 achilles.exampl  61318    8.0
zone1          6940 TCP    achilles.exampl  61318 ajax.example.com  6868    8.0
global         8350 TCP    ajax.example.com  6868 achilles.exampl  61318    8.0
global         8350 TCP    achilles.exampl  61318 ajax.example.com  6868    8.0
Total: bytes in: 16.0  bytes out: 49.0

詳細は、Oracle Solaris 11.3 での TCP/IP ネットワーク、IPMP、および IP トンネルの管理 の ipstat および tcpstat コマンドを使用したネットワークトラフィックの監視および tcpstat(1M) のマニュアルページを参照してください。