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 ネットワークの管理 (手順)

主な TCP/IP 管理作業 (作業マップ)

ifconfig コマンドによるインタフェース構成の監視

特定のインタフェースに関する情報を入手する方法

インタフェースアドレスの割り当てを表示する方法

netstat コマンドによるネットワークの状態の監視

プロトコル別の統計情報を表示する方法

転送プロトコルの状態を表示する方法

ネットワークインタフェースの状態を表示する方法

ソケットの状態を表示する方法

特定のアドレスタイプのパケット転送に関する状態を表示する方法

既知のルートの状態を表示する方法

ping コマンドによるリモートホストの検証

リモートホストが動作しているかを確認する方法

ホストでパケットが失われていないかを確認する方法

ネットワーク状態表示の管理と記録

IP 関連コマンドの表示出力を制御する方法

IPv4 経路制御デーモンの活動を記録する方法

IPv6 近傍検索デーモンの活動をトレースする方法

traceroute コマンドによる経路制御情報の表示

リモートホストまでのルートを発見する方法

すべてのルートをトレースする方法

snoop コマンドによるパケット転送の監視

すべてのインタフェースからのパケットをチェックする方法

snoop の出力をファイルに取り込む方法

IPv4 サーバー/クライアント間のパケットを確認する方法

IPv6 ネットワークトラフィックを監視する方法

デフォルトアドレス選択の管理

IPv6 アドレス選択ポリシーテーブルを管理する方法

現在のセッションだけの IP6 アドレス選択テーブルを変更する方法

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

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

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

パート 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 の詳細 (リファレンス)

用語集

索引

netstat コマンドによるネットワークの状態の監視

netstat コマンドは、ネットワークの状態とプロトコル統計を表示します。TCP、SCTP、および UDP の各エンドポイントの状態は表形式で表示できます。経路制御テーブル情報やインタフェース情報も表示できます。

netstat コマンドは、さまざまな種類のネットワークデータを表示します。表示するデータはコマンド行オプションで選択できます。この表示は、特にシステム管理に役立ちます。次に、netstat コマンドの基本構文を示します。

netstat [-m] [-n] [-s] [-i | -r] [-f address-family]

この節では、netstat コマンドで最も一般的に使用されるオプションについて説明します。netstat のすべてのオプションの詳細については、netstat(1M) のマニュアルページを参照してください。

プロトコル別の統計情報を表示する方法

netstat-s オプションは、UDP、TCP、SCTP、ICMP、および IP のプロトコルについて、プロトコル別の統計情報を表示します。


注 - netstat コマンドからの出力は、Oracle Solaris ユーザーアカウントで取得できます。


例 8-5 ネットワークプロトコルの統計

次の例に、netstat -s コマンドの出力を示します。出力の一部は省略されています。この出力は、プロトコルが問題を持っている場所を示すことがあります。たとえば、ICMPv4 と ICMPv6 からの統計情報は、このプロトコルがどこにエラーを検出したかを示します。

RAWIP
        rawipInDatagrams    =  4701     rawipInErrors       =     0
        rawipInCksumErrs    =     0     rawipOutDatagrams   =     4
        rawipOutErrors      =     0

UDP
        udpInDatagrams      = 10091     udpInErrors         =     0
        udpOutDatagrams     = 15772     udpOutErrors        =     0

TCP     tcpRtoAlgorithm     =     4     tcpRtoMin           =   400
        tcpRtoMax           = 60000     tcpMaxConn          =    -1
        .
        .
        tcpListenDrop       =     0     tcpListenDropQ0     =     0
        tcpHalfOpenDrop     =     0     tcpOutSackRetrans   =     0

IPv4    ipForwarding        =     2     ipDefaultTTL        =   255
        ipInReceives        =300182     ipInHdrErrors       =     0
        ipInAddrErrors      =     0     ipInCksumErrs       =     0
        .
        .
        ipsecInFailed       =     0     ipInIPv6            =     0
        ipOutIPv6           =     3     ipOutSwitchIPv6     =     0

