[アップデート] Amazon VPC Traffic Mirroring が Gateway Load Balancer へのトラフィックの送信をサポートしました

モニタリング用の仮想アプライアンスとGateway Load Balancerを組み合わせて素晴らしいパケットキャプチャーライフを
2022.07.01

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Gateway Load Balancerのバックエンドでトラフィックのモニタリングをしたいな

こんにちは、のんピ(@non____97)です。

皆さんはGateway Load Balancerのバックエンドでトラフィックのモニタリングをしたいなと思ったことはありますか? 私はあります。

トラフィックをモニタリング用EC2インスタンスに転送する方法は以下の2つあります。

  1. VPC Traffic Mirroringのターゲットにモニタリング用EC2インスタンスのENIを指定する
  2. VPC Traffic MirroringのターゲットにNLBを指定し、NLBのバックエンドにモニタリング用EC2インスタンスを指定する

モニタリング対象のVPCが一つしかない場合は上述の方法でも良いかもしれません。

モニタリング対象のVPCが複数ある場合はどうでしょうか。

モニタリング対象のVPC毎にモニタリング用EC2インスタンスを用意するのも大変ですし、モニタリング用EC2インスタンスを別VPCに分けてVPCピアリングするのも管理するルートが増えてしまいます。

そんな折、Amazon VPC Traffic Mirroring が Gateway Load Balancer へのトラフィックの転送をサポートしたとアナウンスがありました。

AWS公式ブログも投稿されています。

これにより、Gateway Load Balancerのバックエンドでトラフィックのモニタリングをすることができます。モニタリング対象のVPCが増える際は、Gateway Load BalancerのVPCエンドポイントとトラフィックミラーターゲット、トラフィックミラーセッションを作成するだけです。

簡単ですね。

モニタリングする側とされる側はGateway Load Balancerのサービス名だけでつながっているので、かなりの疎結合度合いです。

早速試してみたので、紹介します。

検証の構成

検証の構成は以下の通りです。

構成図

モニタリング対象EC2インスタンスへのインバウンド通信をVPC Traffic Mirroingでミラーリングし、以下の経路でモニタリング用EC2インスタンスに転送します。

  1. Gateway Load Balacer用VPCエンドポイント
  2. Gateway Load Balancer
  3. モニタリング用EC2インスタンス

モニタリング用EC2インスタンスで転送されたトラフィックをtcpdumpで眺めてみます。

VPCエンドポイントの作成

それでは、検証をやっていきます。

まず、AWS CDKでVPCエンドポイントサービスの作成まで行います。

AWS CDKのコードは以下リポジトリに保存しています。

デプロイが完了したら、作成されたVPCエンドポイントサービスのサービス名を確認します。

作成されたVPCエンドポイントサービスのサービス名を確認

タイプがGatewayLoadBalancerになっていますね。

それでは、こちらのVPCエンドポイントサービスについて、VPCエンドポイントを作成します。

VPCのコンソールからエンドポイント-エンドポイントを作成をクリックします。

エンドポイントを作成

作成するVPCエンドポイントの設定をしていきます。

サービスカテゴリでその他のエンドポイントサービスを選択します。サービス名に事前に確認したVPCエンドポイントサービスのサービス名を入力し、サービスの検証をクリックした結果サービス名が検証されました。と表示されることを確認します。VPCはモニタリング対象のEC2インスタンスがいるVPCを選択します。サブネットは今回1つだけにしました。

VPCエンドポイントの作成

作成したVPCエンドポイントを確認します。エンドポイントタイプがGatewayLoadBalancerになっていますね。

作成したVPCエンドポイントを確認

トラフィックミラーフィルタの作成

次にトラフィックミラーフィルタを作成します。

トラフィックミラーフィルタはどのトラフィックをトラフィックミラーターゲットに送信するか指定するリソースです。

VPCのコンソールでフィルターをミラーリングする-トラフィックミラーフィルタの作成をクリックします。

トラフィックミラーフィルタの作成

今回は送信元/送信先がanyで、全てのプロトコルのインバウンドの通信をトラフィックミラーターゲットに送信するフィルタを作成します。

トラフィックミラーフィルタの設定

