本文匯總了使用者在使用Virtual Private Cloud時遇到的常見問題,旨在協助您快速解決問題、理解產品能力或最佳化您的網路架構。
網路連通問題
網路規劃設計問題
網段配置問題
專用網路與交換器刪除問題
路由問題
網路營運與監控問題
計費問題
網路連通問題
如何?不同VPC互連,從而實現不同VPC中的資源互訪?
使用對等串連或雲企業網CEN,均可實現同帳號/跨帳號、同地區/跨地區的VPC互連。二者區別,可參考VPC互連。
VPC對等串連不通如何排查?
可參考以下排查思路。您可以使用網路智慧型服務-路徑分析工具,協助進行診斷。
查路由:
確保對等串連狀態是“已啟用”。
檢查兩端的交換器路由表,是否都正確配置了指向對方VPC網段的路由,且下一跳是對等串連執行個體。
查安全性群組&網路ACL:
檢查源端ECS和目的端ECS(或RDS等)所屬的安全性群組和網路ACL規則。
確保目的端的安全性群組和網路ACL的入方向規則,允許了來自源端VPC網段的流量(或具體的源IP)訪問所需的服務連接埠。
確保源端的安全性群組和網路ACL的出方向規則沒有限制流量發出。
查網段衝突:
檢查兩端VPC的網段是否有重疊。使用VPC對等串連時,建議兩端VPC的網段不要重疊。
特別注意檢查ECS執行個體內的Docker/K8s容器網段,是否與對端VPC的網段衝突。這是個非常隱蔽且常見的原因。如果衝突,即使路由和安全性群組、網路ACL都正確,網路也不通。
對等串連配置時網段衝突如何解決?
如果兩個需要互連的VPC網段衝突,您有以下幾種選擇:
重新規劃網路(推薦方案):將其中一個VPC內的資源遷移到一個新的、網段不衝突的VPC中。這是最徹底的解決方案。
使用雲企業網(CEN)和VPC NAT Gateway:對於更複雜的網段衝突情境,可以使用CEN結合VPC NAT Gateway的私網NAT功能,將一個VPC的地址映射成另一個位址區段,再進行通訊。此方案架構複雜,成本也更高。可參考:使用 VPC NAT Gateway解決地址衝突。
添加對等串連後部分IP無法訪問如何排查?
這種情況通常是由於更精細的路由或安全性群組規則導致的。
路由問題:檢查兩端的路由表。是否存在一條更具體、優先順序更高的路由(最長首碼匹配原則),將流量引到了其他地方(例如預設路由指向了NAT Gateway)。
安全性群組問題:檢查目的端安全性群組的入方向規則,是否只允許了部分源IP的訪問。
網路ACL問題:檢查網路ACL是否只允許了部分子網的流量。
對等串連為什麼發起端可以ping通接收端,但反向ping不通?
單向連通通常是由於非對稱配置引起的。請重點排查兩端ECS執行個體的安全性群組&網路ACL規則,是否允許出方向流量和入方向流量通行。
我建立了A到B和B到C的VPC對等串連,為什麼A和C無法通訊?
VPC對等串連不具備路由傳遞性。
這意味著:如果VPC-A與VPC-B建立對等串連,同時VPC-B與VPC-C建立對等串連,那麼VPC-A和VPC-C之間是無法通過VPC-B進行通訊的。
如果需要實現多VPC之間的全互連(例如構建星型或網狀網路拓撲),請使用雲企業網CEN產品。
為什麼VPC對等串連已經建立,但我還是無法訪問對方的RDS/Redis等雲端服務?
這個問題與ECS不通類似,但在排查時需要額外關注云服務自身的存取控制。
完成基礎連通性排查:按照VPC對等串連不通排查思路的 checklist 檢查路由、網段、安全性群組和網路ACL配置,確保網路鏈路是通的。
檢查雲端服務IP白名單:大部分資料庫和快取服務(如RDS、Redis、MongoDB)都有IP白名單功能。您必須將發起訪問的ECS執行個體的私網IP地址或者其所在的網段,添加到目標雲端服務的白名單中。
VPC對等串連是否支援跨帳號和跨地區?
支援。注意跨地區使用時,會統一由雲資料轉送CDT按出向流量收取流量傳輸費。
注意跨網站不支援,例如中國站與國際站的VPC無法互連。
IPv4網關刪除後公網為什麼無法訪問?
最常見的原因是刪除IPv4網關時,選擇了“私網模式”,而不是“公網模式”。選擇私網模式刪除後,VPC內部所有資源將全部無法與公網互連。
如果VPC需要恢複到沒有IPv4網關且可以公網訪問的狀態,您可以重新建立IPv4網關,然後刪除IPv4網關並選擇“公網模式”。詳細邏輯可參考IPv4網關。
同VPC下主網段內的ECS執行個體與附加網段內的ECS執行個體是否可以互連?
主網段與附加網段的ECS執行個體均屬於VPC內的執行個體。如果安全性群組和網路ACL規則允許通行,則可以互連。
VPC開啟ClassicLink功能後,傳統網路ECS執行個體是否可以與VPC附加網段內的雲資源互連?
不支援,附加網段不相容ClassicLink功能。
為什麼綁定HaVip後VIP無法漂移?
當主節點故障後,Vip無法自動漂移到備用節點,是HaVip配置中最常見的問題。原因通常有以下幾點:
Keepalived服務未啟動:以CentOS 7.9為例,執行
systemctl status keepalived檢查服務啟動情況。如果未啟動,可以執行systemctl start keepalived啟動Keepalived。Keepalived配置錯誤:檢查
keepalived.conf設定檔是否配置錯誤,例如:主備節點的
virtual_router_id不一致。主備節點的
authentication不一致。unicast_peer中指定的對端IP地址不正確。virtual_ipaddress中指定的虛擬IP地址不是HaVip地址。
安全性群組或網路ACL攔截:檢查安全性群組或網路ACL規則是否攔截了請求源IP的相關流量。
執行個體內防火牆:檢查ECS執行個體內部的防火牆(如firewalld, iptables)是否攔截了請求源IP的相關流量。
為什麼添加路由後網路還是不通?
添加了正確的路由只是網路連通的前提之一。如果不通,請按以下步驟系統排查:
路由雙向檢查:確保請求方向和回應程式向的路由都已正確配置。例如,VPC對等串連必須在兩端都配置路由。
安全性群組規則:檢查源端和目的端ECS執行個體所屬的安全性群組,是否允許存取了相應協議和連接埠的流量(例如
ping需要允許存取ICMP協議)。網路ACL規則:如果您配置了網路ACL,請檢查其出站和入站規則是否允許相關流量通過。
ECS內部防火牆:檢查ECS執行個體作業系統內部的防火牆(如Linux的
iptables/firewalld,Windows的防火牆)是否攔截了流量。網段衝突:檢查是否存在網路地址衝突,例如ECS上的Docker網段與對端VPC網段衝突。
使用路徑分析工具:在控制台使用網路智慧型服務-路徑分析工具,可以協助您可視化地診斷兩點之間的網路連通性。
ECS綁定EIP後無法訪問公網怎麼辦?
請按以下步驟檢查:
IPv4網關和VPC路由表:如果VPC啟用了IPv4網關,檢查ECS所在交換器的路由表,是否有一條指向IPv4網關的預設路由(
0.0.0.0/0)。安全性群組規則:檢查ECS所屬安全性群組的出方向規則。預設情況下,出方向規則是全部允許(
0.0.0.0/0)。請確認沒有錯誤地限制了出方向的訪問。網路ACL規則:如果您為交換器配置了網路ACL,請檢查其出站規則是否允許流量流出。
欠費:檢查您的阿里雲賬戶是否欠費,欠費可能會導致EIP無法使用。
ECS內部網路設定:確認ECS作業系統內的網路設定(如網關、DNS)是否正確。通常應由DHCP自動擷取。
VPC下的ECS為什麼沒有公網IP?
VPC的設計初衷就是為了網路隔離和安全。預設情況下,建立在VPC內的ECS執行個體只分配一個私網IP,用於VPC內部通訊,它本身不具備訪問互連網的能力。這是VPC的核心安全特性之一。
如果您需要它訪問公網,必須為其顯式地配置公網訪問能力,如公網訪問文檔所述的綁定EIP或配置NAT Gateway。
網路規劃設計問題
VPC支援組播嗎?
VPC本身不支援組播能力。但VPC可以結合雲企業網CEN產品,實現組播管理。
VPC如何?公網私用?
部分企業在本地IDC或VPC使用了非RFC 1918規定的私人網段,例如30.0.0.0/16。當與其他VPC或本地IDC建立網路連接時,由於VPC預設將RFC 1918之外的IP地址視為公網網段,VPC中雲產品資源具備公網訪問能力後,即便配置了指向30.0.0.0/16的路由條目指向本地IDC或VPC,依舊優先訪問公網,無法訪問目標VPC或本地IDC。
您可通過如下方式,實現公網網段私用:
方式1:IPv4網關功能。
您可通過使用IPv4網關,集中控制VPC公網訪問行為,訪問
30.0.0.0/16時將優先路由到其他VPC或本地IDC。詳細方案您可參考使用IPv4網關實現公網私用。方式2:使用者網段功能。
如果希望VPC在轉寄訪問
30.0.0.0/16的請求時,按照路由表進行轉寄而不是直接轉寄到公網,您可以在建立VPC時使用CreateVpc介面傳入UserCidr參數,為VPC設定使用者網段。設定使用者網段後,該VPC訪問使用者網段地址的請求將按照路由表進行轉寄。1、使用者網段僅支援通過API設定,不支援控制台。使用者網段建立後不支援修改。
2、當您僅設定VPC的IPv4網段時,如果選擇除192.168.0.0/16、172.16.0.0/12、10.0.0.0/8三個RFC標準私網網段及其子網之外的自訂地址網段,系統會預設設定該主網段為使用者網段。
VPC與傳統網路的區別是什嗎?
傳統網路是阿里雲早期的網路形態,預設與VPC不互連。目前已逐步下線,不推薦使用者使用。使用者所有購買的資源都應部署在VPC中。
特性 | 傳統網路 | Virtual Private Cloud |
網路模型 | 所有使用者共用一個扁平的、巨大的阿里雲公用地址空間 | 基於隧道技術的邏輯隔離網路,每個使用者獨享 |
網路隔離 | 依賴安全性群組進行隔離 | 天然的二層網路隔離,更安全 |
網路自訂 | 無法自訂網路拓撲和IP地址 | 高度靈活,可自訂網段、路由、網路拓撲 |
安全性 | 較低 | 更高 |
如何?VPC與傳統網路互連?
您可參考:使用ClassicLink連通傳統網路與VPC。
如何把阿里雲VPC和線下公司機房的IDC網路進行打通?阿里雲VPC與AWS/騰訊雲如何互連?
您可參考:VPC串連本機資料中心/其他雲。
VPC與其他VPC或線下網路網段衝突時能互連嗎?
您可參考:
如何讓ECS伺服器訪問公網?ECS伺服器如何通過IPv6地址訪問公網?
您可參考:選擇公網IP地址類型。
如何統一多個ECS的公網出口IP?
您可參考:
IPv4網關和公網NAT Gateway有什麼區別?
網路組件 | IPv4網關 | 公網NAT Gateway |
功能定位 | VPC邊界上的公網IPv4流量控制組件 | VPC內部的網路位址轉譯裝置 |
使用情境 | 集中控制公網訪問流量 | 統一公網流量出口 |
是否提供公網訪問能力 | 不提供,僅控制公網流量 | 通過綁定EIP提供公網訪問能力 (公網訪問能力是由EIP提供的,NAT Gateway本身不提供公網訪問能力) |
IPv4網關和公網NAT Gateway功能並無交叉,二者可以搭配同時使用。您可以參考公網訪問,詳細瞭解相關網路組件之間的關係。
公網IP和私網IP如何切換?
一台綁定了EIP的ECS執行個體同時擁有公網IP和私網IP。您無需手動“切換”。
VPC內部通訊:VPC內的其他ECS執行個體訪問這台ECS時,應該始終使用其私網IP。流量完全在VPC內部流轉,速度快且免費。
被公網訪問、主動訪問公網:互連網上的使用者或其他裝置訪問這台ECS時,或者這台ECS主動訪問互連網時,必須使用其公網IP(EIP)。
如何通過VPC實現ECS內網訪問OSS?
您可參考:VPC私網訪問雲端服務。
如何只允許特定IP訪問ECS執行個體?網路ACL和安全性群組有什麼區別?
您可參考:存取控制。
不同安全性群組之間如何互連?
普通安全性群組支援將安全性群組作為授權對象,企業級安全性群組不支援,詳情參見ECS文檔-支援安全性群組作為授權對象。
配置普通安全性群組入方向或出方向規則時,訪問來源可以直接設定為另外一個普通安全性群組。這種方式比授權IP位址區段更靈活。未來即使安全性群組內新增了ECS執行個體,或者執行個體IP發生變化,都無需修改安全性群組的規則,它們自動擁有存取權限。
安全性群組規則不生效如何排查?
規則優先順序:請檢查是否與優先順序更高的規則衝突。
方向錯誤:檢查規則是配置在“入方向”還是“出方向”。訪問ECS是入方向,ECS訪問外部是出方向。
作用對象錯誤:確認該安全性群組是否已正確地應用到了目標ECS執行個體的網卡上。
被網路ACL攔截:檢查ECS所在的交換器是否關聯了網路ACL,並且ACL的規則是否拒絕了該流量。
ECS內部防火牆:檢查作業系統內的防火牆設定。
路由問題:確保流量能夠正確地路由到ECS執行個體。
如何遷移ECS到另一個VPC?
您可參考:更換ECS執行個體的VPC。
VPC內能否自訂DNS伺服器?
可以。通過DHCP選項集功能,您可以將VPC的預設DNS伺服器配置,修改為您的自建在ECS上的DNS伺服器、本機資料中心的DNS伺服器、第三方的公用DNS服務(注意需要網路打通)。您可參考:使用自建 DNS 服務。
VPC對等串連能否連通中國網站和國際網站帳號下的VPC?
不能。
根據跨帳號合規要求,對等串連不支援中國站帳號與國際站帳號下VPC的私網互連。
VPC對等串連是否支援跨境私網互連?
支援。
VPC對等串連的網路時延如何?
同地區對等串連:網路延遲較低,通常可以達到較低的毫秒級延遲。
跨地區對等串連:由於涉及不同地區之間的資料轉送,網路延遲相對較高,具體延遲取決於兩地之間的物理距離和網路狀況。 您可以使用雲網路互訪效能觀測工具,查看地區間的網路平均時延作為參考,選擇更適合您業務的鏈路類型。
網段配置問題
什麼是CIDR?
無類域間路由CIDR (Classless Inter-Domain Routing) 是一種IP地址分配和路由彙總的方法,可以提高網路管理效率、簡化路由表。
CIDR使用斜杠標記法(如192.168.1.0/24):
斜杠前的是網路地址,表示該IP位址區段的起始IP地址。
斜杠後的數字表示子網路遮罩中連續1的位元,即網路首碼的長度。剩餘位元用於主機地址。
CIDR Block是共用相同網路首碼和位元的 IP 位址的集合。一個大的CIDR Block可以劃分為更多不同網路首碼和位元的小的CIDR Block,這個過程被稱作子網劃分,CIDR Block是現代網路規劃的基礎,VPC、交換器子網劃分都基於此原理。
樣本:
192.168.0.0/16:前16位是網路,後16位是主機(理論值包括216個IP地址)。該網段包括192.168.1.0/24、192.168.2.0/26等。10.0.0.0/8:前8位是網路,後24位是主機(理論值包括224個IP地址)。該網段包括10.1.0.0/16、10.2.0.0/24等。172.16.0.0/12:前12位是網路,後20位是主機(理論值包括220個IP地址)。該網段包括172.17.0.0/16、172.18.0.0/24等。
在建立VPC和交換器時,您需要以CIDR Block的形式為其指定網段。注意實際可用的IP地址要小於理論值,因為交換器存在系統保留地址。
如何修改VPC的網段?
調整主網段:
當您建立專用網路時,為其指定的IPv4網段是專用網路的主網段。控制台不支援修改專用網路的主網段,但您可以調整ModifyVpcAttribute介面的
CidrBlock參數,在主網段內放大或縮小網段。您需確保縮小後的網段包含已經使用的IP地址。專用網路開啟IPv6後分配的IPv6網段,不支援修改。
使用附加網段:您可以使用附加網段擴充網段地址,為VPC增加主網段之外的附加網段地址,附加網段與主網段同時生效,可用於建立交換器、部署ECS等雲產品資源。
如何修改交換器的網段?
交換器(vSwitch)的IPv4/IPv6網段在建立後,均無法修改。
如果您需要調整交換器的網段,只能刪除該交換器後,使用新的網段重新建立。注意在刪除交換器前,必須先釋放或遷移交換器內的所有雲資源,例如ECS執行個體、Server Load Balancer執行個體、RDS執行個體等。這是一個高風險操作,請務必做好資料備份和業務遷移計劃。
建立VPC時應該選擇哪個網段?
選擇VPC網段是網路規劃的關鍵一步,建議遵循以下原則:
使用標準私網網段:推薦使用RFC1918定義的標準私網網段,例如:
10.0.0.0/16、172.16.0.0/16、192.168.0.0/16。不能使用100.64.0.0/10、224.0.0.0/4、127.0.0.0/8或169.254.0.0/16網段作為VPC的網段。避免與本機資料中心(IDC)或其他網路環境衝突:如果您計劃將VPC與本網或其他VPC、其他雲打通,請務必確保VPC網段與這些網路的網段不衝突。
預留足夠地址空間:根據您未來的業務規模預估所需的IP地址數量,選擇一個足夠大的網段,避免後期因地址不足而被迫進行複雜的網路改造。
避免與容器網路常用網段衝突:如果您計劃在VPC內使用Docker或Kubernetes(K8s),建議避免使用
172.17.0.0/16等容器預設網段,以防無法通訊。
如何為VPC分配IPv6網段?IPv6如何訪問公網?
為專用網路和交換器開啟IPv6後,系統將自動建立IPv6網關並分配IPv6網段,預設僅支援私網通訊。如需公網通訊,可開通IPv6公網頻寬。詳細操作可參考開啟/關閉IPv6。
VPC是否可以只分配IPv6網段(即IPv6 only)?
不可以。VPC當前支援僅IPv4和雙棧(IPv4+IPv6),不支援IPv6 only。
如何為已有ECS執行個體分配指定私網IP?
您可參考:修改已有執行個體主網卡的主私網IPv4地址。
為什麼docker網路與VPC網段衝突時無法互連?
這是雲上網路規劃中一個非常典型的問題。當部署在ECS上的Docker(或K8s Pod)網路與您VPC內的其他交換器網段或對等串連對端的VPC網段發生重疊時,會導致路由衝突,無法正常通訊。
原因:假設Docker預設網段為
172.17.0.0/16,而VPC中有一個交換器B的網段是172.17.0.0/24。當Docker容器內的應用嘗試訪問交換器B中的IP時,ECS的作業系統會根據自身的路由表,將這個流量錯誤地路由到了本地的docker0橋接器,而不是通過VPC的路由轉寄出去,導致通訊失敗。解決方案:
修改Docker/K8s的網路設定:修改Docker守護進程的設定檔(如
/etc/docker/daemon.json),為其指定一個與您整體雲上網路環境(包括所有互聯的VPC和線下IDC)不衝突的私網網段。這是最根本的解決方案。規劃VPC網段時避坑:在規劃VPC和交換器網段時,主動避開
172.17.0.0/16、10.0.0.0/8中部分被K8s常用的網段。
如何設定IPAM位址集區網段,避免建立的VPC與線下IDC或其他雲的已有網段衝突?
HaVip是否支援IPv6?
不支援。當前僅支援IPv4。
專用網路與交換器刪除問題
刪除VPC或交換器時提示有依賴資源怎麼辦?
您可按照控制台提示,將依賴的資源刪除後,再刪除VPC或交換器。
您可以在VPC執行個體詳情頁面的“資源管理”,或交換器執行個體詳情頁面的“雲資源管理”,查看當前存在的資源。
VPC刪除時遇到彈性網卡無法刪除怎麼辦?
彈性網卡(ENI)通常是刪除VPC或交換器時最常見的殘留資源之一。
主網卡:主網卡是隨ECS執行個體建立的,其生命週期與ECS執行個體綁定,無法單獨解除綁定或刪除。您必須先釋放ECS執行個體,主網卡才會隨之刪除。
輔助網卡:如果是輔助網卡,需要先從ECS執行個體上解除綁定,才能進行刪除操作。
被其他雲端服務佔用與管理:某些雲端服務(如應用型負載平衡ALB、網路型負載平衡NLB、Container ServiceACK、Function ComputeFC等)會自動建立和管理ENI。您需要到對應雲端服務的控制台去刪除服務執行個體(例如刪除ACK叢集),由這些服務來自動清理其建立的ENI。
路由問題
雲企業網CEN/轉寄路由器TR是否會自動添加附加網段路由?
如果TR針對VPC串連開啟了路由學習功能,且VPC使用附加網段建立了交換器,則TR會自動學習到交換器對應附加網段的系統路由。
TR當前僅支援自動學習VPC的系統路由條目。針對自訂路由條目,您可以在VPC路由表中將條目手動發布到CEN,或手動在雲企業網中添加路由條目。
VPC有路由器嗎?
每個VPC有且只有一個路由器。每個路由器可維護多張路由表。
您可以在專用網路控制台-路由表頁面或通過DescribeRouteTables介面,查詢路由表所屬的路由器ID。
如何為VPC對等串連配置路由?
VPC對等串連建立並啟用後,預設情況下兩個VPC之間網路是不通的,因為它們不知道如何將去往對端VPC的流量發送到這個對等串連上。因此,您必須在兩端的路由表中,分別添加指向對等串連的路由。
操作步驟可參考:配置路由。
路由條目的目標網段應該填寫什嗎?
目標網段定義了這條路由規則適用於哪些目的IP地址的流量。
精確匹配:填寫您希望資料包發往的具體網路範圍。例如,要訪問對端VPC(
192.168.0.0/16),就填寫192.168.0.0/16。預設路由:
0.0.0.0/0代表所有IPv4地址。將0.0.0.0/0的流量指向NAT Gateway,可以實現VPC內無公網IP的ECS通過NAT Gateway訪問互連網。
配置對等串連時為什麼兩端都要配置路由?
網路通訊是雙向的,有去有回。配置路由時,不僅要考慮請求流量(去),還必須考慮響應流量(回)。如果僅一端配置了路由,但另一端沒有配置,則可能導致網路不通。
路由表目標網段能否寫交換器網段?
可以,但不推薦。
最佳實務:在為VPC對等串連、VPN網關等配置路由時,目標網段應該填寫對端網路的整個VPC網段,而不是對端某個具體的交換器網段,這樣可以簡化管理。除非您有明確的、精細化的存取控制需求。
網路營運與監控問題
VPC如何監控公網流量?
您可以通過VPC的流日誌功能或者網路智慧型服務-流量分析器功能,採集公網NAT Gateway、IPv4網關等公網組件的流量資訊,從而實現公網流量監控。詳情可參考流日誌、流量分析器。
如何查看VPC網路拓撲圖?
您可以使用網路智慧型服務-專用網路拓撲功能,自助產生VPC網路拓撲圖。
計費問題
VPC如何計費?
VPC收費功能:
VPC公測功能,當前公測期間免費使用:
IP地址管理(IPAM)
高可用虛擬IP(HaVip)
免費功能:
VPC與交換器、附加網段、預留網段
DNS主機名稱、DHCP選項集
路由表、首碼列表
共用VPC
ClassicLink、網關終端節點
IPv4網關、網路ACL
如果您在VPC中建立了雲產品資源,您需要為使用的雲產品資源付費。詳情可參考對應資源的計費文檔。
VPC對等串連是否收費?
同地區:在同一地區內,無論是同帳號還是跨帳號,建立和使用VPC對等串連都是完全免費的。
跨地區:跨地區使用VPC對等串連,統一由雲資料轉送CDT按出向流量收取流量傳輸費。
如何停止VPC對等串連的計費以節省成本?
同地區對等串連本身免費,刪除與否不影響費用。
對於跨地區對等串連,您需要刪除對等串連執行個體,方可停止相關流量費用。