IPv6    ipv6Forwarding      =     2     ipv6DefaultHopLimit =   255
        ipv6InReceives      = 13986     ipv6InHdrErrors     =     0
        ipv6InTooBigErrors  =     0     ipv6InNoRoutes      =     0
        .
        .
        rawipInOverflows    =     0     ipv6InIPv4          =     0
 
       ipv6OutIPv4         =     0     ipv6OutSwitchIPv4   =     0

ICMPv4  icmpInMsgs          = 43593     icmpInErrors        =     0
        icmpInCksumErrs     =     0     icmpInUnknowns      =     0
        .
        .
        icmpInOverflows     =     0

ICMPv6  icmp6InMsgs         = 13612     icmp6InErrors       =     0
        icmp6InDestUnreachs =     0     icmp6InAdminProhibs =     0
        .
        .
        icmp6OutGroupQueries=     0     icmp6OutGroupResps  =     2
        icmp6OutGroupReds   =     0

IGMP:
      12287 messages received
          0 messages received with too few bytes
          0 messages received with bad checksum
      12287 membership queries received
SCTP  sctpRtoAlgorithm     =  vanj    
      sctpRtoMin           =  1000 
      sctpRtoMax           = 60000
      sctpRtoInitial       =  3000
      sctpTimHearBeatProbe =     2
      sctpTimHearBeatDrop  =     0
      sctpListenDrop       =     0
      sctpInClosed         =     0 

転送プロトコルの状態を表示する方法

netstat コマンドを使用すると、転送プロトコルの状態を表示できます。詳細については、netstat(1M) のマニュアルページを参照してください。

  1. システム上の TCP 転送プロトコルと SCTP 転送プロトコルの状態を表示します。
    $ netstat
  2. システム上の特定の転送プロトコルの状態を表示します。
    $ netstat -P transport-protocol

    transport-protocol 変数の値は、 tcpsctp、または udp です。

例 8-6 TCP 転送プロトコルと SCTP 転送プロトコルの状態の表示

次の例に、基本的な netstat コマンドの出力を示します。IPv4 専用の情報が表示されています。

$ netstat

TCP: IPv4
   Local Address     Remote Address    Swind Send-Q  Rwind Recv-Q      State
----------------- -------------------- ----- ------  ----- ------     -------
lhost-1.login      abc.def.local.Sun.COM.980 49640      0     49640    0 ESTABLISHED
lhost-1.login      ghi.jkl.local.Sun.COM.1020 49640     1     49640    0 ESTABLISHED
remhost-1.1014     mno.pqr.remote.Sun.COM.nfsd 49640    0     49640    0 TIME_WAIT
SCTP:                  
Local Address    Remote Address  Swind  Send-Q  Rwind  Recv-Q StrsI/O  State 
---------------- --------------  -----  ------ ------ ------  ------   -------
 *.echo            0.0.0.0            0       0 102400      0   128/1   LISTEN
 *.discard         0.0.0.0            0       0 102400      0   128/1   LISTEN
 *.9001            0.0.0.0            0       0 102400      0   128/1   LISTEN

例 8-7 特定の転送プロトコルの状態の表示

次の例に、netstat コマンドに -P オプションを指定したときの結果を示します。

$ netstat -P tcp
   
TCP: IPv4
   Local Address     Remote Address    Swind Send-Q  Rwind Recv-Q      State
----------------- -------------------- ----- ------  ----- ------     -------
lhost-1.login      abc.def.local.Sun.COM.980 49640      0     49640    0 ESTABLISHED
lhost.login        ghi.jkl.local.Sun.COM.1020 49640     1     49640    0 ESTABLISHED
remhost.1014       mno.pqr.remote.Sun.COM.nfsd 49640    0     49640    0 TIME_WAIT

TCP: IPv6
 Local Address    Remote Address        Swind Send-Q Rwind Recv-Q   State If 
---------------- ---------------------- ------ ----- ------ ----------- -----
localhost.38983   localhost.32777       49152      0 49152      0 ESTABLISHED      
localhost.32777   localhost.38983       49152      0 49152      0 ESTABLISHED      
localhost.38986   localhost.38980       49152      0 49152      0 ESTABLISHED      