作成したトラフィックミラーフィルタを確認します。フィルタIDはトラフィックミラーセッションを作成する際に必要になるのでメモしておきます。

作成したトラフィックミラーフィルタを確認

トラフィックミラーターゲットの作成

次にトラフィックミラーターゲットを作成します。

VPCのコンソールでターゲットをミラーリングする-トラフィックミラーターゲットの作成をクリックします。

トラフィックミラーターゲットの作成

ターゲットタイプにゲートウェイロードバランサーのエンドポイントに変更し、ターゲットに事前に作成したGateway Load BalancerのVPCエンドポイントを指定します。

ターゲットに事前に作成したGateway Load BalancerのVPCエンドポイントを指定

作成したトラフィックミラーターゲットを確認します。ターゲットIDもトラフィックミラーセッションを作成する際に必要になるのでメモしておきます。

作成したトラフィックミラーターゲットを確認

トラフィックミラーセッションの作成

最後にトラフィックミラーセッションを作成します。

VPCのコンソールでセッションをミラーリングする-トラフィックミラーセッションの作成をクリックします。

トラフィックミラーセッションの作成

ミラーソースにはモニタリング対象のEC2インスタンスのENIを指定します。ミラーターゲット、フィルタには、先ほど作成したトラフィックミラーターゲットとトラフィックミラーフィルタのIDを指定します。モニタリング対象は1つしかいないのでセッション数は1つにします。

トラフィックミラーターゲットの設定

作成したトラフィックミラーセッションを確認します。VNIは9325541のようです。複数のENIのトラフィックをモニタリングする際はこちらのVNIでフィルタリングすると良いと考えます。

作成したトラフィックミラーセッションを確認

動作確認

それでは動作確認をします。

モニタリング対象のEC2インスタンスのIPアドレスは10.10.0.4で、モニタリング用EC2インスタンスのIPアドレスは10.10.0.41です。

モニタリング対象のEC2インスタンスのIPアドレス

sh-4.2$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP group default qlen 1000
    link/ether 0e:9c:10:29:26:01 brd ff:ff:ff:ff:ff:ff
    inet 10.10.0.4/28 brd 10.10.0.15 scope global dynamic eth0
       valid_lft 2421sec preferred_lft 2421sec
    inet6 fe80::c9c:10ff:fe29:2601/64 scope link
       valid_lft forever preferred_lft forever

モニタリング用EC2インスタンスのIPアドレス

sh-4.2$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP group default qlen 1000
    link/ether 0e:2c:97:4b:15:b1 brd ff:ff:ff:ff:ff:ff
    inet 10.10.0.41/28 brd 10.10.0.47 scope global dynamic eth0
       valid_lft 2342sec preferred_lft 2342sec
    inet6 fe80::c2c:97ff:fe4b:15b1/64 scope link
       valid_lft forever preferred_lft forever

モニタリング用EC2インスタンスでtcpdumpを使ってパケットキャプチャしてみます。

