この特集のトップページへ
この回のトップページへ

tcpサブツリー(1.3.6.1.2.1.6

 tcpサブツリーにはTCP接続に関する情報が格納されている(Table 6)。

Table 6 tcpサブツリー(1.3.6.1.2.1.6
OID 1.3.6.1.2.1.6.1
サブツリー名 tcpRtoAlgorithm
用途 応答が確認できなかったとき,再送までのタイミングを決めるアリゴリズムの種類。詳細はRFC1213を参照
OID 1.3.6.1.2.1.6.2
サブツリー名 tcpRtoMin
用途 再送時に使うタイムアウト時間の最小値(ミリ秒)
OID 1.3.6.1.2.1.6.3
サブツリー名 tcpRtoMax
用途 再送時に使うタイムアウト時間の最大値(ミリ秒)
OID 1.3.6.1.2.1.6.4
サブツリー名 tcpMaxConn
用途 サポートする最大TCPコネクション数
OID 1.3.6.1.2.1.6.5
サブツリー名 tcpActiveOpens
用途 アクティブオープン(CLOSE状態からSYN-SENT状態になった。つまりこちら側から別のホストにコネクションを張った)TCPコネクションの総計
OID 1.3.6.1.2.1.6.6
サブツリー名 tcpPassiveOpens
用途 パッシブオープン(LISTEN状態からSYN-REVD状態になった。つまりこちらが待ち受け状態になっていてほかのホストが接続してきた)TCPコネクションの総計
OID 1.3.6.1.2.1.6.7
サブツリー名 tcpAttemptFails
用途 接続に失敗した総数
OID 1.3.6.1.2.1.6.8
サブツリー名 tcpEstabResets
用途 リセットされた総数
OID 1.3.6.1.2.1.6.9
サブツリー名 tcpCurrEstab
用途 現在の状態がESTABLISHED(接続中)またはCLOSE-WAIT(切断待ち)であるコネクションの総数
OID 1.3.6.1.2.1.6.10
サブツリー名 tcpInSegs
用途 受信したセグメントの総数
OID 1.3.6.1.2.1.6.11
サブツリー名 tcpOutSegs
用途 送信したセグメントの総数
OID 1.3.6.1.2.1.6.12
サブツリー名 tcpRetransSegs
用途 再送したセグメントの総数
OID 1.3.6.1.2.1.6.13
サブツリー名 tcpConnTable
用途 現在張られているTCPコネクションを保持する階層ツリー。下位にtcpConnEntryサブツリーを含む。値はない
OID 1.3.6.1.2.1.6.13.1
サブツリー名 tcpConnEntry
用途 TCPコネクションの状態を保持する階層ツリー。値はない
OID 1.3.6.1.2.1.6.13.1.1.aaa.bbb.
ccc.ddd.ppp.AAA.BBB.CCC.DDD.PPP
サブツリー名 tcpConnState
用途 このコネクションの状態。取りうる値についてはRFC1213を参照
OID 1.3.6.1.2.1.6.13.1.2.aaa.bbb.
ccc
.ddd.ppp.AAA.BBB.CCC.DDD.PPP
サブツリー名 tcpConnLocalAddress
用途 このコネクションのローカル側のIPアドレス。aaa.bbb.ccc.dddと同じ
OID 1.3.6.1.2.1.6.13.1.3.aaa.bbb.
ccc
.ddd.ppp.AAA.BBB.CCC.DDD.PPP
サブツリー名 tcpConnLocalPort
用途 このコネクションのローカル側のポート番号。pppと同じ
OID 1.3.6.1.2.1.6.13.1.4.aaa.bbb.
ccc.ddd.ppp.AAA.BBB.CCC.DDD.PPP
サブツリー名 tcpConnRemAddress
用途 このコネクションのリモート側のIPアドレス。AAA.BBB.CCC.DDDと同じ
OID 1.3.6.1.2.1.6.13.1.5.aaa.bbb.
ccc.ddd.ppp.AAA.BBB.CCC.DDD.PPP
サブツリー名 tcpConnRemPort
用途 このコネクションのリモート側のポート番号。PPPと同じ
OID 1.3.6.1.2.1.6.14
サブツリー名 tcpInErrs
用途 受信したエラーセグメントの総数
OID 1.3.6.1.2.1.6.15
サブツリー名 tcpOutRsts
用途 送信したセグメントのうちRSTフラグを設定したもの(コネクションをリセットした)の総数
aaa.bbb.ccc.dddはローカル側のIPアドレス。pppはローカル側のポート番号。AAA.BBB.CCC.DDDはリモート側のIPアドレス。PPPはリモート側のポート番号。

 tcpサブツリーには,TCPでの送受信セグメント数だけでなく,現在のTCPコネクションの情報も含まれている。現在のTCPコネクションの情報が含まれているのは,tcpConnTableサブツリー(1.3.6.1.2.1.6.13)の配下だ。snmpwalkコマンドを使ってtcpConnTableサブツリーの配下の値を取り出してみるとわかるが,ここにはifconfigコマンドで取得できるような,TCPコネクションの状態が格納されている(List 2)。

 List 2の実行結果では,次のコネクションが用意されていることを示している。

  • ポート25で待ち受け(listen
  • ポート111で待ち受け(listen
  • ポート113で待ち受け(listen
  • ポート5680で待ち受け(listen
  • ポート6000で待ち受け(listen
  • 127.0.0.1のポート1169と127.0.0.1のポート5680とが接続中(established

 実際に稼働しているホストでは,この程度の情報では済まず,もっと多数のコネクション情報が表示される。

 このようにtcpConnTableサブツリー(1.3.6.1.2.1.6.13)以下は,次のようなOIDのオブジェクトとして示される。

1.3.6.1.2.1.6.13.1.y.aaa.bbb.ccc.ddd.ppp.
AAA.BBB.CCC.DDD.PPP
y=情報の種別を示す番号
aaa.bbb.ccc.ddd=ローカル側のIPアドレス
ppp=ローカル側のポート番号
AAA.BBB.CCC.DDD=リモート側のIPアドレス
PPP=リモート側のポート番号

 SNMPでは,あらかじめどのようなコネクションが張られているかを知るすべはないから,tcpConnTableサブツリーに対してsnmpgetコマンドを使い,直接オブジェクトのデータを取得することは無意味だ。そのためここで示したように,snmpwalkコマンドなどを使い,tcpConnTableサブツリーの配下に含まれるオブジェクトの一覧を取得することで,現在のコネクションの一覧を得るという方法がとられるのが一般的だ。snmpgetコマンドを使って,1つのオブジェクトの値を取得するという方法は,あまりとられない。

PREV 16/36 NEXT