ネットワークインタフェースの状態を表示する方法

netstat コマンドの i オプションは、ローカルシステムに構成されているネットワークインタフェースの状態を表示します。このオプションを使用すると、各ネットワーク上で送受信しているパケット数がわかります。

例 8-8 ネットワークインタフェースの状態の表示

次の例に、ホストのインタフェースを通る IPv4 と IPv6 のパケットフローの状態を示します。

たとえば、サーバーについて表示される入力パケットカウント (Ipkts) はクライアントがブートを試みるたびに増加しているのに、出力パケットカウント (Opkts) が変化しないことがあります。これは、サーバーがクライアントからのブート要求パケットを見ていることを意味します。しかし、サーバーはそれらのパケットに応答する方法を知りません。この混乱は、hosts データベース、ipnodes データベース、または ethers データベース内に誤ったアドレスがあることが原因であると考えられます。

しかし、入力パケットカウントが長時間にわたり変化しない場合は、マシンがパケットをまったく見ていません。この場合は、上記と違って、ハードウェアの問題の可能性が高くなります。

Name  Mtu  Net/Dest      Address        Ipkts  Ierrs Opkts  Oerrs Collis Queue 
lo0   8232 loopback      localhost      142    0     142    0     0      0     
hme0  1500 host58        host58        1106302 0     52419  0     0      0     

Name  Mtu  Net/Dest      Address                    Ipkts  Ierrs Opkts  Oerrs Collis
lo0   8252 localhost     localhost                   142    0     142    0     0     
hme0  1500 fe80::a00:20ff:feb9:4c54/10 fe80::a00:20ff:feb9:4c54 1106305 0 52422 0  0

ソケットの状態を表示する方法

netstat コマンドの -a オプションを使用すると、ローカルホスト上にあるソケットの状態を表示できます。

例 8-9 すべてのソケットと経路制御テーブルエントリの表示

netstat -a コマンドの出力には、膨大な統計が含まれます。次の例に、典型的な netstat -a コマンドの出力の一部を示します。

UDP: IPv4
   Local Address         Remote Address     State
-------------------- -------------------- -------
      *.bootpc                              Idle
host85.bootpc                               Idle
      *.*                                   Unbound
      *.*                                   Unbound
      *.sunrpc                              Idle
      *.*                                   Unbound
      *.32771                               Idle
      *.sunrpc                              Idle
      *.*                                   Unbound
      *.32775                               Idle
      *.time                                Idle
       .
       .
      *.daytime                             Idle
      *.echo                                Idle
      *.discard                             Idle
      
UDP: IPv6
   Local Address                     Remote Address                   State      If  
--------------------------------- --------------------------------- ---------- -----
      *.*                                                           Unbound   
      *.*                                                           Unbound   
      *.sunrpc                                                      Idle      
      *.*                                                           Unbound   
      *.32771                                                       Idle      
      *.32778                                                       Idle      
      *.syslog                                                      Idle      
      .
      .
TCP: IPv4
   Local Address        Remote Address    Swind Send-Q Rwind Recv-Q  State
-------------------- -------------------- ----- ------ ----- ------ -------
      *.*                  *.*                0      0 49152      0 IDLE
localhost.4999             *.*                0      0 49152      0 LISTEN
      *.sunrpc             *.*                0      0 49152      0 LISTEN
      *.*                  *.*                0      0 49152      0 IDLE
      *.sunrpc             *.*                0      0 49152      0 LISTEN
      .
      .
      *.printer            *.*                0      0 49152      0 LISTEN
      *.time               *.*                0      0 49152      0 LISTEN
      *.daytime            *.*                0      0 49152      0 LISTEN
      *.echo               *.*                0      0 49152      0 LISTEN
      *.discard            *.*                0      0 49152      0 LISTEN
      *.chargen            *.*                0      0 49152      0 LISTEN
      *.shell              *.*                0      0 49152      0 LISTEN
      *.shell              *.*                0      0 49152      0 LISTEN
      *.kshell             *.*                0      0 49152      0 LISTEN
      *.login  
       .
       .
            *.*                0      0 49152      0 LISTEN
   *TCP: IPv6
 Local Address            Remote Address        Swind Send-Q Rwind Recv-Q   State If
