第14章 ポートミラーリング

ネットワーク管理者は、ポートミラーリングを使用して、あるネットワークデバイスから別のネットワークデバイスに通信中の受信および送信トラフィックを複製できます。管理者は、ポートミラーリングを使用してネットワークトラフィックを監視し、ネットワークデータを収集します。

  • ネットワークの問題のデバッグしてネットワークフローを調整する
  • ネットワークトラフィックを調べて分析し、ネットワークの問題をトラブルシュートする
  • 侵入を検出する

14.1. nmcli を使用したネットワークインターフェイスのミラーリング

NetworkManager を使用してポートのミラーリングを設定できます。以下の手順では、トラフィック制御 (tc) ルールおよびフィルターを enp1s0 ネットワークインターフェイスに追加することで、enp1s0 から enp7s0 にネットワークトラフィックをミラーリングします。

前提条件

  • ネットワークトラフィックをミラーリングするネットワークインターフェイス。

手順

  1. ネットワークトラフィックをミラーリングするネットワーク接続プロファイルを追加します。

    # nmcli connection add type ethernet ifname enp1s0 con-name enp1s0 autoconnect no
  2. 10: handle で egress (送信) トラフィックについて、prio qdiscenp1s0 に割り当てます。

    # nmcli connection modify enp1s0 +tc.qdisc "root prio handle 10:"

    子なしでアタッチされた prio qdisc を使用すると、フィルターをアタッチできます。

  3. ffff: ハンドルを使用して、イングレストラフィックの qdisc を追加します。

    # nmcli connection modify enp1s0 +tc.qdisc "ingress handle ffff:"
  4. 次のフィルターを追加して、入力および出力 qdiscs のパケットを照合し、それらを enp7s0 にミラーリングします。

    # nmcli connection modify enp1s0 +tc.tfilter "parent ffff: matchall action mirred egress mirror dev enp7s0"
    
    # nmcli connection modify enp1s0 +tc.tfilter "parent 10: matchall action mirred egress mirror dev enp7s0"

    matchall フィルターは、すべてのパケットを照合し、mirred アクションではパケットを宛先にリダイレクトします。

  5. 接続をアクティベートします。

    # nmcli connection up enp1s0

検証

  1. tcpdump ユーティリティーをインストールします。

    # dnf install tcpdump
  2. ターゲットデバイス (enp7s0) でミラーリングされたトラフィックを表示します。

    # tcpdump -i enp7s0