sh-4.2$ sudo tcpdump -tttt -nn -i eth0 port 6081
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
2022-06-30 08:55:14.941738 IP 10.10.0.44.60291 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65444 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.58254: Flags [.], ack 3271274354, win 32730, length 0
2022-06-30 08:55:17.501537 IP 10.10.0.44.60674 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65473 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 209.54.181.213.443 > 10.10.0.4.56812: Flags [.], ack 2816467278, win 936, length 0
2022-06-30 08:55:19.913853 IP 10.10.0.44.60291 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65444 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.58254: Flags [.], ack 32, win 32729, length 0
2022-06-30 08:55:19.956338 IP 10.10.0.44.60291 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65444 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.58254: Flags [.], ack 33, win 32729, length 0
2022-06-30 08:55:19.981515 IP 10.10.0.44.60291 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65444 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.58254: Flags [P.], seq 0:204, ack 33, win 32729, length 204
2022-06-30 08:55:19.981552 IP 10.10.0.44.60291 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65444 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.58254: Flags [P.], seq 204:343, ack 33, win 32729, length 139
2022-06-30 08:55:19.981620 IP 10.10.0.44.60291 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65444 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.58254: Flags [P.], seq 343:374, ack 33, win 32729, length 31
2022-06-30 08:55:19.981628 IP 10.10.0.44.60291 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65444 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.58254: Flags [F.], seq 374, ack 33, win 32729, length 0
2022-06-30 08:55:20.014482 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [S.], seq 11074437, ack 186870088, win 8190, options [mss 1460,nop,wscale 6,nop,nop,sackOK], length 0
2022-06-30 08:55:20.015603 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [.], ack 284, win 32763, length 0
2022-06-30 08:55:20.015999 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [.], ack 284, win 32763, length 0
2022-06-30 08:55:20.016259 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [P.], seq 1:97, ack 284, win 32763, length 96
2022-06-30 08:55:20.016271 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [.], seq 97:1557, ack 284, win 32763, length 1460
2022-06-30 08:55:20.016287 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [.], seq 1557:3017, ack 284, win 32763, length 1460
2022-06-30 08:55:20.016295 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [.], seq 3017:4477, ack 284, win 32763, length 1460
2022-06-30 08:55:20.016298 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [P.], seq 4477:5125, ack 284, win 32763, length 648
2022-06-30 08:55:20.017276 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [P.], seq 5125:5463, ack 284, win 32763, length 338
2022-06-30 08:55:20.017291 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [P.], seq 5463:5472, ack 284, win 32763, length 9
2022-06-30 08:55:20.019500 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [.], ack 410, win 32761, length 0
2022-06-30 08:55:20.019819 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [P.], seq 5472:5478, ack 410, win 32761, length 6
2022-06-30 08:55:20.019864 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [P.], seq 5478:5523, ack 410, win 32761, length 45
2022-06-30 08:55:20.021395 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [.], ack 1618, win 32730, length 0
2022-06-30 08:55:20.021434 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [.], ack 2403, win 32730, length 0
2022-06-30 08:55:20.060691 IP 10.10.0.44.60605 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65448 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 209.54.182.89.443 > 10.10.0.4.56210: Flags [.], ack 1145923751, win 32100, length 0
2022-06-30 08:55:20.066143 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [P.], seq 5523:5727, ack 2403, win 32730, length 204
2022-06-30 08:55:20.066162 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [P.], seq 5727:5866, ack 2403, win 32730, length 139
2022-06-30 08:55:20.067961 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65445 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.94.225.236.443 > 10.10.0.4.34424: Flags [.], ack 4367, win 32699, length 0
^C
27 packets captured
27 packets received by filter
0 packets dropped by kernel

送信先がモニタリング対象のEC2インスタンスのIPアドレス10.10.0.4になっているトラフィックが大量にあることが分かりました。送信先のポートが443で、送信先IPアドレス52.94.225.236のwhoisの結果から確認できる組織名がAmazon Technologies Inc.であることからSSMの通信だと予想します。

> whois 52.94.225.236                
% IANA WHOIS server
% for more information on IANA, visit http://www.iana.org
% This query returned 1 object

refer:        whois.arin.net

inetnum:      52.0.0.0 - 52.255.255.255
organisation: Administered by ARIN
status:       LEGACY

whois:        whois.arin.net

changed:      1991-12
source:       IANA

# whois.arin.net

NetRange:       52.84.0.0 - 52.95.255.255
CIDR:           52.88.0.0/13, 52.84.0.0/14
NetName:        AT-88-Z
NetHandle:      NET-52-84-0-0-1
Parent:         NET52 (NET-52-0-0-0-0)
NetType:        Direct Allocation
OriginAS:       AS16509, AS14618
Organization:   Amazon Technologies Inc. (AT-88-Z)
RegDate:        1991-12-19
Updated:        2022-03-21
Ref:            https://rdap.arin.net/registry/ip/52.84.0.0



OrgName:        Amazon Technologies Inc.
OrgId:          AT-88-Z
Address:        410 Terry Ave N.
City:           Seattle
StateProv:      WA
PostalCode:     98109
Country:        US
RegDate:        2011-12-08
Updated:        2021-07-28
Comment:        All abuse reports MUST include:
Comment:        * src IP
Comment:        * dest IP (your IP)
Comment:        * dest port
Comment:        * Accurate date/timestamp and timezone of activity
Comment:        * Intensity/frequency (short log extracts)
Comment:        * Your contact details (phone and email) Without these we will be unable to identify the correct owner of the IP address at that point in time.
Ref:            https://rdap.arin.net/registry/entity/AT-88-Z