----------------------- ----------------------- ----- ------ ----- ------    ----
   *.*                         *.*                0      0 49152      0      IDLE
   *.sunrpc                    *.*                0      0 49152      0      LISTEN
   *.*                         *.*                0      0 49152      0      IDLE
   *.32774                     *.*                0      0 49152

特定のアドレスタイプのパケット転送に関する状態を表示する方法

netstat コマンドの -f オプションを使用すると、特定のアドレスファミリのパケット転送に関する統計を表示できます。

例 8-10 IPv4 パケット転送の状態

次に、netstat - f inet コマンドの出力例を示します。

TCP: IPv4
   Local Address        Remote Address    Swind Send-Q Rwind Recv-Q  State
-------------------- -------------------- ----- ------ ----- ------ -------
host58.734         host19.nfsd       49640      0 49640      0 ESTABLISHED
host58.38063       host19.32782      49640      0 49640      0 CLOSE_WAIT
host58.38146       host41.43601      49640      0 49640      0 ESTABLISHED
host58.996         remote-host.login 49640      0 49206      0 ESTABLISHED

例 8-11 IPv6 パケット転送の状態

次に、netstat - f inet6 コマンドの出力例を示します。

TCP: IPv6
 Local Address          Remote Address        Swind Send-Q Rwind Recv-Q   State    If
------------------ ------------------------- ----- ------ ----- ------ --------- -----
localhost.38065         localhost.32792       49152   0 49152      0    ESTABLISHED  
localhost.32792         localhost.38065       49152   0 49152      0    ESTABLISHED 
localhost.38089         localhost.38057       49152   0 49152      0    ESTABLISHED 

既知のルートの状態を表示する方法

netstat コマンドの -r オプションは、ローカルホストの経路制御テーブルを表示します。このテーブルには、ホストが知っているすべてのルートの状態が表示されます。netstat の r オプションは、ユーザーアカウントで実行できます。

例 8-12 netstat コマンドによる経路制御テーブルの出力

次に、netstat - r コマンドの出力例を示します。

Routing Table: IPv4
  Destination           Gateway           Flags  Ref   Use   Interface
-------------------- -------------------- ----- ----- ------ ---------
host15               myhost               U         1  31059  hme0
10.0.0.14            myhost               U         1      0  hme0
default              distantrouter        UG        1      2  hme0
localhost            localhost            UH        42019361  lo0

Routing Table: IPv6
  Destination/Mask            Gateway                   Flags Ref   Use   If  
--------------------------- --------------------------- ----- --- ------ -----
2002:0a00:3010:2::/64    2002:0a00:3010:2:1b2b:3c4c:5e6e:abcd U  1      0 hme0:1
fe80::/10                fe80::1a2b:3c4d:5e6f:12a2    U       1     23 hme0 
ff00::/8                 fe80::1a2b:3c4d:5e6f:12a2    U       1      0 hme0 
default                  fe80::1a2b:3c4d:5e6f:12a2    UG      1      0 hme0 
localhost                localhost                   UH      9  21832 lo0 

次の表では、netstat -r コマンドの画面出力の各種パラメータの意味について説明します。

パラメータ
説明
送信先

Destination/Mask

ルートの宛先エンドポイントであるホストを指定します。IPv6 経路制御テーブルには、6to4 トンネルのエンドポイントの接頭辞 (2002:0a00:3010:2::/64 ) がルートの宛先エンドポイントとして示されていることに注目してください。
Gateway
パケットの転送に使用するゲートウェイを指定します。
Flags
ルートの現在の状態を示します。U フラグはルートが up 状態であること、G フラグはルートがゲートウェイへのものであることを示します。
Use
送信したパケットの数を示します。
Interface
転送元のエンドポイントである、ローカルホスト上の特定のインタフェースを示します。