January 26, 2015 IOS Embedded Packet Capture(EPC) 機 能 検 証 結 果 報 告 高 原 也 寿 明 ネットワークインフラ 技 術 推 進 部
Embedded Packet Capture (EPC) とは? シスコ 社 サービス 統 合 型 ルータ(ISR)で ルーターが 取 り 扱 う IPv4/IPv6 パケットを ルーター 自 身 で 直 接 キャプチャーできる 機 能 IOS 12.4(20)T から 実 装 操 作 に 必 要 なコマンドは 全 て 実 行 (Exec)コマンド 設 定 そのものを 変 更 する 必 要 は 無 く 事 前 設 定 も 不 要 (オペレーションミスによるサービス 影 響 が 少 ない) メディアを 問 わず すべての IP インターフェイスでキャプチャーが 可 能 (Tunnel, 802.1Q Sub interface 等 仮 想 インターフェイスでもキャプチャー 可 能 ) キャプチャー 結 果 は PCAP ファイルとして 出 力 可 能 ( 汎 用 解 析 ソフトを 使 用 した 解 析 が 可 能 ) P2
従 来 のパケットキャプチャー 1 現 地 にて Capture Point 2 必 要 に 応 じて 物 理 構 成 変 更 3 キャプチャーポイントの SPAN 設 定 4 キャプチャー 用 デバイスの 接 続 5 キャプチャー 実 行 6 解 析 Additional Device for Capture Copy for Capture Capture Device 接 続 ミスや 設 定 ミスによる サービス 影 響 の 可 能 性 P3
EPC を 使 用 したキャプチャー 物 理 構 成 変 更 不 要 設 定 変 更 不 要 ( 操 作 は 全 て 実 行 コマンド) ISDN 等 イーサーネット 以 外 のメディアもキャプチャー 可 能 場 合 によっては 全 ての 作 業 をリモートから 行 うことも 可 能 Router = Capture Device P4
公 開 ドキュメントでは 明 確 にならない 事 項 Configuration Guide と Command Reference http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/epc/configuration/15-mt/epc-15-mt-book/nm-packet-capture.html http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/epc/command/epc-cr-book.html メモリーや CPU に 対 する 負 荷 影 響 は? 懸 念 事 項 とりこぼしの 発 生 や 送 受 信 順 番 が 狂 う 可 能 性 は? マルチキャストやブロードキャストの 扱 いは? ルーター 自 身 宛 パケット ルーター 自 身 が 発 信 元 になるパケットの 扱 いは? ( 管 理 トラフィックやルーティングプロトコルで 使 用 するパケット) QoS 設 定 との 関 係 は? QoS 動 作 はキャプチャー 前 後? ACL 設 定 との 関 係 は? ACL 動 作 はキャプチャー 前 後? GRE トンネル 設 定 との 関 係 は? キャプチャーできるのは Capsulation 前 後? NAT 処 理 との 関 係 は? キャプチャーできるのは NAT 処 理 前 後? P5
EPC によるキャプチャー 操 作 の 流 れ Router#monitor capture buffer Buffer1 max-size 2000 Router#monitor capture point ip cef Point1 gigabitethernet 0/0 in Router#monitor capture point associate Point1 Buffer1 Router#monitor capture point start Point1 Router#monitor capture point stop Point1 Router#show monitor capture buff Buffer1 dump 02:42:40.076 UTC Dec 6 2014 : IPv4 LES CEF : Gi0/0 None 272B38A0: C84C7532 HLu2 272B38B0: D100C84C 751890E0 080045C0 002CD09B Q.HLu..`..E@.,P. 272B38C0: 0000FE06 32450A14 0101AC15 0201D0DC..~.2E...,...P 272B38D0: 00178F92 CFA00000 00006002 1020A250...O...`.. "P 272B38E0: 00000204 02180000 00... ----- 以 下 略 ----- Router#monitor capture buff Buffer1 export flash0:/dump1.pcap Router#no monitor capture point ip cef Point1 gigabitethernet 0/0 in Router#no monitor capture buff Buffer1 Router# バッファー( 記 録 方 法 ) 作 成 ポイント( 取 得 方 法 ) 作 成 ポイントとバッファーの 関 連 付 け キャプチャー 開 始 キャプチャー 停 止 バッファー 内 容 確 認 PCAP ファイルに 出 力 ポイント 削 除 バッファー 削 除 P6
キャプチャー 対 象 パケットとインターフェイス キャプチャー 可 能 なパケット ルーターが 受 信 又 は 送 出 した IPv4 及 び IPv6 パケット(Unicast/Multicast/Broadcast) 転 送 パケット ルーター 自 身 宛 パケット ルーター 生 成 パケット 全 てキャプチャー 可 能 ( 取 得 方 法 の 指 定 は 異 なる) IP パケットでないものはキャプチャー 不 可 ( 例 : CDP, ARP, PPPoE) キャプチャーできるインターフェイス 物 理 / 論 理 IP インターフェイス ( 論 理 インターフェイスには 802.1Q サブインターフェイス Tunnel インターフェイス Dialer インターフェイスを 含 む ただし Loopback インターフェイスは 対 象 外 ) 個 別 指 定 の 他 all による 一 括 指 定 も 可 能 EPC 専 用 インターフェイス Drop: 受 信 後 CEF 機 能 によって 破 棄 されるパケットのキャプチャー 用 (ACL, no route, etc ) Punt: 受 信 後 プロセス 処 理 にまわされたパケットのキャプチャー 用 (ルーティング プロトコル 等 ルーター 自 身 宛 パケットが 主 ) P7
EPC 取 得 タイプとキャプチャー 対 象 パケット CEF In 指 定 したインターフェイスで CEF が 処 理 する 受 信 パケットが 対 象 Ingress ACL/QoS 等 他 の 受 信 動 作 前 にキャプチャーされる ルーター 自 身 宛 管 理 パケット(telnet, ssh, ping, snmp, ntp)もキャプチャー 可 能 CEF Out 指 定 したインターフェイスに CEF で 転 送 された 送 出 パケットが 対 象 Engress ACL/QoS 等 他 の 送 出 前 操 作 終 了 後 Queue に 入 る 前 にキャプチャーされる ルーター 自 身 が 発 信 元 になるパケットはキャプチャー 不 可 Process Switched In プロセス スイッチで 処 理 される 受 信 パケットが 対 象 ルーター 自 身 宛 パケットが 主 となる(ルーティング プロトコル 等 ) インターフェイス 指 定 は 不 可 CoPP 処 理 後 にキャプチャーされる Process Switched Out P8 プロセス スイッチで 送 出 されるパケットが 対 象 ルーター 自 身 が 生 成 するパケットはこのタイプでのみキャプチャー 可 能 インターフェイス 指 定 は 不 可
EPC バッファー キャプチャーしたパケットを 記 録 保 管 するメモリー 領 域 ポイントで 指 定 した 取 得 方 法 に 基 づいて 取 得 したキャプチャー 内 容 を 指 定 された 条 件 に 基 づいてダイナミックメモリー 内 に 記 録 し 後 の 参 照 を 可 能 にする Point( 取 得 方 法 の 定 義 ) インターフェイス 取 得 タイプ 指 定 サイズ:256 ~ 102400 (Kbytes) ディフォルト 1024 各 パケットの 頭 から 何 バイトを 記 録 するかを 指 定 可 能 ディフォルト 68 Bytes 一 時 的 な 生 キャプチャーデータ 他 にも 記 録 条 件 ( 絞 り 込 み 条 件 ) 指 定 可 能 各 パケットに 64 Bytes の 付 帯 情 報 が 付 加 される バッファは 1 パケットにつき 8 Bytes 単 位 で 消 費 Buffer( 記 録 方 法 の 定 義 ) ACL フィルター 収 容 パケット 個 数 間 引 き 方 法 (レート) 等 4msec 毎 の 記 録 (タイムスタンプも 4msc 毎 ) 複 数 のポイントからのデータを 1 つのバッファに 収 容 する ことも 各 ポイント 毎 に 別 のバッファを 用 意 することも 可 能 記 録 結 果 P9
EPC バッファー 内 容 表 示 例 サマリー 表 示 07:14:48.571 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.571 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.571 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.575 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.575 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.575 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.575 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.575 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.575 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.575 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.579 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.579 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 07:14:48.579 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None ダンプ 表 示 03:55:47.153 UTC Jul 3 2014 : IPv4 LES CEF : Gi0/1 None 30DDD8D0: 5475D0F7 8A115475 D0F76031 TuPw..TuPw`1 30DDD8E0: 08004500 00640044 0000FE01 3925AC14..E..d.D..~.9%,. 30DDD8F0: 0C01AC1E 1EFC0800 55F30014 00000000..,....Us... 30DDD900: 00000EDB 1968ABCD ABCDABCD ABCDABCD...[.h+M+M+M+M+M 30DDD910: ABCDABCD ABCDABCD ABCDABCD ABCDABCD +M+M+M+M+M+M+M+M 30DDD920: ABCDABCD ABCDABCD ABCDABCD ABCDABCD +M+M+M+M+M+M+M+M 30DDD930: ABCDABCD ABCDABCD ABCDABCD ABCDABCD +M+M+M+M+M+M+M+M 30DDD940: ABCDABCD ABCD00 +M+M+M. 1024 Kbytes バッファに 収 容 できるパケット 数 IP 46-Byte (Ether 60-Byte) IP 100-Byte (Ether 114-Byte) IP 200-Byte (Ether 214-Byte) IP 500-Byte (Ether 514-Byte) IP 1,000-Byte (Ether 1014-Byte) 8,192 個 5,698 個 3,744 個 1,795 個 バッファ 内 容 を PCAP ファイルとして Export 可 能 だが PCAP ファイルに するとレイヤ 2 の 情 報 が 削 除 される レイヤ 2 情 報 が 必 要 な 場 合 CLI のダンプ 表 示 を 利 用 する 970 個 P10
CPU load CPU LOAD Cisco 2911 EPC パフォーマンス EPC は CEF と 連 動 した 割 り 込 み 処 理 概 ね CPU 使 用 率 90% で 限 界 に 達 する EPC を 設 定 しただけでも CPU 使 用 率 は 増 加 する 128-Bytes パフォーマンス 上 限 パケット 長 EPC 無 し EPC 非 アクティブ EPC アクティブ 64-Bytes 172 Mbps 148 Mbps 99 Mbps 128-Bytes 345 Mbps 291 Mbps 189 Mbps 256-Bytes 690 Mbps 584 Mbps 384 Mbps 512-Bytes over 1Gbps over 1Gbps 575 Mbps 768-Bytes over 1Gbps over 1Gbps 728 Mbps 1024-Bytes over 1Gbps over 1Gbps 816 Mbps 1518-Bytes over 1Gbps over 1Gbps over 1Gbps 256-Bytes 100 90 80 70 60 50 40 30 20 10 0 No EPC No Active Active 0 50 100 150 200 250 300 350 Mbps 100 90 80 70 60 50 40 30 20 10 0 No EPC No Active Active 0 100 200 300 400 500 600 700 MBPS P11
論 理 Interface と キャプチャー 動 作 (Tunnel) Tunnel1 G0/1 G0/0 G0/1 In にて オリジナル L2:Ethernet Tunnel1 Out にて GRE ヘッダー 有 り L2: 情 報 なし G0/0 Out にて GRE ヘッダー 有 り L2:Ethernet Tunnel1 G0/1 G0/0 G0/1 Out にて オリジナル L2:Ethernet Tunnel1 In にて GRE ヘッダー 無 し L2: 情 報 なし G0/0 In にて GRE ヘッダー 有 り L2:Ethernet P12
論 理 Interface と キャプチャー 動 作 (PPPoE/NAT) G0/1(LAN) Dialer1 G0/0(WAN) G0/1 In にて オリジナル L2:Ethernet Dialer1 Out にて NAT 処 理 済 み PPPoE ヘッダー 有 り L2:Ethernet G0/0 Out にて キャプチャー 不 可 G0/1(LAN) Dialer1 G0/0(WAN) G0/1 Out にて NAT 処 理 済 L2:Ethernet Dialer1 In にて NAT 処 理 前 L2: 情 報 なし G0/0 In にて キャプチャー 不 可 P13
所 感 動 作 仕 様 と 使 用 方 法 が 明 確 であれば EPC はトラブルシューティング 動 作 確 認 を 行 う 際 非 常 に 有 用 なツールである 場 合 によっては EEM と 組 み 合 わせ ある 事 象 が 発 生 したら 自 動 的 にパケット キャプチャーを 行 うような 運 用 も 考 えられると 思 う CPU 使 用 率 が 高 い 状 態 で 運 用 されている 機 器 で EPC を 動 作 させることはリスクが あることは 知 っておくべきであろう また キャプチャーを 行 っていなくても EPC 設 定 が 存 在 すると CPU を 消 費 するの で EPC の 設 定 は 使 用 する 時 にのみ 行 い 終 了 したら 確 実 に 設 定 を 削 除 しておく べきである 要 望 事 項 WireShark 等 を 実 装 し CLI で 直 接 パケット 解 析 ができるとさらに 便 利 になると 思 う PCAP ファイルに 出 力 した 際 イーサーネットの 時 だけでもレイヤ 2 情 報 を 残 した 状 態 にして もらえると 嬉 しい P14
Thank you! P15