OrgAbuseHandle: AEA8-ARIN
OrgAbuseName:   Amazon EC2 Abuse
OrgAbusePhone:  +1-206-266-4064
OrgAbuseEmail:  abuse@amazonaws.com
OrgAbuseRef:    https://rdap.arin.net/registry/entity/AEA8-ARIN

OrgNOCHandle: AANO1-ARIN
OrgNOCName:   Amazon AWS Network Operations
OrgNOCPhone:  +1-206-266-4064
OrgNOCEmail:  amzn-noc-contact@amazon.com
OrgNOCRef:    https://rdap.arin.net/registry/entity/AANO1-ARIN

OrgTechHandle: ANO24-ARIN
OrgTechName:   Amazon EC2 Network Operations
OrgTechPhone:  +1-206-266-4064
OrgTechEmail:  amzn-noc-contact@amazon.com
OrgTechRef:    https://rdap.arin.net/registry/entity/ANO24-ARIN

OrgRoutingHandle: ARMP-ARIN
OrgRoutingName:   AWS RPKI Management POC
OrgRoutingPhone:  +1-206-266-4064
OrgRoutingEmail:  aws-rpki-routing-poc@amazon.com
OrgRoutingRef:    https://rdap.arin.net/registry/entity/ARMP-ARIN

OrgRoutingHandle: IPROU3-ARIN
OrgRoutingName:   IP Routing
OrgRoutingPhone:  +1-206-266-4064
OrgRoutingEmail:  aws-routing-poc@amazon.com
OrgRoutingRef:    https://rdap.arin.net/registry/entity/IPROU3-ARIN

ちなみに、tcpdump時に設定したポート番号6081はGateway Load Balancerがターゲットとの通信に使用するGENEVEというトンネリングプロトコルのポート番号です。

VPC Traffic MirroringでミラーリングされたトラフィックはVXLANでカプセル化されています。そのため、ENIやNLB経由でVPC Traffic Mirroringのミラーリングされたトラフィックをバックエンドでフィルタリングする際はVXLANのポート番号4789でフィルタリングすることになります。

traffic-mirroring-packets 抜粋 : Traffic Mirroring packet format - Amazon Virtual Private Cloud

今回はGateway Load Balancerを使用してバッケンエンドのEC2インスタンスにミラーリングされたトラフィックを転送しています。先述の通り、Gateway Load Balancerがターゲットとの通信にGENEVEを使います。

Gateway Load Balancer を使用して、GENEVE プロトコルをサポートする仮想アプライアンスのフリートをデプロイおよび管理します。

Gateway Load Balancer は、開放型システム間相互接続 (OSI) モデルの第 3 層で機能します。すべてのポートですべての IP パケットをリッスンし、ポート 6081 で GENEVE プロトコルを使用して、リスナールールで指定されたターゲットグループにトラフィックを転送します。

ゲートウェイロードバランサー - Elastic Load Balancing

そのため、VPC Traffic MirroringのミラーリングされたトラフィックをVXLANでカプセル化し、さらにGENEVEでカプセル化していることになります。

traffic-mirroring-gwlb-packets 抜粋 : Traffic Mirroring packet format - Amazon Virtual Private Cloud

他のトラフィックも確認したいですが、tcp/443の通信がノイズになるのでトラフィックミラーフィルタを修正します。TCP/80とTCP/587、ICMPのインバウンド通信のみに変更しました。

