Oracle Cloud Infrastructure 中的基本網路問題疑難排解
簡介
在 Oracle Cloud Infrastructure (OCI) 中,診斷網路連線問題需要檢視多個元件的流量組態和流程。OCI Network Command Center 工具 (例如網路視覺化程式、網路路徑分析器及 VCN 流程日誌) 可深入瞭解網路資源的版面配置、路由及流程行為。這些工具可快速識別 OCI 網路環境中跨虛擬雲端網路 (VCN)、子網路及閘道的組態錯誤、遺漏路由及通訊失敗。
在本教學課程中,我們將著重於解決常見連線問題的根本疑難排解技術。雖然它示範了如何有效使用這些工具來簡化疑難排解和有效解決問題,但目標還可以更深入瞭解如何應對和分析連線挑戰,而不只是如何使用這些工具本身。
目標
-
您可以使用網路視覺化程式工具探索區域、VCN 及子網路層次的網路版面配置。
-
使用「網路路徑分析器」工具分析流量路徑,瞭解封包如何周遊網路並識別失敗。
-
解譯 VCN 流程日誌工具以檢查流量記錄,以及偵測連線問題或異常行為。
-
識別並疑難排解網路組態錯誤、路由遺失,以及通訊失敗。
必備條件
-
您熟悉基本的 OCI 網路元件,例如 VCN、子網路、閘道、安全清單及路由表。
-
您可以存取已設定網路資源的 OCI 租用戶。
-
您的使用者帳戶需要使用 Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 原則來管理 VCN 元件,以及使用網路視覺化程式、網路路徑分析器以及 VCN 流程日誌。
-
如果您想要跟隨一些即將提供的範例,請在測試的 Oracle Linux 虛擬機器 (vM) 中執行下列命令,以建立簡單的 Apache 網站。
sudo dnf install httpd --assumeyes sudo systemctl enable httpd sudo systemctl start httpd sudo firewall-offline-cmd --add-service=http sudo systemctl restart firewalld sudo vi /var/www/html/index.html '<!doctype html><html><body><h1>Test Apache Website.. it's reachable!</h1></body></html>'
工作 1:使用網路視覺化程式檢視網路設定
開始挖掘哪些漏洞之前,它有助於帶回一步,並清楚檢視您的網路環境。OCI 中的網路視覺化程式會以圖形方式呈現您的 VCN 拓樸。雖然它不會直接排解問題,但在您選擇的特定區間中,您可清楚檢視整個網路架構。
此視覺相關資訊環境顯示所有項目在單一位置 (VCN、子網路、閘道、路由表、安全清單) 的連線方式。這樣一來,您能夠更輕鬆地發現任何看起來像遺失的路由,或是未與動態路由閘道 (DRG) 關聯的 VCN。在複雜的設定中,它可以為您節省大量猜測。它並非總是固定的,但它是一個穩固的第一步,可以讓您在進入詳細資料之前朝向正確的方向。
本教學課程摘要說明 Network Visualizer 在下列圖表中的運作方式。如需詳細資訊,請參閱 Network Visualizer 。
範例
我們將使用下列架構作為範例。
在此範例中,環境中出現兩個問題。我們將瞭解網路視覺化程式如何協助識別及解決這些問題。
- 問題 1:
VM-1
無法偵測VM-2
。 - 問題 2:
VM-2
無法連線網際網路。
讓我們在 OCI 主控台中使用網路視覺化程式快速瀏覽我們的網路環境,以反映架構。
第一層:區域網路拓樸
此拓樸包括 DRG、VCN、CPE 以及各種類型的閘道。
-
登入 OCI 主控台。
-
請確定您位於正確的區域。
-
點擊左上角的漢堡菜單。
-
按一下 [ 網路 ]。
-
按一下網路視覺化程式 (Network visualizer) 。
-
-
這是存取網路視覺化程式之後,會看到的第一個檢視。讓我們打破它。
- 選取您網路元件所在的區間。如果不確定資源位於何處,請選取父項區間 (或根區間),然後選取包含子項區間。
- 請注意您擁有的 VCN:
VCN-1
和VCN-2
,以及每個 VCN 的 IPv4 位址區塊。 - 請注意網路閘道,例如:
- 具有多個連附項 (VCN、RPC 和 IPSec) 的 DRG。
VCN-2
中的 NAT 閘道。
- 您將看到遠端對等互連連線 (RPC),並將吉達地區的 VCN 連接到另一個區域 (利雅德)。
- 此外,內部部署網路也有 IPSec 連線。您可以看到客戶 CPE 裝置 (
210.20.x.x
) 的公用 IP,以及將與我們的 VCN (172.16.16.10/32
) 私下通訊的內部部署網路位址區塊。
-
按一下
VCN-2
。 -
現在讓我們從路由圖開始深入探索 VCN 拓樸。
第二層:VCN 拓樸
此拓樸包括其他資源的子網路、VLAN 以及閘道。除了子網路使用的安全規則之外 (安全清單或 NSG)。
- 我們位於 VCN 路由地圖檢視中。
VCN-2
包含一個專用子網路。- 我們可以在子網路的路由表中看到規則,將目標為
VCN-1
的流量傳送至 DRG 作為下一個躍點。
- 切換至 VCN 安全對應檢視。
- 我們也會在此檢視中看到
VCN-2
包含一個專用子網路。 - 此外,此模式中也會顯示連附至專用子網路的安全清單和網路安全群組 (NSG)。
- 按一下專用子網路。
- 現在讓我們從庫存地圖開始,深入瞭解子網路拓樸。
第三層:子網路拓樸
此拓樸顯示子網路中 OCI Compute 執行處理、OCI Load Balancer、OCI File Storage Service 和 OCI Kubernetes Engine (OKE) 叢集的資源資訊,以及資源使用的安全規則。
- 我們位於子網路庫存地圖檢視中。
- 我們在此子網路 (
VM-2
) 中只有一個運算執行處理,請按一下它。 - 您可以看到 VM 的部分相關資訊,例如區間、IP 等等。
- 切換至子網路安全性對應檢視。
- 此子網路 (
VM-2
) 中只有一個運算執行處理。 - 我們會看到
VM-2
所使用的安全清單和 NSG。
摘要:
我們已經探索我們的網路環境外觀以及所涉及的元件,您認為之前提到問題的根本原因是什麼?
-
問題 1:
VM-1
無法偵測VM-2
。在第一層:區域網路拓樸中,請注意
VCN-1
未附加至 DRG,因此對於VM-1
與VM-2
之間的通訊流程,我們必須附加VCN-1
並新增必要的路由規則,才能啟用流量。附加
VCN-1
並新增下列路由規則 ( 目的地:VCN-2
、下一個躍點: DRG) 應解決此問題。這假設VCN-2
中的路由已正確設定,且在這兩個安全清單中都允許 ICMP 類型 8。 -
問題 2:
VM-2
無法連線網際網路。在第二層:VCN 拓樸中,請注意
VCN-2
的專用子網路只有一條通往 DRG 的路由,但沒有通往 NAT 閘道的路由,這會導致VM-2
沒有網際網路連線。新增下列路由規則 ( 目的地:
0.0.0.0/0
、下一個躍點: NAT 閘道) 應解決此問題。假設安全清單中已允許傳出流量。網路視覺化程式可協助您發現組態錯誤所造成的明顯問題,如範例中所示。但即使它未顯現出明確的問題,其真實價值也在於讓您全面瞭解環境。這種大畫面有助於您驗證目前的設定,並在更複雜的問題中深入挖掘前,提供您堅實的起點。
作業 2:驗證網路組態
清楚檢視您的網路環境以及您所擁有的元件之後,下一個重要步驟就是驗證實際的組態。許多連線問題都很簡單;缺少路由、過度嚴格的安全規則,或只連結至錯誤路由表或安全清單的子網路。
在跳入更深入的疑難排解 (例如檢查日誌或執行封包擷取) 之前,請務必確定所有項目都已按預期配置。此步驟通常會提早顯示根本原因,並協助您避免稍後進行不必要的調查。
範例
我們將使用下列架構作為範例。
首先,讓我們簡要說明在驗證組態時扮演重要角色的核心路由與安全元件:
-
路由規則:
-
內部部署:
- RT-0:如果是 FastConnect 或 IPSec 連線 (請參閱廠商:Cisco、Fortinet 等等),則為內部部署客戶端設備 (CPE) 裝置 (或多雲端) 的路由。
-
OCI VCN 路由表:VCN 中存在,可用來將流量從 VCN 傳送 (例如,傳送至網際網路、至內部部署網路或對等互連 VCN)。這些路由表的規則外觀和作用類似於您可能已熟悉的傳統網路路由規則。
- RT-1-2-3:指定給子網路層次的 VCN 路由表,以遞送外送流量。
- RT-2a:指派給 DRG
VCN-2
連附項的 VCN 路由表 (傳輸路由案例需要此表格),在此範例中,它被用來作為傳入路由表,透過防火牆遞送來自 DRG 的流量以進行檢查。 - RT-2b:連附至 NAT 閘道的 VCN 路由表,在此範例中,會作為傳入路由表,將來自網際網路的回應流量遞送回防火牆進行檢查。
-
OCI DRG 路由表:存在於 DRG 中,用於路由透過連附項輸入 DRG 的封包。
- RT-10-20-30:VCN 連附項的 DRG 路由表,用於路由來自 VCN 的流量。
- RT-40-50: RPC 連附項的 DRG 路由表,用於路由來自其他區域的流量。
- RT-60:適用於 IPSec 連附項的 DRG RT,用於路由來自內部部署或多雲端網路的流量。
-
-
安全規則:
-
內部部署:
- FW-0:在 FastConnect 或 IPSec 連線 (請參考廠商:Cisco、Fortinet 等等) 的情況下,在內部部署 CPE 裝置 (或多雲端) 上控制並限制從 OCI 到 OCI 的流量。
-
OCI VCN 安全清單:作為 VCN 型資源的虛擬防火牆,使用輸入和輸出規則指定允許進出流量的類型。安全清單是在子網路層次設定,這表示子網路中的所有 VNIC 都受同一組安全清單約束。
- SL-1-2-3:指派給子網路層級的安全清單,以控制每個子網路上的輸入和輸出流量。
注意: NSG 是 OCI 中另一種可用的虛擬防火牆類型。它們的運作方式與安全清單類似,但提供更精細的控制,因為它們會在資源層次套用。當相同子網路中的兩個資源需要不同的安全態勢時,此功能相當有用。不過,此教學課程未使用 NSG。如需詳細資訊,請參閱安全清單與網路安全群組的比較。
-
OCI Network Firewall 或第三方防火牆:可作為子網路、VCN 和外部網路之間流量的集中式狀態檢查點,強制執行基本安全清單規則以外的進階安全原則。
- FW-2:控制並檢查 OCI 網路環境中所有北南部和西部的流量。
-
我們瞭解如何在整個環境中套用路由和安全性,讓我們更仔細地查看下列範例案例,其中出現四個問題。藉由套用一些共識,我們將找出要檢查哪些組態,以及每個疑難排解案例的位置。
注意:
- 如果使用 NSG,請複查套用至每個 VM 之每個 VNIC 的組態。
- 在此範例中,
VM-2
做為協力廠商防火牆 (FortiGate)。它已設定為正確遞送流量。
-
問題 1:
VM-1
無法偵測VM-3
(不同區域,防火牆不應檢查流量)。- 遞送作業:
- 要求: RT-1 > RT-10 > RT-40。
- 回應: RT-3 > RT-30 > RT-50。
- 安全性:應允許 ICMP 類型 8 具有成功的 ping。
- 要求: SL-1 (傳出規則) > SL-3 (傳入規則)。
- 回應: SL-3 (傳出規則) > SL-1 (傳入規則)。
- 遞送作業:
-
問題 2:
VM-1
無法連線網際網路 (VM-2
防火牆應檢查流量)。- 遞送作業:
- 要求: RT-1 > RT-10 > RT-2a > FW-2 內部路由 > RT-2。
- 回應: RT-2b > FW-2 路由 > RT-2 > RT-20。
- 安全:
- 要求: SL-1 (傳出規則) > SL-2 (傳入與傳出規則) > FW-2 (傳入與傳出規則)。
- 回應: SL-2 (傳入與傳出規則) > FW-2 (傳入與傳出規則) > SL-1 (傳入規則)。
- 遞送作業:
-
問題 3:
VM2
無法連線網際網路。- 遞送作業:
- 要求: RT-2。
- 回應:不需要遞送。
- 安全:
- 要求: SL-2 (傳出規則)。
- 回應: SL-2 (傳入規則)。
- 遞送作業:
-
問題 4:內部部署無法偵測
VM-1
(防火牆應檢查流量)。- 遞送作業:
- 要求: RT-0 (內部部署 CPE) > RT-60 > RT-2a > FW-2 內部路由 > RT-2 > RT-20。
- 回應: RT-1 > RT-10 > RT-2a > FW-2 內部路由 > RT-2 > RT-20。
- 安全:
- 要求: FW-0 (傳出規則) > SL-2 (傳入與傳出規則) > FW-2 (傳入與傳出規則) > SL-1 (傳入規則)。
- 回應: SL-1 (傳出規則) > SL-2 (傳入與傳出規則) > FW-2 (傳入與傳出規則) > FW-0 (傳入規則)。
- 遞送作業:
瞭解如何透過網路管理及控制流量至關重要。藉由追蹤路徑流量,您可以快速識別可能發生的問題,以及疑難排解時需要複查哪些設定值。
作業 3:使用網路路徑分析器
您已複查整個網路設定,請手動檢查路由與安全規則的組態。不過,問題仍然存在,您可能會忽略一些組態詳細資訊,因此接下來的步驟為何?
這是網路路徑分析器所在的位置。將其視為您的虛擬網路偵測器,旨在即時檢查您的 OCI 網路路由和安全組態。它會收集和分析這些路徑,以判斷來源和目的地之間的路徑如何運作或失敗。不會改為傳送實際流量,而是檢查組態並用來確認可連線性。
網路路徑分析器可讓您直接在 OCI 主控台內驗證通訊路徑的組態,而不需要執行手動連線測試,例如從個別 VM 或資料庫偵測 ping 或 telnet,因此提供了更有效率且集中的疑難排解方法。
網路路徑分析器支援下列情況:
- OCI 至 OCI。
- 內部部署的 OCI。
- 內部部署至 OCI。
- 網際網路至 OCI。
- OCI 至網際網路。
範例 1
我們將使用下列架構作為範例。
發生網路問題,我們將使用網路路徑分析器來追蹤並解決根本原因。
問題:VM-1
無法存取 VM-2
(OCI 至 OCI) 上代管的網站。
-
登入 OCI 主控台,前往
VM-2
,然後執行下列命令來檢查網站是否在本機執行。curl localhost
-
前往 OCI 主控台,瀏覽至
VM-1
並執行相同的命令來測試VM-2
的連線。curl 192.168.0.20
您會看到要求失敗。在接下來的步驟中,我們將使用網路路徑分析器來調查原因。
-
前往 OCI 主控台。
- 請確定您位於正確的區域。
- 點擊左上角的漢堡菜單。
- 按一下 [ 網路 ]。
- 按一下網路路徑分析器。
-
按一下建立路徑分析。
-
現在,讓我們設定要測試之網路流程的詳細資訊。
- 輸入 Name 作為
test-vm1-to-vm2-port80
。 - 選取協定作為 TCP 。
- 輸入 Name 作為
-
我們將從填入來源資訊開始,在本案例中為
VM-1
。- 選取尋找 OCI 資源。
- 選取來源類型作為運算執行處理 (VNIC) 。
- 從清單中選取
VM-1
。 - 選取將產生流量的 VNIC (若 VM 只有一個 VNIC,已自動填入此 VNIC)。
- 選取來源 IPv4 位址
10.0.0.10
(如果只有一個 IPv4 位址,也會自動填入此位址)。
- 按一下顯示進階選項,
- 您可以在此處指定來源連接埠 (如有需要);在此範例中,請將它設為使用任何連接埠。
-
接下來,我們會填入目的地資訊,在此情況下為
VM-2
。- 選取尋找 OCI 資源。
- 選取來源類型作為運算執行處理 (VNIC) 。
- 從清單中選取 VM-2 。
- 選取將產生流量的 VNIC (若 VM 只有一個 VNIC,已自動填入此 VNIC)。
- 將來源 IPv4 位址選取為
192.168.0.20
(如果只有一個 IPv4 位址,也會自動填入此位址)。 - 將目的地連接埠輸入為 80 。
- 若要同時分析正向和反向流量,請將 Direction 保持為 Bi-directional 。
- 按一下執行分析,
- 連線詳細資訊會在分析執行時顯示。
- 向下捲動至追蹤分析進度並等到分析完成後,這可能需要一或兩分鐘的時間。
-
分析已完成。讓我們開始檢查轉送路徑結果。
- 分析指示兩個成功躍點之後無法連線
VM-2
。 - 刪除會發生在 DRG 和
VM-2
之間。 - 如需詳細資訊,請按一下檢視圖表資訊。
- 此表格會細分路徑中每個步驟的遞送流程與安全性檢查。
- 如果您放大,將會看到 DRG 和
VM-2
之間的流量已拒絕。
- 展開相同區段以取得更多明細。
- 請注意,路由已順利轉送。
- 不過,因為遺漏安全規則而拒絕流量:
- (3.a) 允許傳出流量,此處沒有任何問題。
- (3.b) 傳入流量因沒有允許的規則而被拒絕。顯示與
VM-2
子網路關聯的安全清單 (VCN-2 的預設安全清單 ),記下此清單,我們將在接下來的步驟中加以複查。此時,我們已找出問題的來源。
- 轉送路徑檢查失敗,因此未分析傳回路徑。
- 按一下儲存分析,
- 您可以隨時重新瀏覽和重新執行分析。我們將在修正問題後於本教學課程中再次執行。
- 瀏覽至目的地 VM 所在位置的
VCN-2
。 - 按一下安全性。
- 按一下
VCN-2
的預設安全清單。
注意:安全清單會在子網路層次運作,也就是說,這些規則允許的任何流量都會套用至該子網路內的所有 VNIC。
- 按一下安全規則。
- 此表格顯示允許的流量。預設會拒絕包括 HTTP 在內的所有項目,因為沒有允許的規則。這就是為什麼
VM-1
無法存取VM-2
上代管的網站。 - 若要修正此問題,請按一下新增傳入規則。
- 在來源 CIDR 欄位中輸入
10.0.0.0/16
(這是VCN-1
的 CIDR)。 - 為 IP 協定選取 TCP 。
- 將 80 設為目的地連接埠。
- 按一下新增傳入規則。
- 分析指示兩個成功躍點之後無法連線
-
登入
VM-1
並執行相同的命令來測試VM-2
的連線。curl 192.168.0.20
您現在應該會看到網站可以連線。
-
回到分析以執行其他執行,並確認問題已修正。
-
按一下分析。
-
等待分析完成。
-
分析已完成。讓我們檢查轉送路徑結果。
- 狀態現在顯示可連線。
- Hop 3 現在成功,因為我們新增了允許 HTTP 流量的安全規則。
- 按一下檢視圖表資訊。
- 您可以看到躍點 3 的安全狀態現在是允許 (之前是拒絕 )。
-
正在驗證傳回路徑,我們也可以看到它是否成功。
範例 2
我們將使用下列架構作為範例。
發生網路問題,我們將使用網路路徑分析器來追蹤並解決根本原因。
問題:VM-2
無法安裝 telnet 套裝軟體 (OCI 至 Internet) 。
注意: Telnet 是一種網路通訊協定,以及用來透過網路從遠端存取與管理裝置的指令行工具。也用於基本網路測試 (例如,檢查連接埠是否開啟)。
-
檢查我們是否可以在
VM-2
上安裝telnet
。-
登入
VM-2
並執行下列指令以安裝telnet
。sudo yum install telnet
-
輸入
y
,然後按 Enter 鍵繼續。 -
安裝失敗。
VM-2
嘗試連線至區域 YUM 儲存區域 (yum.me-jeddah-1.oci.oraclecloud.com
),但無法連線。
-
執行以下指令,尋找
yum
儲存庫的 IP。dig yum.me-jeddah-1.oci.oraclecloud.com
-
記下 IP 位址。
VM-2
無法連線這些公用 IP,這表示其無法透過 NAT 閘道進行網際網路存取,也無法透過服務閘道透過 Oracle Services Network 進行專用存取以連線至yum
儲存區域,或者會封鎖外送流量。為了瞭解問題的底端,我們將在接下來的步驟中使用 NPA 分析。
-
-
前往 OCI 主控台。
- 請確定您位於正確的區域。
- 點擊左上角的漢堡菜單。
- 按一下 [ 網路 ]。
- 按一下網路路徑分析器。
-
按一下建立路徑分析。
-
現在,讓我們設定要測試之網路流程的詳細資訊。
- 輸入 Name 作為
test-vm2-to-internet-port443
。 - 選取協定作為 TCP 。
- 輸入 Name 作為
-
我們將從填入來源資訊開始,在本案例中為
VM-2
。- 選取尋找 OCI 資源。
- 選取來源類型作為運算執行處理 (VNIC) 。
- 從清單中選取
VM-2
。 - 選取將產生流量的 VNIC (若 VM 只有一個 VNIC,已自動填入此 VNIC)。
- 將來源 IPv4 位址選取為
192.168.0.20
(如果只有一個 IPv4 位址,也會自動填入此位址)。
- 按一下顯示進階選項,
- 您可以在此處指定來源連接埠 (如有需要);在此範例中,請將它設為使用任何連接埠。
-
接下來,我們將填入目的地資訊,在此情況下為網際網路,特別是
yum
儲存區域 (192.29.119.92
和192.29.125.93
) 的公用 IP,我們將僅使用其中一種 IP 進行測試。- 選取輸入 IP 地址。
- 輸入目的地 IPv4 位址
192.29.119.92
。 - 輸入 Destination port 作為 443 ,因為透過 HTTPS 存取儲存區域。
- 若要同時分析正向和反向流量,請將 Direction 保持為 Bi-directional 。
- 按一下執行分析,
- 連線詳細資訊會在分析執行時顯示。
- 向下捲動至追蹤分析進度並等到分析完成後,這可能需要一或兩分鐘的時間。
-
分析已完成。讓我們開始檢查轉送路徑結果。
- 分析顯示
VM-2
無法連線網際網路。 - 此區段會反白顯示遺漏的組態,以防止流量結束
VCN-2
。 - 如需詳細資訊,請按一下檢視圖表資訊。
- 此表格會細分路徑中每個步驟的遞送流程與安全性檢查。請注意,流程是直接的,因為兩者之間沒有中間躍點。
- 如果放大,您會看到已為此流量定義沒有路由。
- 如需詳細資訊,請展開相同的區隔。
- 沒有任何路由設定為透過網際網路傳送流量,為了修正這個問題,我們需要在
VM-2
子網路路由表 (VCN-2 的預設路由表 ) 中新增規則,記下規則,我們將在下次工作中檢閱。此時,我們已找出問題的來源。 - 請注意,安全性為允許。
- (3.a) 允許傳出流量,此處沒有任何問題。
- (3.b) 在此情況下,傳入流量並不相關,因為案例只著重於傳出流量。
- 轉送路徑檢查失敗,因此未分析傳回路徑。
- 按一下儲存分析,
- 您可以隨時重新瀏覽和重新執行分析。我們將在修正問題後於本教學課程中再次執行。
- 瀏覽至來源 VM 所在位置的 VCN-2 。
- 按一下路由。
- 按一下 VCN-2 的預設路由表。
注意:路由表會在子網路層次運作,亦即表格中定義的任何規則都會套用至該子網路內的所有資源。路由表也可以與特定的 VNIC 或 IP 位址建立關聯,也可以使用個別資源路由。不過,這與我們的教學課程無關。如需詳細資訊,請參閱每一資源製程。
- 按一下路由規則。
- 目前只有設定一個路由規則,才能將流量路由至
VCN-1
。 - 若要啟用網際網路存取,請按一下新增路由規則。
- 選取 NAT 閘道作為目標類型。
- 輸入
0.0.0.0/0
作為目的地 CIDR 區塊。 - 選取先前建立的 NAT 閘道。
- 按一下新增路由規則。
- 分析顯示
-
登入
VM-2
,然後嘗試再次安裝telnet
。-
執行下列命令。
sudo yum install telnet
-
安裝完成!。
-
-
回到分析以執行其他執行,並確認問題已修正。
-
按一下分析。
-
等待分析完成。
-
分析已完成。讓我們檢查轉送路徑結果。
- 狀態現在顯示可連線。
- Hop 2 現在成功,因為我們新增了傳送流量至 NAT 閘道的路由規則。
- 按一下檢視圖表資訊。
- 您可以看到躍點 2 的路由狀態現在是已轉送 (之前是無路由 )。
-
正在驗證傳回路徑,我們也可以看到它是否成功。
作業 4:分析 VCN 流程日誌
VCN 流量日誌可讓您多一層檢視流量行為。此服務可讓您深入查看每個 VNIC 的實際流量,指出是否根據安全清單和 NSG 規則被接受或拒絕,這有助於您排解安全相關問題。
除了疑難排解之外,VCN 流量日誌對於監控網路活動、擷取來源 / 目的地 IP、連接埠、協定及時戳至關重要,也提供稽核與安全調查所需的詳細遙測。
範例
我們將使用下列架構作為範例。
注意:在此範例中,我們只著重於記錄目標所在位置的點 Y 。不過,您可以套用相同的步驟來啟用和分析位於 X 點的日誌 (流量的來源),以深入瞭解整體流量。
發生網路問題,我們將使用 VCN 流程日誌追蹤並解決根本原因。
問題:VM-1
無法存取 VM-2 上代管的網站。
-
登入
VM-2
並執行下列命令,檢查網站是否在本機執行。curl localhost
-
登入
VM-1
並執行相同的指令來測試與 VM-2 的連線。curl 192.168.0.20
您會看到要求失敗。在接下來的步驟中,我們將使用
VCN-2
流量日誌來調查原因。 -
現在,讓我們啟用日誌。我們將開始建立一個擷取篩選條件,這是 OCI 中使用的簡單規則集,用來判斷應擷取哪些網路流量以記錄或鏡射至虛擬測試存取點 (VTAP)。
- 登入 OCI 主控台並確定您位於正確的區域。
- 點擊左上角的漢堡菜單。
- 按一下 [ 網路 ]。
- 按一下擷取篩選條件。
-
按一下建立擷取篩選條件。
- 輸入
vcn-2-private-sn-logs
作為名稱。 - 選取流程日誌擷取篩選條件作為篩選條件類型。
- 將取樣率設定為 100% 。這會定義要擷取的網路流程百分比,在此情況下,我們要記錄所有流量。
- 將所有其他設定保留為預設值 。
- 按一下建立擷取篩選條件。
- 輸入
-
建立擷取篩選條件之後,請按一下複製來複製 OCID,就像在後續步驟中需要一樣。
-
現在,我們已準備好啟用日誌。
- 瀏覽至
VCN-2
。 - 開啟
VM-2
所在的專用子網路。 - 按一下監督。
- 向下捲動至日誌區段。
- 按一下流量日誌類別旁的三個點 (•••)。
- 按一下啟用日誌。
- 選取日誌群組。如果您還沒有日誌群組,請建立新的日誌群組。
- 日誌名稱會自動填入。
- 貼上先前複製的擷取篩選條件 OCID 。
- 按一下啟用日誌。
- 瀏覽至
-
流量日誌現在為作用中。
-
在
VM-1
中執行下列命令,重複相同的測試以產生流量。curl 192.168.0.20
-
返回日誌區段,然後按一下先前建立的日誌名稱。
- 向下捲動,您會看到顯示進入或離開網路之流量的日誌。
- 按一下動作。
- 按一下瀏覽日誌搜尋,即可套用進階篩選並縮小日誌結果範圍。
- 套用下列篩選條件以符合我們的測試連線。
- 來源 IP (
VM-1
):data.sourceAddress = '10.0.0.10'
。 - 目的地 IP (VM-2):
data.destinationAddress = '192.168.0.20'
。 - 目的地連接埠 (HTTP):
data.destinationPort = 80
。
- 來源 IP (
- 視需要調整依時間篩選中的時間範圍,或將它保留為預設的過去 5 分鐘。
- 按一下搜尋。
- 複查符合您搜尋準則的結果。
- 展開記錄詳細資料。
-
對於此特定記錄,您可以檢視此流量的詳細資訊。要注意的關鍵欄位包括:
- 時戳:流量到達子網路的確切日期與時間。
- 連線詳細資訊:例如來源 IP 位址、目的地 IP 位址和連接埠號碼。
- 動作:顯示如何處理流量;在此情況下,它是拒絕。這會確認問題的根本原因,沒有安全規則允許
VM-2
的 HTTP 流量。
-
為了讓 HTTP 流量到達
VM-2
,您有兩個選項:- 安全清單:在子網路層次套用,這表示子網路中的所有 VNIC 都受同一組安全清單的規範。
- NSG:在資源層次 (VNIC 層次) 套用。
-
此處將允許來自已與
VM-2
子網路關聯的預設安全清單。- 瀏覽至目的地 VM 所在位置的
VCN-2
。 - 按一下安全性。
- 按一下 VCN-2 的預設安全清單。
- 按一下安全規則。
- 此表格顯示允許的流量。預設會拒絕包括 HTTP 在內的所有項目,因為沒有允許的規則。這就是為什麼
VM-1
無法存取VM-2
上代管的網站。 - 若要修正此問題,請按一下新增傳入規則。
- 輸入
10.0.0.0/16
作為來源 CIDR (這是VCN-1
的 CIDR)。 - 選取 TCP 作為 IP 協定。
- 將 80 設為目的地連接埠。
- 按一下新增傳入規則。
- 瀏覽至目的地 VM 所在位置的
-
登入
VM-1
並執行相同的命令來測試VM-2
的連線。curl 192.168.0.20
您現在應該會看到網站可以連線。
-
返回日誌並重複執行與之前相同的步驟,以執行新的搜尋。
- 套用下列篩選條件以符合我們的測試連線。
- 來源 IP (
VM-1
):data.sourceAddress = '10.0.0.10'
。 - 目的地 IP (
VM-2
):data.destinationAddress = '192.168.0.20'
。 - 目的地連接埠 (HTTP):
data.destinationPort = 80
。
- 來源 IP (
- 視需要調整時間範圍,或將它保留為預設值 ( 過去 5 分鐘 )。
- 按一下搜尋。
- 複查符合您搜尋準則的結果。
- 展開記錄詳細資料。
- 套用下列篩選條件以符合我們的測試連線。
-
對於此特定記錄,您可以檢視此流量的詳細資訊。要注意的關鍵欄位包括:
- 時戳:流量到達子網路的確切日期與時間。
- 連線詳細資訊:例如來源 IP、目的地 IP 以及連接埠號碼。
- 動作:顯示如何處理流量。解決問題之後,您現在應該會看到流量為 ACCEPT 。
接下來的步驟
我們探討如何透過檢查架構、路由及安全組態,排解 OCI 的基本網路問題。這些核心檢查可協助解決最常見的連線問題。下一個教學課程將著重於進階案例和更多實際使用案例。
確認
- Authors - Anas Abdallah (雲端網路專家),Sachin Sharma (雲端網路專家)
其他學習資源
在 docs.oracle.com/learn 上探索其他實驗室,或在 Oracle Learning YouTube 頻道上存取更多免費學習內容。此外,請造訪 education.oracle.com/learning-explorer 以成為 Oracle Learning Explorer。
如需產品文件,請造訪 Oracle Help Center 。
Troubleshoot Basic Network Issues in Oracle Cloud Infrastructure
G40747-01