みなさん、こんにちは!NOC(ネットワークオペレーションセンター)で日々、数々のネットワークトラブルと格闘しているシニアエンジニアです。
データセンターの深夜、ふと監視モニターを見ると、急にネットワークのトラフィックが跳ね上がっている……。「おや、いったいどのサーバーが誰と通信してこの回線を埋め尽くしているんだ!?」――そんな冷や汗をかくような緊急事態、インフラエンジニアなら誰もが一度は経験するスリリングな瞬間ですよね。
そんなとき、教科書通りのコマンドを叩くだけでは、全体的な通信量しか分からず「犯人」の特定に時間がかかってしまいます。そこで現場のプロたちがこぞって愛用するのが、今回ご紹介する iftop(アイエフトップ)というコマンドです。
今回は、パケットの嵐が吹き荒れるリアルな現場の視点を交えながら、この iftop の仕組みと、リアルタイムの帯域泥棒を鮮やかに暴き出す方法について、一緒に楽しく学んでいきましょう!
—
1. ネットワークの「今」を見える化する iftop とは?
普段私たちが使っている ping や traceroute は、「あそこに届くかな?」とか「どんな経路を通っているのかな?」を調べるためのものです。いわば、荷物が無事に届くかを追跡する伝票のようなものですね。
一方、今回主役にする iftop は、「今、この瞬間に、誰と誰がどれだけの重さの荷物をやり取りしているか」を、まるで街の交差点の交通量カウンターのように、リアルタイムでランキング表示してくれる超強力なツールです。
郵便配達に例えてみよう!
想像してみてください。あなたの管理するサーバーが、巨大な郵便局の窓口だとします。次から次へとトラックがやってきて、荷物を降ろしたり積んだりしていますよね。
- 従来の全体監視ツール:「今日の郵便局は合計で10トンの荷物を扱いました」と教えてくれます。
iftopの世界:「あそこのA社が3トン、B社が5トン、そして奥のC社が2トン……今、一番回線を占有しているのはA社のトラックですよ!」と、目の前でリアルタイムに実況中継してくれるんです。
この「誰がどれだけ使っているか」がホスト単位で一目で分かるのが、iftop の最大の魅力なんですよ。
—
2. さあ、実際に iftop を動かしてみよう!
難解なパケット解析の前に、まずは百聞は一見にしかず。あなたの手元のLinux環境(UbuntuやCentOSなど)で iftop を動かしてみましょう。
もしインストールされていない場合は、お使いのパッケージマネージャーからサクッとインストールできます。
# UbuntuやDebian系の場合
sudo apt update && sudo apt install iftop -y
# CentOSやRHEL系の場合(EPELリポジトリが必要な場合があります)
sudo yum install epel-release -y
sudo yum install iftop -y
インストールが終わったら、監視したいネットワークインターフェース(有線LANのポートなど)を指定して、コマンドを叩きます。インターフェース名が分からないときは、単に sudo iftop と実行しても自動で探してくれますよ。
# 例:eth0 というネットワークインターフェースの通信をリアルタイム監視する
sudo iftop -i eth0
コマンドを実行すると、画面全体がパッと切り替わり、まるで株価のボードのように数字がピコピコと動き始めます。
—
3. 画面の見方を優しく紐解く
初めて iftop の画面を見たときは、「なんだこの記号の山は……!」と圧倒されてしまうかもしれませんが、安心してください。一歩ずつ分解して見ていけば、とってもシンプルです。
画面の構成は、大まかに以下のようになっています。
1. 中央のエリア(通信のペア)
ホストA <-> ホストB のように、どの端末とどの端末が通信しているかが表示されます。
2. 右側のバーと数値(帯域の使用量)
右側に並ぶ数字やバーは、直近の「2秒間」「10秒間」「40秒間」の平均通信量です。
3. 最下部のサマリー
全体で今どれくらいのトラフィックが流れているか(PeakやTotal)が表示されます。
ここで、画面の見方をパッと理解するための「チートシート」を置いておきますね。
# 実際のiftop実行画面のイメージ(解説用テキスト)
────────────────────────────────────────────────────────────
192.168.1.10 (自サーバー) <-> 203.0.113.5 (外部の怪しいIP) 1.2Mb 800Kb 400Kb
<-- 500Kb 300Kb 150Kb
────────────────────────────────────────────────────────────
軒先(ピーク合計): 1.7Mb 平均: 1.1Mb トータルデータ量: 45MB
────────────────────────────────────────────────────────────
<->や-->の矢印:データがどちらの方向(送信なのか受信なのか)に流れているかを示しています。- 右側の3つの数値:左から順に「過去2秒間」「過去10秒間」「過去40秒間」の平均帯域です。ここを見ることで、「一瞬だけピクッと跳ね上がったのか、それともずっと重い通信が続いているのか」が一発で分かります。
—
4. 現場で役立つ!知っておくと得する便利オプションと操作
iftop が素晴らしいのは、動かしている最中(インタラクティブモード)に、キーボードのボタンをポチッと押すだけで、表示形式をガラリと変えられるところです。
現場のエンジニアがよく使う、覚えておくべき必須キーをいくつかご紹介しますね。
4-1. IPアドレスをドメイン名に変換する (n キー)
デフォルトでは 192.168.x.x のようなIPアドレスで表示されますが、キーボードの n を押すと、逆引きを行って example.com のようなホスト名に変換してくれます。「お、どこのドメインと通信してるんだ?」と知りたいときに重宝します。
*(※ただし、DNSの逆引きが発生するため、ネットワーク環境によっては動作が少し重くなる点だけ注意してくださいね!)*
4-2. ポート番号までしっかり表示する (p キー)
「どのホストと通信しているか」だけでなく、「どのサービス(ポート)を使っているか」まで深掘りしたいときは、キーボードの p を押します。これで、192.168.1.10:https <-> 203.0.113.5:54321 のように、Web(443番)なのかデータベースなのかが一目瞭然になります。
4-3. 画面の並び順をソート(固定)する
通信量が多い順にランキング表示させたいときは、以下のキーが使えます。
tキー:送信と受信の合計表示を切り替えるsキー:送信元(Source)の表示を固定・切り替えるdキー:宛先(Destination)の表示を固定・切り替える
—
5. パフォーマンス監視への応用と、現場からのアドバイス
さて、ここまで iftop の基本的な使い方を見てきましたが、これを単なる「おもちゃ」で終わらせず、実際のインフラ運用やトラブルシューティングにどう活かすべきでしょうか。
私たちがNOCの現場で実践しているアプローチを少しだけシェアしますね。
障害発生時の「初動の3秒」で使う
ある日突然、Webサーバーのレスポンスが極端に悪くなったとします。「CPU使用率は高くない、メモリも足りている……なのにネットワークが重い!」そんなとき、迷わず sudo iftop -i eth0 -P を叩いてください。
もし、見覚えのない外部IPアドレスとの間で莫大なパケットがやり取りされていたら……それはDDoS攻撃を受けている最中かもしれませんし、あるいは社内の誰かが勝手に巨大なバックアップファイルを外へ転送し始めているのかもしれません。
原因が「どのホストのどのポートにあるか」が秒速で分かれば、次の一手(対象のポートをファイヤーウォールで一時遮断するなど)を迷わず打つことができます。
注意点:過信は禁物、あくまで「今のスナップショット」
iftop は非常に優秀ですが、あくまで「今、目の前で起きていること」を映し出す鏡です。過去1時間のトレンドをグラフ化して見比べるような長期的なキャパシティプランニングには、ZabbixやPrometheus、Grafanaといった別の監視ツールを組み合わせて使うのが鉄則ですよ。
—
まとめ
今回は、リアルタイム帯域ビジュアライザー iftop の仕組みと、現場での実践的な活用法についてお届けしました。
iftopは、交差点の交通量カウンターのように、誰がどれだけ通信しているかをリアルタイムでランキング表示してくれるツール。nキーでホスト名、pキーでポート番号を表示させることで、トラブルの「犯人」を瞬時に特定できる。- 長期的なグラフ監視とは異なり、障害発生時の「初動の切り分け」において圧倒的な強さを発揮する。
インフラやネットワークの世界は、目に見えないパケットが飛び交っているからこそ、こうした「可視化ツール」をどれだけ自分の手足のように使いこなせるかが、エンジニアとしての大きな武器になります。
「なんかネットワークが重いな?」と感じたら、パニックになる前に、ぜひ落ち着いて iftop のコマンドを叩いてみてください。きっと、画面の向こう側で暴れているパケットの足音が聞こえてくるはずですよ!
それでは、また次回のNOC現場レポートでお会いしましょう。快適なインフラライフを!
コメント