无法从私有子网中的实例连接到Internet

时间:2019-03-06 14:27:46

标签: azure azure-virtual-network azure-vpn

我已经在Azure中建立了一个最小环境,在私有子网中有一个实例(Linux),并且有一个虚拟网络网关可以通过IPSec连接。我遵循了Azure docs中的说明,并且我的设置应该与示例中的设置相同。

我在Terraform中完成了所有这些工作,并且我使用StrongSwan作为VPN客户端来连接到网关。我可以毫无问题地通过strongSwan建立VPN连接。我已经在前端子网中创建了测试实例。为了通过SSH访问我的机器,我添加了另一个NSG规则以允许在端口22上进行访问。到目前为止,一切正常。

我的问题是,我无法从此计算机访问Internet。

到目前为止我检查过的内容:

  • DNS解析正常
  • Linux的默认路由设置为Azure网关地址(192.168.1.1)
  • NIC连接到NSG,NSG仅具有默认的出站流量规则(允许所有出站流量)
  • 没有自定义路由规则
  • 根据Azure docs SNAT / PAT应该在我的情况下自动应用。

我想念什么吗?

编辑:我忘了提到实例的NIC仅具有私有IP。

1 个答案:

答案 0 :(得分:1)

您可能无法从该Azure VM正确验证Internet连接。我与此question的情况相同。您可以尝试通过Azure计算机上的ping bing.com进行验证。似乎某些网站无法ping通,但是,您可以直接通过Web浏览器或curl访问这些网站以从Internet下载内容。

我已经在Windows本地桌面上使用一个Azure VNet建立了P2S VPN连接,该Azure VNet具有一个GatewaySubnet和一个VMsubnet。 VM子网中一台Windows VM和一台Ubuntu VM。两个VM都没有实例级公共IP。

通常,Azure VM在同一子网中本地具有系统默认网关。该网关有助于路由来自主网络接口的所有出站流量。如果设置了VPN网关,Azure将自动生成到P2S本地子网的路由。默认情况下,effective routes中还有一条通往Internet的默认路由0.0.0.0/0

enter image description here

我可以在Web资源管理器中访问google.combing.com,但是不能直接ping google.com,可以在Windows VM上ping bing.comenter image description here

在相同情况下,我也无法直接ping google.com,但可以在Linux VM上ping bing.com或卷曲www.google.com

enter image description here

希望这会有所帮助,如果您有任何疑问,请告诉我。