為什麼我的 Amazon EC2 執行個體無法使用網際網路閘道連線至網際網路?

1 分的閱讀內容
0

我在公有子網路中的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體具有公有 IP 地址或網際網路閘道,但無法存取網際網路。

簡短描述

若要疑難排解 Amazon EC2 無法存取網際網路的原因,請執行下列動作:

  • 確認 EC2 執行個體符合所有先決條件。
  • 確認執行個體具有公用 IP 位址。
  • 確認防火牆未封鎖存取。

解決方法

確認執行個體符合所有先決條件

執行個體必須符合下列條件:

確認執行個體具有公用 IP 位址

如果公用子網路中的執行個體沒有公用 IP 位址,則該執行個體無法在其所在的虛擬私有雲端(VPC)外部存取。即使執行個體具有網際網路閘道,也是如此。

若要允許執行個體連線至網際網路,請先配置彈性 IP 位址,然後將此彈性 IP 位址與執行個體建立關聯

確認防火牆未封鎖存取

如果執行個體符合上述條件且網際網路連線問題持續存在,則您可能會在作業系統中執行本機防火牆。最佳做法是使用安全群組,而不是在作業系統中安裝本機防火牆。請確定停用本機防火牆不會影響您的工作負載。

# For Uncomplicated Firewall
sudo ufw disable

# For firewalld
sudo systemctl disable firewalld --now

如果您必須使用防火牆,則網際網路連線問題通常與 OUTPUT 鏈有關。您可以執行下列命令來允許傳出流量:

sudo iptables -P OUTPUT ACCEPT
sudo iptables -I OUTPUT 1 -j ACCEPT

Windows Server:

對於 Windows 伺服器預設防火牆,請執行下列命令:

netsh advfirewall firewall show rule name=all

如果上述命令指出封鎖的流量,請移除舊規則或新增允許該特定連接埠流量的新規則。如需詳細資訊,請參閱 Microsoft 文件瞭解具有進階安全規則的 Windows 防火牆


相關資訊

使用網際網路閘道連線至網際網路

使用安全群組控制資源的流量

為什麼私有子網路中的 Amazon EC2 執行個體無法使用 NAT 閘道連線至網際網路?

AWS 官方
AWS 官方已更新 2 年前