ノート:
- このチュートリアルでは、Oracle Cloudへのアクセスが必要です。無料アカウントにサインアップするには、Oracle Cloud Infrastructure Free Tierの開始を参照してください。
- Oracle Cloud Infrastructureの資格証明、テナンシおよびコンパートメントの値の例を使用します。演習を完了するときに、これらの値をクラウド環境に固有の値に置き換えます。
Oracle Cloud Infrastructure内のハブおよびスポークVCNルーティング・アーキテクチャのパケットに従う
イントロダクション
インスタンス、データベースおよびネットワーク・サービスは、Oracle Cloud Infrastructure (OCI)内のアプリケーションの典型的なビルディング・ブロックです。ネットワーク上にアプリケーションを構築する場合、ソースから送信するトラフィックが宛先に到達しているかどうかを知ることがベスト・プラクティスです。OCIは、パスを検証するためのネットワーク・パス・アナライザを提供していますが、ホップ・バイ・ホップ・ベースでエンドポイント自体で何が起こっているかについて、もう少し詳しい情報を得たい場合もあります。
このチュートリアルでは、OCI内のハブおよびスポーク・ネットワーク・アーキテクチャのパケットをフォローするために使用できるいくつかのシナリオを示します。
ルーティング・フローのシナリオ
ハブおよびスポークVCNルーティング・アーキテクチャには、複数のルーティング・フロー・シナリオが適用されます。
- シナリオ1: あるスポークVCNインスタンスから別のスポークVCNインスタンスへのパケットのフォロー
- シナリオ2: スポークVCNインスタンスからハブ・インスタンスへのパケットのフォロー
- シナリオ3: ハブ・インスタンスからスポークVCNインスタンスへのパケットのフォロー
- シナリオ4: スポークVCNインスタンスからインターネットへのパケットのフォロー
- シナリオ5: スポークVCNインスタンスからOCIサービス・ネットワークへのパケットのフォロー
- シナリオ6: ハブ・インスタンスからインターネットへのパケットのフォロー
- シナリオ7: インターネットからハブ・インスタンスへのパケットのフォロー
- シナリオ8: オンプレミスからスポークVCNインスタンスへのパケットのフォロー
- シナリオ9: スポークVCNインスタンスからオンプレミスへのパケットのフォロー
- シナリオ10: リモート・コンピュータからLoad Balancer、スポークVCNインスタンスへのパケットのフォロー
ここでは、シナリオ1でパケットをフォローする方法についてのみ説明します。他のシナリオでは、同じ方法を使用できます。
目的
- このチュートリアルでは、ハブおよびスポーク・ネットワーク・ルーティング・アーキテクチャを使用して、OCIテナント環境内のネットワーク・パケットをトレースする方法を説明します。VCN内のパケット・キャプチャ、TCPdumpsおよびサブネット・レベルのロギングの組合せを使用して、必要なデータを収集します。後続のデータ分析を通じて、パケットの完全なパスを特定します。このアプローチにより、エンドツーエンドの接続のトラブルシューティングが容易になり、発生する可能性がある問題を簡単に見つけることができます。
シナリオ1: あるスポークVCNインスタンスから別のスポークVCNインスタンスへのパケットのフォロー
このシナリオでは、あるスポークVCNインスタンスから別のスポークVCN内のインスタンスへのパケットに従います。
次の図に、指定したホップを示します。AからFのポイントは、なんらかの形式のロギングまたはパケット・キャプチャを有効にできる場所を示します。パケットを追跡できるように、これらの場所をすべて1つずつ探索します。
テストするソース、宛先およびポートを決定する必要があります。これにより、気を散らさずにパケットを分析するターゲットとなる方法が確保されます。
この例では、次のソース、宛先およびポートを使用します。
ソース: | 宛先 | 接続先ポート |
---|---|---|
172.16.1.93 | 172.16.2.88 | TCP/80 |
このジャーニーを適切に開始するには、ロギングの設定、情報の取得および収集を適切に行うことにより、操作の順序をできるだけ有効にすることが重要です。
タスク1: 時間のノート
-
このチュートリアルでは、すべてのデータを収集するために中央コンピュータを使用しています。
-
分析を開始する時間を書き留めます。この例では、
8:44
AMです。
タスク2: インスタンスAでの最初のSSHセッションのオープン
-
このセッションを使用して、宛先へのHTTP接続を開始します。
- SSHを使用して、VCN AにあるインスタンスAのターミナルに接続します。
- タブ接続を使用してください。これにより、セッション間をすばやく切り替えることができます。
timedatectl
コマンドを実行して、インスタンスの現在の時間を取得します。- 時間の設定は大丈夫です。この例では、
8:44
AMです。
タスク3: インスタンスAでの2番目のSSHセッションのオープン
-
VCN AにあるインスタンスAへの2番目の接続を開きます。
-
このセッションを使用して
tcpdump
コマンドを有効にし、tcpdump
を使用してパケットを開始できるようにします。
タスク4: インスタンスBでのSSHセッションのオープン
-
このセッションを使用して、ソースからHTTP接続を受信します。
- SSHを使用して、VCN BにあるインスタンスBの端末に接続します。
- タブ接続を使用してください。これにより、セッション間をすばやく切り替えることができます。
timedatectl
コマンドを実行して、インスタンスの現在の時間を取得します。- 時間の設定は大丈夫です。この例では、
8:45 AM
です。
タスク5: pfSenseファイアウォールでのWebセッションのオープン
-
ハブおよびスポークVCNルーティング・アーキテクチャを使用しているため、トラフィックが1つのスポークから別のスポークに流れると、トラフィックはpfSenseファイアウォールを転送します。pfSenseファイアウォールは、トラフィックを許可または拒否します。これは、パケット取得を使用してpfSenseファイアウォールで確認する必要があります。
- pfSenseファイアウォール管理コンソールを開きます。
- 「診断」および「パケット取得」をクリックします。
-
「パケット・キャプチャ」ページにリダイレクトされます。パケット・キャプチャを開始しないで、オープンにするだけです。
タスク6: プライベート・サブネットのスポークでのロギングの有効化(すべてのログ)
-
ソースはスポークA VCNのプライベート・サブネットにアタッチされているため、VCNのサブネット・レベルでのロギングを有効にします。
- 左上隅のハンバーガーメニュー(≡)をクリックします。
- 「ネットワーキング」をクリックします。
- 「仮想クラウド・ネットワーク」をクリックします。
-
「スポークA VCN」をクリックします。
-
VCN A内のプライベート・サブネットをクリックします。
- 「ログ」をクリックします。
- すべてのログの「ログの有効化」を選択し、有効にします。
-
すべてのログ設定をデフォルトのままにして、「ログの有効化」をクリックします。
-
ステータスが「作成中」であることに注意してください。
- 数分後、ステータスは「アクティブ」に変更されます。
- すべての「ログの有効化」が「有効」であることに注意してください。
タスク7: スポークBプライベート・サブネットでのロギングの有効化(すべてのログ)
-
タスク6と同じスポークVCN Bプライベート・サブネットのステップに従います。
- 「ネットワーキング」、「Virtual Cloud Networking」、「スポークB VCN」、「サブネットの詳細」および「ログ」に移動します。
- 数分後、ステータスは「アクティブ」に変更されます。
- すべての「ログの有効化」が「有効」であることに注意してください。
タスク8: ハブ・プライベート・サブネットでのロギングの有効化(すべてのログ)
-
タスク6と同じハブ・プライベート・サブネットのステップに従います。
- 「ネットワーキング」、「Virtual Cloud Networking」、「ハブVCN」、「サブネットの詳細」および「ログ」に移動します。
- 数分後、ステータスは「アクティブ」に変更されます。
- すべての「ログの有効化」が「有効」であることに注意してください。
タスク9: インスタンスAの2番目のSSHセッションでのtcpdumpセッションの開始
-
インスタンスAの2番目のSSHセッションに移動します。
-
次のコマンドを実行して、tcpdumpを有効にします:
sudo tcpdump -i ens3 dst 172.16.2.88 and src 172.16.1.93 and dst port 80
。ノート:
tcpdump
コマンドでは、検索しているトラフィックに関する情報のみを表示できるように、適切なフィルタを使用してください。この例では、ソース、宛先およびポートを指定します。 -
tcpdumpが有効になります。
タスク10: インスタンスBでのSSHセッションでのtcpdumpセッションの開始
-
インスタンスBのSSHセッションに移動します。
-
次のコマンドを実行して、tcpdumpを有効にします:
sudo tcpdump -i ens3 src 172.16.0.20 and port 80
。 -
tcpdumpが有効になります。
`
タスク11: pfSenseファイアウォールでのパケット・キャプチャの開始
-
pfSenseファイアウォール・コンソールに移動します。
-
「カスタム・フィルタ・オプション」セクションまでスクロール・ダウンします。
-
「タグなしフィルタ」セクションで、次の情報を入力し、「開始」をクリックします。
- 「次のいずれかを含む」を選択します。
- HOST ID ADDRESSまたはSUBNET:宛先の場合は、「すべて」を選択し、
172.16.2.88
と入力します。 - プロトコルおよびポート番号:ポートの場合は、「いずれか」を選択し、
80
と入力します。
-
下へスクロール
-
すでに取得されたパケットがあることに注意してください。これは、ポート80にあり、宛先IPアドレス(
172.16.2.88
)のすべてのトラフィックになります。ロード・バランサがアクティブで、ポート80でもヘルス・チェックを行っているため、すでにトラフィックが表示されています。 -
ソースからHTTPテストを行う間、キャプチャは数分間オンのままにしておきます。このため、後でWiresharkアプリケーションを使用して、探している正しい情報をフィルタリングできます。
タスク12: インスタンスAの最初のSSHセッションからインスタンスB WebサーバーへのHTTPトラフィックの送信
-
ソースから宛先へのトラフィックを開始します。
- インスタンスAの最初のSSHセッションに移動します。
timedatectl
コマンドを再度実行して、インスタンスの現在の時間を取得します。- 時間を記録します。この例では、
8:56 AM
です。
-
HTTPトラフィックを送信するには、次のコマンドを実行します:
curl http://172.16.2.88
。 -
インスタンスBのWebサーバーがHTMLコンテンツで応答していることに注意してください。
-
同じコマンドを3回または4回実行してプロセスを繰り返して、HTTPトラフィックを複数回送信します。
タスク13: すべてのロギング・ポイントおよびパケット取得を参照し、パスに従う
パケットを追跡できるように、情報の収集を開始できます。
すべてのロギング、パケット取得およびtcpdumpsを停止します。
収集情報を開始する前に、すべてのロギング、パケットキャプチャ、およびtcpdumpsを停止して、情報が多すぎないようにしてください。
-
インスタンスAとインスタンスBのtcpdumpを停止します。
- インスタンスAの2番目のSSHセッションに移動し、ctrl+cをクリックしてtcpdumpを停止します。
- インスタンスBのSSHセッションに移動し、ctrl+cをクリックしてtcpdumpを停止します。
-
pfSenseファイアウォール管理コンソールに移動し、パケット取得を停止します。
-
ハブVCNでのロギングを無効にします。
- 「ネットワーキング」、「Virtual Cloud Networking」、「ハブVCN」、「サブネットの詳細」に移動し、「ログ」をクリックします。
- すべてに対して「ログの有効化」を切り替えて、ロギングを無効にします。
-
ステータスは「更新中」です。
-
数分後、ステータスは「非アクティブ」に変更されます。
-
スポークVCN Aでのロギングを無効にします。
- 「ネットワーキング」、「Virtual Cloud Networking」、「スポークVCN A」、「サブネットの詳細」に移動し、「ログ」をクリックします。
- 数分後、ステータスは「非アクティブ」に変更されます。
- すべての「ログの有効化」が「無効」であることを確認します。
-
スポークVCN Bでのロギングを無効にします。
- 「ネットワーキング」、「Virtual Cloud Networking」、「スポークVCN B」、「サブネットの詳細」に移動し、「ログ」をクリックします。
- 数分後、ステータスは「非アクティブ」に変更されます。
- すべての「ログの有効化」が「無効」であることを確認します。
-
すべてのロギング、パケットキャプチャ、およびtcpdumpsを無効にしました。データを調べる時期です。
次の図は、すべてのロギングポイントA、B、C、D、E、およびFを示しています
ロギング・ポイントA: インスタンスAのtcpdump
- インスタンスAの2番目のSSHセッションに移動します。
- 生成されたtcpdump出力に注意してください。
-
Tcpdump出力。
[opc@ih-instance-vcn-a ~]$ sudo tcpdump -i ens3 dst 172.16.2.88 and src 172.16.1.93 and dst port 80 dropped privs to tcpdump tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens3, link-type EN10MB (Ethernet), capture size 262144 bytes 08:56:50.489159 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.57422 > 172.16.2.88.http: Flags [S], seq 1817516973, win 62720, options [mss 8960,sackOK,TS val 3736091466 ecr 0,nop,wscale 7], length 0 08:56:50.491649 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.57422 > 172.16.2.88.http: Flags [.], ack 372277210, win 490, options [nop,nop,TS val 3736091468 ecr 671349263], length 0 08:56:50.491702 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.57422 > 172.16.2.88.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736091468 ecr 671349263], length 75: HTTP: GET / HTTP/1.1 08:56:50.492114 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.57422 > 172.16.2.88.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736091469 ecr 671349265], length 0 08:56:50.492210 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.57422 > 172.16.2.88.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736091469 ecr 671349265], length 0 08:56:50.492982 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.57422 > 172.16.2.88.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736091469 ecr 671349265], length 0 08:56:50.493488 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.57422 > 172.16.2.88.http: Flags [.], ack 874, win 485, options [nop,nop,TS val 3736091470 ecr 671349267], length 0 08:57:09.284210 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54210 > 172.16.2.88.http: Flags [S], seq 3049648180, win 62720, options [mss 8960,sackOK,TS val 3736110261 ecr 0,nop,wscale 7], length 0 08:57:09.284913 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54210 > 172.16.2.88.http: Flags [.], ack 728296369, win 490, options [nop,nop,TS val 3736110261 ecr 671368058], length 0 08:57:09.284973 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54210 > 172.16.2.88.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736110261 ecr 671368058], length 75: HTTP: GET / HTTP/1.1 08:57:09.285422 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54210 > 172.16.2.88.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736110262 ecr 671368059], length 0 08:57:09.285522 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54210 > 172.16.2.88.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736110262 ecr 671368059], length 0 08:57:09.285590 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54210 > 172.16.2.88.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736110262 ecr 671368059], length 0 08:57:09.286060 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54210 > 172.16.2.88.http: Flags [.], ack 874, win 485, options [nop,nop,TS val 3736110263 ecr 671368059], length 0 08:57:10.963760 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54214 > 172.16.2.88.http: Flags [S], seq 1863177286, win 62720, options [mss 8960,sackOK,TS val 3736111940 ecr 0,nop,wscale 7], length 0 08:57:10.964504 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54214 > 172.16.2.88.http: Flags [.], ack 464215720, win 490, options [nop,nop,TS val 3736111941 ecr 671369737], length 0 08:57:10.964551 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54214 > 172.16.2.88.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736111941 ecr 671369737], length 75: HTTP: GET / HTTP/1.1 08:57:10.965048 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54214 > 172.16.2.88.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736111942 ecr 671369738], length 0 08:57:10.965135 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54214 > 172.16.2.88.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736111942 ecr 671369738], length 0 08:57:10.965351 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54214 > 172.16.2.88.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736111942 ecr 671369738], length 0 08:57:10.965865 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.54214 > 172.16.2.88.http: Flags [.], ack 874, win 485, options [nop,nop,TS val 3736111942 ecr 671369739], length 0 08:58:23.663598 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.53200 > 172.16.2.88.http: Flags [S], seq 407465876, win 62720, options [mss 8960,sackOK,TS val 3736184640 ecr 0,nop,wscale 7], length 0 08:58:23.664381 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.53200 > 172.16.2.88.http: Flags [.], ack 3047424129, win 490, options [nop,nop,TS val 3736184641 ecr 671442437], length 0 08:58:23.664430 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.53200 > 172.16.2.88.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736184641 ecr 671442437], length 75: HTTP: GET / HTTP/1.1 08:58:23.665005 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.53200 > 172.16.2.88.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736184641 ecr 671442438], length 0 08:58:23.665129 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.53200 > 172.16.2.88.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736184642 ecr 671442438], length 0 08:58:23.665297 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.53200 > 172.16.2.88.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736184642 ecr 6714 08:58:23.666655 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [.], ack 874, win 485, options [nop,nop,TS val 3736184643 ecr 671442440], l 08:58:24.529502 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [S], seq 3610633804, win 62720, options [mss 8960,sackOK,TS val 3736185506 0 08:58:24.530337 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [.], ack 575035162, win 490, options [nop,nop,TS val 3736185507 ecr 6714433 08:58:24.530386 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736185507 ecr 6714 / HTTP/1.1 08:58:24.530886 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [.], ack 239, win 489, options [nop,nop,TS val 3736185507 ecr 671443304], l 08:58:24.530966 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [.], ack 873, win 485, options [nop,nop,TS val 3736185507 ecr 671443304], l 08:58:24.531347 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736185508 ecr 6714 08:58:24.531891 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [.], ack 874, win 485, options [nop,nop,TS val 3736185508 ecr 671443305], l 08:58:25.562327 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [S], seq 3415948315, win 62720, options [mss 8960,sackOK,TS val 3736186539 0 08:58:25.563186 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [.], ack 2043572435, win 490, options [nop,nop,TS val 3736186540 ecr 671444 08:58:25.563244 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736186540 ecr 6714 / HTTP/1.1 08:58:25.563718 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [.], ack 239, win 489, options [nop,nop,TS val 3736186540 ecr 671444337], l 08:58:25.563845 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [.], ack 873, win 485, options [nop,nop,TS val 3736186540 ecr 671444337], l 08:58:25.564627 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736186541 ecr 6714 08:58:25.565113 IP ih-instance-vcn-a.ihprivatesubnet.spokevcna.oraclevcn.com.5 gs [.], ack 874, win 485, options [nop,nop,TS val 3736186542 ecr 671444338], l
-
出力を分析してください。この出力は、HTTPトラフィックがインスタンスAから送信されたことを示しています。
- 作成されたcurlリクエストの最初の出力セクション。
- 作成されたcurlリクエストの2番目の出力セクション。
- ソース DNS/IP。
- 宛先 DNS/IP。
- ポート。
- TCPフラグ。
ロギング・ポイントB: スポークVCNのプライベート・サブネットへのロギング
次に、サブネット・レベルのロギングを見て、パケットがVCNのサブネットに表示されるかどうかを確認します。
-
「ネットワーキング」、「仮想クラウド・ネットワーク」、「スポークVCN A」、「(プライベート)サブネットの詳細」、「ログ」にナビゲートし、
all
カテゴリのログ名をクリックします。- 「処理」ドロップダウン・メニューをクリックします。
- 「ログ検索で探索」をクリックします。
-
「カスタム・フィルタ」に、次のフィルタを入力します。
data.destinationAddress='172.16.2.88'
.data.sourceAddress='172.16.1.93'
.
-
宛先のフィルタが追加されます。
-
ソースのフィルタが追加されます。
- 時間でフィルタ: 「過去1時間」を選択します。
- 棒グラフは、フィルタで使用するソースおよび宛先に使用可能なログ・データがあることを示しています。
- 下へスクロール
- ソースIPを確認します。
- 宛先IPを確認します。
- ポートに注意してください。
- 上へスクロール
- 「ログ」をクリックします。
ロギング・ポイントC: ハブVCNプライベート・サブネットでのロギング
-
ハブVCNのログ名をクリックします。
-
トラフィックはファイアウォールからインスタンスB VCNに送信されないため、ソース・フィルタと宛先フィルタを変更する必要があります。
- 「カスタム・フィルタ」に、次のフィルタを入力します。
data.destinationAddress='172.16.0.20'
data.sourceAddress='172.16.1.93'
data.destinationPort='80'
- 棒グラフは、フィルタで使用するソースおよび宛先に使用可能なログ・データがあることを示しています。
- 下へスクロール
- 詳細なロギング・セクションに注意してください。
- ソースIPを書き留めます。
- 宛先IPを書き留めます。
- ポートを書き留めます。
- 「カスタム・フィルタ」に、次のフィルタを入力します。
ロギング・ポイントD: pfSenseファイアウォールでのパケット取得
-
pfSenseファイアウォール管理コンソールに移動します。
- 「ダウンロード」をクリックします
- 取得がダウンロードされていることを確認します。
-
Wiresharkでパケット・キャプチャを開きます。
- 次のWiresharkフィルタを入力します。
(ip.dst == 172.16.2.88 && ip.src == 172.16.1.93) || (ip.dst == 172.16.2.88 && ip.src == 172.16.1.93) && http
- ソースIPを書き留めます。
- 宛先IPを書き留めます。
- ポートまたはプロトコルを書き留めます。
- 次のWiresharkフィルタを入力します。
ロギング・ポイントE: スポークVCN Bプライベート・サブネットでのロギング
-
「ロギング」、「ログ」にナビゲートし、スポークVCN Bのログ名をクリックします。
- 「処理」ドロップダウン・メニューをクリックします。
- 「ログ検索で探索」をクリックします。
- 「カスタム・フィルタ」に、次のフィルタを入力します。
data.destinationAddress='172.16.2.88'
.data.sourceAddress='172.16.0.20'
.
- 棒グラフは、フィルタで使用するソースおよび宛先に使用可能なログ・データがあることを示しています。
- 下へスクロール
- 詳細なロギング・セクションに注意してください。
- ソースIPを書き留めます。
- 宛先IPを書き留めます。
- ポートを書き留めます。
ロギング・ポイントF: インスタンスBのTcpdump
- インスタンスBのSSHセッションに移動します。
- 生成されたtcpdumpの出力に注意してください。
-
Tcpdump出力。
[opc@ih-instance-vcn-b ~]$ sudo tcpdump -i ens3 src 172.16.0.20 and port 80 dropped privs to tcpdump tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens3, link-type EN10MB (Ethernet), capture size 262144 bytes 08:56:50.489551 IP 172.16.0.20.23408 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [S], seq 1817516973, win 62720, options [mss 8960,sackOK,TS val 3736091466 ecr 0,nop,wscale 7], length 0 08:56:50.491813 IP 172.16.0.20.23408 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 372277210, win 490, options [nop,nop,TS val 3736091468 ecr 671349263], length 0 08:56:50.491849 IP 172.16.0.20.23408 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736091468 ecr 671349263], length 75: HTTP: GET / HTTP/1.1 08:56:50.492311 IP 172.16.0.20.23408 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736091469 ecr 671349265], length 0 08:56:50.492327 IP 172.16.0.20.23408 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736091469 ecr 671349265], length 0 08:56:50.493247 IP 172.16.0.20.23408 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736091469 ecr 671349265], length 0 08:56:50.493667 IP 172.16.0.20.23408 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 874, win 485, options [nop,nop,TS val 3736091470 ecr 671349267], length 0 08:57:09.284597 IP 172.16.0.20.22060 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [S], seq 3049648180, win 62720, options [mss 8960,sackOK,TS val 3736110261 ecr 0,nop,wscale 7], length 0 08:57:09.285040 IP 172.16.0.20.22060 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 728296369, win 490, options [nop,nop,TS val 3736110261 ecr 671368058], length 0 08:57:09.285102 IP 172.16.0.20.22060 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736110261 ecr 671368058], length 75: HTTP: GET / HTTP/1.1 08:57:09.285534 IP 172.16.0.20.22060 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736110262 ecr 671368059], length 0 08:57:09.285641 IP 172.16.0.20.22060 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736110262 ecr 671368059], length 0 08:57:09.285855 IP 172.16.0.20.22060 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736110262 ecr 671368059], length 0 08:57:09.286211 IP 172.16.0.20.22060 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 874, win 485, options [nop,nop,TS val 3736110263 ecr 671368059], length 0 08:57:10.964151 IP 172.16.0.20.47275 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [S], seq 1863177286, win 62720, options [mss 8960,sackOK,TS val 3736111940 ecr 0,nop,wscale 7], length 0 08:57:10.964645 IP 172.16.0.20.47275 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 464215720, win 490, options [nop,nop,TS val 3736111941 ecr 671369737], length 0 08:57:10.964694 IP 172.16.0.20.47275 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736111941 ecr 671369737], length 75: HTTP: GET / HTTP/1.1 08:57:10.965157 IP 172.16.0.20.47275 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736111942 ecr 671369738], length 0 08:57:10.965243 IP 172.16.0.20.47275 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736111942 ecr 671369738], length 0 08:57:10.965612 IP 172.16.0.20.47275 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736111942 ecr 671369738], length 0 08:57:10.966035 IP 172.16.0.20.47275 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 874, win 485, options [nop,nop,TS val 3736111942 ecr 671369739], length 0 08:58:23.664041 IP 172.16.0.20.16336 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [S], seq 407465876, win 62720, options [mss 8960,sackOK,TS val 3736184640 ecr 0,nop,wscale 7], length 0 08:58:23.664613 IP 172.16.0.20.16336 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 3047424129, win 490, options [nop,nop,TS val 3736184641 ecr 671442437], length 0 08:58:23.664620 IP 172.16.0.20.16336 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736184641 ecr 671442437], length 75: HTTP: GET / HTTP/1.1 08:58:23.665349 IP 172.16.0.20.16336 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736184641 ecr 671442438], length 0 08:58:23.666335 IP 172.16.0.20.16336 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736184642 ecr 671442438], length 0 08:58:23.666344 IP 172.16.0.20.16336 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736184642 ecr 671442438], length 0 08:58:23.666816 IP 172.16.0.20.16336 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 874, win 485, options [nop,nop,TS val 3736184643 ecr 671442440], length 0 08:58:24.529970 IP 172.16.0.20.27720 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [S], seq 3610633804, win 62720, options [mss 8960,sackOK,TS val 3736185506 ecr 0,nop,wscale 7], length 0 08:58:24.530465 IP 172.16.0.20.27720 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 575035162, win 490, options [nop,nop,TS val 3736185507 ecr 671443303], length 0 08:58:24.530545 IP 172.16.0.20.27720 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736185507 ecr 671443303], length 75: HTTP: GET / HTTP/1.1 08:58:24.531020 IP 172.16.0.20.27720 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736185507 ecr 671443304], length 0 08:58:24.531079 IP 172.16.0.20.27720 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736185507 ecr 671443304], length 0 08:58:24.531619 IP 172.16.0.20.27720 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736185508 ecr 671443304], length 0 08:58:24.532042 IP 172.16.0.20.27720 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 874, win 485, options [nop,nop,TS val 3736185508 ecr 671443305], length 0 08:58:25.562872 IP 172.16.0.20.33101 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [S], seq 3415948315, win 62720, options [mss 8960,sackOK,TS val 3736186539 ecr 0,nop,wscale 7], length 0 08:58:25.563301 IP 172.16.0.20.33101 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 2043572435, win 490, options [nop,nop,TS val 3736186540 ecr 671444336], length 0 08:58:25.563424 IP 172.16.0.20.33101 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [P.], seq 0:75, ack 1, win 490, options [nop,nop,TS val 3736186540 ecr 671444336], length 75: HTTP: GET / HTTP/1.1 08:58:25.563812 IP 172.16.0.20.33101 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 239, win 489, options [nop,nop,TS val 3736186540 ecr 671444337], length 0 08:58:25.563960 IP 172.16.0.20.33101 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 873, win 485, options [nop,nop,TS val 3736186540 ecr 671444337], length 0 08:58:25.564877 IP 172.16.0.20.33101 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [F.], seq 75, ack 873, win 485, options [nop,nop,TS val 3736186541 ecr 671444337], length 0 08:58:25.565259 IP 172.16.0.20.33101 > ih-instance-vcn-b.ihprivatesubnet.spokevcnb.oraclevcn.com.http: Flags [.], ack 874, win 485, options [nop,nop,TS val 3736186542 ecr 671444338], length 0
-
出力を分析してください。この出力は、HTTPトラフィックがハブファイアウォールIPから受信されたことを示します。
- 作成されたcurlリクエストの最初の出力セクション。
- 作成されたcurlリクエストの2番目の出力セクション。
- 作成されたcurlリクエストの3番目の出力セクション。
- ソース DNS/IP。
- 宛先 DNS/IP。
- ポート。
- TCPフラグ。
ノート:他のシナリオでは、シナリオ1と同じログ、パケット取得およびtcpdumpsを収集します。
シナリオ2: スポークVCNインスタンスからハブ・インスタンスへのパケットのフォロー
シナリオ3: ハブ・インスタンスからスポークVCNインスタンスへのパケットのフォロー
シナリオ4: スポークVCNインスタンスからインターネットへのパケットのフォロー
シナリオ5: スポークVCNインスタンスからOCIサービス・ネットワークへのパケットのフォロー
シナリオ6: ハブ・インスタンスからインターネットへのパケットのフォロー
シナリオ7: インターネットからハブ・インスタンスへのパケットのフォロー
シナリオ8: オンプレミスからスポークVCNインスタンスへのパケットのフォロー
シナリオ9: スポークVCNインスタンスからオンプレミスへのパケットのフォロー
シナリオ10: リモート・コンピュータからLoad Balancer、スポークVCNインスタンスへのパケットのフォロー
承認
- 作成者 - Iwan Hoogendoorn (OCIネットワーク・スペシャリスト)
その他の学習リソース
docs.oracle.com/learnの他のラボを確認するか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerになります。
製品ドキュメントは、Oracle Help Centerを参照してください。
Follow the Packets in a Hub and Spoke VCN Routing Architecture inside Oracle Cloud Infrastructure
G12468-02
August 2024