$ aws ec2 describe-traffic-mirror-filters \
>     --traffic-mirror-filter-ids tmf-086711eb33a1b422e
{
    "TrafficMirrorFilters": [
        {
            "TrafficMirrorFilterId": "tmf-086711eb33a1b422e",
            "IngressFilterRules": [
                {
                    "TrafficMirrorFilterRuleId": "tmfr-0278d8fc8fb141f36",
                    "TrafficMirrorFilterId": "tmf-086711eb33a1b422e",
                    "TrafficDirection": "ingress",
                    "RuleNumber": 100,
                    "RuleAction": "accept",
                    "Protocol": 6,
                    "SourcePortRange": {
                        "FromPort": 80,
                        "ToPort": 80
                    },
                    "DestinationCidrBlock": "0.0.0.0/0",
                    "SourceCidrBlock": "0.0.0.0/0"
                },
                {
                    "TrafficMirrorFilterRuleId": "tmfr-0ef2ff4dadc2cdfa0",
                    "TrafficMirrorFilterId": "tmf-086711eb33a1b422e",
                    "TrafficDirection": "ingress",
                    "RuleNumber": 200,
                    "RuleAction": "accept",
                    "Protocol": 1,
                    "DestinationCidrBlock": "0.0.0.0/0",
                    "SourceCidrBlock": "0.0.0.0/0"
                },
                {
                    "TrafficMirrorFilterRuleId": "tmfr-0aaea310be2beb420",
                    "TrafficMirrorFilterId": "tmf-086711eb33a1b422e",
                    "TrafficDirection": "ingress",
                    "RuleNumber": 300,
                    "RuleAction": "accept",
                    "Protocol": 6,
                    "SourcePortRange": {
                        "FromPort": 587,
                        "ToPort": 587
                    },
                    "DestinationCidrBlock": "0.0.0.0/0",
                    "SourceCidrBlock": "0.0.0.0/0"
                }
            ],
            "EgressFilterRules": [],
            "NetworkServices": [],
            "Tags": [
                {
                    "Key": "Name",
                    "Value": "vpc-traffic-mirroring-filter"
                }
            ]
        }
    ]
}

変更後、モニタリング対象のEC2インスタンスでコマンドを叩いてみます。

# ICMPのトラフィックをキャプチャできるか確認
$ ping 8.8.8.8 -c 5
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=107 time=1.50 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=107 time=1.53 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=107 time=1.51 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=107 time=1.54 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=107 time=1.53 ms

--- 8.8.8.8 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 1.504/1.524/1.545/0.045 ms

# TCP/80のトラフィックをキャプチャできるか確認
$ curl http://checkip.amazonaws.com
54.162.244.42

# TCP/587のトラフィックをキャプチャできるか確認
$ sudo traceroute -T -p 587 smtp.gmail.com
traceroute to smtp.gmail.com (172.253.122.108), 30 hops max, 60 byte packets
 1  * * *
 2  240.0.56.99 (240.0.56.99)  0.237 ms 240.0.224.98 (240.0.224.98)  0.302 ms 240.3.12.64 (240.3.12.64)  0.325 ms
 3  243.254.16.1 (243.254.16.1)  0.270 ms 243.254.22.1 (243.254.22.1)  0.282 ms 243.254.20.129 (243.254.20.129)  0.272 ms
 4  240.0.224.21 (240.0.224.21)  0.255 ms 240.0.224.24 (240.0.224.24)  0.476 ms 240.3.12.54 (240.3.12.54)  0.246 ms
 5  240.0.56.1 (240.0.56.1)  0.295 ms 240.0.56.0 (240.0.56.0)  0.285 ms 240.0.36.12 (240.0.36.12)  0.316 ms
 6  240.1.40.24 (240.1.40.24)  0.389 ms 243.254.6.133 (243.254.6.133)  0.262 ms 240.1.40.23 (240.1.40.23)  0.364 ms
 7  240.0.56.21 (240.0.56.21)  0.253 ms 240.0.56.18 (240.0.56.18)  0.247 ms 240.0.56.24 (240.0.56.24)  0.253 ms
 8  240.0.36.14 (240.0.36.14)  0.399 ms 242.0.162.177 (242.0.162.177)  0.566 ms 243.254.7.5 (243.254.7.5)  0.389 ms
 9  240.0.40.19 (240.0.40.19)  0.403 ms 243.254.4.5 (243.254.4.5)  0.359 ms 52.93.28.165 (52.93.28.165)  0.916 ms
10  240.0.36.20 (240.0.36.20)  0.429 ms 240.0.36.28 (240.0.36.28)  0.477 ms  0.445 ms
11  242.0.163.177 (242.0.163.177)  0.803 ms 52.93.28.177 (52.93.28.177)  1.006 ms 242.0.162.161 (242.0.162.161)  0.767 ms
12  52.93.28.161 (52.93.28.161)  1.065 ms * 100.100.4.12 (100.100.4.12)  1.689 ms
13  108.170.246.33 (108.170.246.33)  2.537 ms 142.250.232.96 (142.250.232.96)  1.482 ms 99.83.113.89 (99.83.113.89)  2.389 ms
14  * 99.83.113.89 (99.83.113.89)  2.321 ms 108.170.246.2 (108.170.246.2)  1.612 ms
15  108.170.246.33 (108.170.246.33)  2.613 ms 108.170.240.97 (108.170.240.97)  2.044 ms 142.251.49.189 (142.251.49.189)  2.673 ms
16  * 108.170.246.34 (108.170.246.34)  2.126 ms 142.251.49.162 (142.251.49.162)  1.813 ms
17  142.250.208.231 (142.250.208.231)  2.074 ms 142.251.77.148 (142.251.77.148)  2.788 ms 142.251.49.160 (142.251.49.160)  1.922 ms
18  * * 172.253.72.192 (172.253.72.192)  2.943 ms
19  142.251.77.80 (142.251.77.80)  3.344 ms 142.251.77.104 (142.251.77.104)  3.520 ms 172.253.67.63 (172.253.67.63)  2.177 ms
20  142.251.77.104 (142.251.77.104)  3.353 ms  3.397 ms *
21  172.253.66.199 (172.253.66.199)  3.289 ms * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * bh-in-f108.1e100.net (172.253.122.108)  1.997 ms *

その時のモニタリング対象のEC2インスタンスのtcpdumpの結果は以下の通りです。

$ sudo tcpdump -tttt -nn -i eth0 port 6081
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
2022-06-30 09:27:49.266963 IP 10.10.0.44.60665 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65465 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 8.8.8.8 > 10.10.0.4: ICMP echo reply, id 32351, seq 1, length 64
2022-06-30 09:27:50.268032 IP 10.10.0.44.60665 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65465 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 8.8.8.8 > 10.10.0.4: ICMP echo reply, id 32351, seq 2, length 64
2022-06-30 09:27:51.269657 IP 10.10.0.44.60665 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65465 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 8.8.8.8 > 10.10.0.4: ICMP echo reply, id 32351, seq 3, length 64
2022-06-30 09:27:52.271283 IP 10.10.0.44.60665 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65465 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 8.8.8.8 > 10.10.0.4: ICMP echo reply, id 32351, seq 4, length 64
2022-06-30 09:27:53.272941 IP 10.10.0.44.60665 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65465 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 8.8.8.8 > 10.10.0.4: ICMP echo reply, id 32351, seq 5, length 64


2022-06-30 09:28:08.354343 IP 10.10.0.44.60382 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65513 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 3.209.171.143.80 > 10.10.0.4.53332: Flags [S.], seq 4166437882, ack 1272688350, win 26847, options [mss 1460,sackOK,TS val 35437364 ecr 3294088091,nop,wscale 8], length 0
2022-06-30 09:28:08.354794 IP 10.10.0.44.60382 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65513 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 3.209.171.143.80 > 10.10.0.4.53332: Flags [.], ack 86, win 115, options [nop,nop,TS val 35437373 ecr 3294088092], length 0
2022-06-30 09:28:08.355728 IP 10.10.0.44.60382 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65513 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 3.209.171.143.80 > 10.10.0.4.53332: Flags [P.], seq 1:140, ack 86, win 115, options [nop,nop,TS val 35437374 ecr 3294088092], length 139: HTTP: HTTP/1.1 200 OK
2022-06-30 09:28:08.357012 IP 10.10.0.44.60382 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65513 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 3.209.171.143.80 > 10.10.0.4.53332: Flags [F.], seq 140, ack 87, win 115, options [nop,nop,TS val 35437375 ecr 3294088094], length 0


2022-06-30 09:28:21.985152 IP 10.10.0.44.60748 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65415 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.56.21 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985214 IP 10.10.0.44.60748 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65415 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.224.98 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985280 IP 10.10.0.44.60112 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65503 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 243.254.20.129 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985326 IP 10.10.0.44.60028 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65489 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.3.12.54 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985395 IP 10.10.0.44.60909 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65535 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.56.99 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985413 IP 10.10.0.44.60166 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65507 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.56.0 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985433 IP 10.10.0.44.60448 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65432 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 243.254.22.1 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985451 IP 10.10.0.44.60894 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65443 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.3.12.64 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985497 IP 10.10.0.44.60281 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65497 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.1.40.24 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985516 IP 10.10.0.44.60886 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65425 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.224.21 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985519 IP 10.10.0.44.60894 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65443 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.36.28 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985542 IP 10.10.0.44.60448 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65432 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.36.12 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985550 IP 10.10.0.44.60894 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65443 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.36.28 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985592 IP 10.10.0.44.60487 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65520 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 243.254.16.1 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985598 IP 10.10.0.44.60137 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65483 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.224.24 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985609 IP 10.10.0.44.60353 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65434 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.1.40.23 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985646 IP 10.10.0.44.60526 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65471 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.56.1 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985779 IP 10.10.0.44.60625 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65501 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 243.254.6.133 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985793 IP 10.10.0.44.60526 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65471 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.56.18 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985824 IP 10.10.0.44.60925 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65490 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 243.254.7.5 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985871 IP 10.10.0.44.60228 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65470 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.40.19 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.985894 IP 10.10.0.44.61007 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65437 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.36.14 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.986008 IP 10.10.0.44.60156 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65515 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 243.254.4.5 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.986118 IP 10.10.0.44.60144 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65506 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.56.24 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.986174 IP 10.10.0.44.60407 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65462 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 240.0.36.20 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.986230 IP 10.10.0.44.60627 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65509 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.93.28.177 > 10.10.0.4: ICMP time exceeded in-transit, length 36
2022-06-30 09:28:21.986279 IP 10.10.0.44.60929 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65512 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 242.0.162.177 > 10.10.0.4: ICMP time exceeded in-transit, length 36
2022-06-30 09:28:21.986356 IP 10.10.0.44.60425 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65448 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 242.0.163.177 > 10.10.0.4: ICMP time exceeded in-transit, length 36
2022-06-30 09:28:21.986610 IP 10.10.0.44.60290 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65411 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 242.0.162.161 > 10.10.0.4: ICMP time exceeded in-transit, length 36
2022-06-30 09:28:21.986638 IP 10.10.0.44.60732 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65499 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.93.28.165 > 10.10.0.4: ICMP time exceeded in-transit, length 36
2022-06-30 09:28:21.987071 IP 10.10.0.44.60448 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65432 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 100.100.4.12 > 10.10.0.4: ICMP time exceeded in-transit, length 36
2022-06-30 09:28:21.987138 IP 10.10.0.44.61023 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65518 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 52.93.28.161 > 10.10.0.4: ICMP time exceeded in-transit, length 36
2022-06-30 09:28:21.987306 IP 10.10.0.44.60625 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65501 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 108.170.246.2 > 10.10.0.4: ICMP time exceeded in-transit, length 36
2022-06-30 09:28:21.987425 IP 10.10.0.44.60985 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65426 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.250.232.96 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.988349 IP 10.10.0.44.60003 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65487 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 99.83.113.89 > 10.10.0.4: ICMP time exceeded in-transit, length 76
2022-06-30 09:28:21.988363 IP 10.10.0.44.60003 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65487 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 99.83.113.89 > 10.10.0.4: ICMP time exceeded in-transit, length 76
2022-06-30 09:28:21.988625 IP 10.10.0.44.60634 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65480 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 108.170.246.33 > 10.10.0.4: ICMP time exceeded in-transit, length 76
2022-06-30 09:28:21.988699 IP 10.10.0.44.61008 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65458 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 108.170.240.97 > 10.10.0.4: ICMP time exceeded in-transit, length 76
2022-06-30 09:28:21.988718 IP 10.10.0.44.60634 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65480 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 108.170.246.33 > 10.10.0.4: ICMP time exceeded in-transit, length 76
2022-06-30 09:28:21.989131 IP 10.10.0.44.60827 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65435 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.251.49.162 > 10.10.0.4: ICMP time exceeded in-transit, length 148
2022-06-30 09:28:21.989215 IP 10.10.0.44.60651 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65517 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 108.170.246.34 > 10.10.0.4: ICMP time exceeded in-transit, length 76
2022-06-30 09:28:21.989489 IP 10.10.0.44.61006 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65452 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.251.49.189 > 10.10.0.4: ICMP time exceeded in-transit, length 148
2022-06-30 09:28:21.989757 IP 10.10.0.44.60178 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65502 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.250.208.231 > 10.10.0.4: ICMP time exceeded in-transit, length 148
2022-06-30 09:28:21.990386 IP 10.10.0.44.60575 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65438 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.251.49.160 > 10.10.0.4: ICMP time exceeded in-transit, length 148
2022-06-30 09:28:21.990527 IP 10.10.0.44.60918 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65455 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.251.77.148 > 10.10.0.4: ICMP time exceeded in-transit, length 148
2022-06-30 09:28:21.991207 IP 10.10.0.44.60674 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65451 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 172.253.67.63 > 10.10.0.4: ICMP time exceeded in-transit, length 68
2022-06-30 09:28:21.991647 IP 10.10.0.44.60349 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65444 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 172.253.72.192 > 10.10.0.4: ICMP time exceeded in-transit, length 36
2022-06-30 09:28:21.991881 IP 10.10.0.44.60634 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65480 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.251.77.80 > 10.10.0.4: ICMP time exceeded in-transit, length 148
2022-06-30 09:28:21.992037 IP 10.10.0.44.61008 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65458 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.251.77.104 > 10.10.0.4: ICMP time exceeded in-transit, length 148
2022-06-30 09:28:21.992046 IP 10.10.0.44.61008 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65458 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.251.77.104 > 10.10.0.4: ICMP time exceeded in-transit, length 148
2022-06-30 09:28:21.992543 IP 10.10.0.44.61008 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65458 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 142.251.77.104 > 10.10.0.4: ICMP time exceeded in-transit, length 148
2022-06-30 09:28:21.993929 IP 10.10.0.44.60094 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65479 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 172.253.66.199 > 10.10.0.4: ICMP time exceeded in-transit, length 76
2022-06-30 09:28:34.186472 IP 10.10.0.44.60563 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65454 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 172.253.122.108.587 > 10.10.0.4.53789: Flags [S.], seq 4164525733, ack 1209205164, win 65535, options [mss 1430,sackOK,TS val 4120383042 ecr 1044423081,nop,wscale 8], length 0
2022-06-30 09:28:34.186559 IP 10.10.0.44.60850 > 10.10.0.41.6081: Geneve, Flags [none], vni 0x0, options [32 bytes]: IP 10.10.0.4.65482 > 10.10.0.46.4789: VXLAN, flags [I] (0x08), vni 9325541
IP 172.253.122.108.587 > 10.10.0.4.54159: Flags [S.], seq 812413551, ack 1647986005, win 65535, options [mss 1430,sackOK,TS val 780507880 ecr 1044423081,nop,wscale 8], length 0
^C
63 packets captured
63 packets received by filter
0 packets dropped by kernel
sh-4.2$

トラフィックミラーフィルタで指定したプロコトルの通信のみ表示されるようになりました。

モニタリング用の仮想アプライアンスとGateway Load Balancerを組み合わせて素晴らしいパケットキャプチャーライフを

Amazon VPC Traffic Mirroring が Gateway Load Balancer へのトラフィックの送信をサポートしたアップデートを紹介しました。

パケットキャプチャしてニヤニヤするのは良いものだと再確認しました。

今回はtcpdumpを使いましたが、本来の運用であればGateway Load Balancerのバックエンドにモニタリング用の仮想アプライアンスを立てることになると思います。モニタリング用の仮想アプライアンスをGateway Load Balancerで負荷分散するとステキな運用ができると考えます。

この記事が誰かの助けになれば幸いです。

以上、AWS事業本部 コンサルティング部の のんピ(@non____97)でした!