🦄 2024 独立开发者训练营,一起创业!查看介绍 / 立即报名(剩余10个优惠名额) →

阿里云:专有网络 VPC

在创建阿里云服务之前,先去创建一个网络,然后在这个自己独有的网络上添加需要的阿里云产品,这就是阿里云的 VPC (Virtual Private Cloud),直译就是虚拟私有云,产品的中文名是 “专有网络” 。

创建阿里云产品的时候可以选择自己的专有网络,也可以是经典网络。如果选择经典网络,你的产品跟同一区域的其他人的产品会在同一个网络上。如果使用自己的专有网络,你的服务跟其他人购买的阿里云服务是完全隔离的,这样会更安全一些。而且你也可以更好的控制自己的专有网络,比如使用交换机划分不同的网段,配置路由等等。

创建一个使用专有网络的 ECS 云服务器,流程大概是这样的(视频课程制作中 ... ):

  1. 创建一个专有网络
  2. 在专有网络下添加一个交换机
  3. 创建云服务器,选择所属的专有网络与交换机

如果你的云服务器要面向互联网提供服务,你还需要一个公网的 IP 地址,这样你还需要:

  1. 申请弹性公网 IP
  2. 把申请的公网 IP 绑定到指定的云服务器上

创建专有网络

阿里云用户可以免费创建专有网络,在创建其它服务的时候可以使用这个网络,比如 ECS 云服务器,RDS 数据库等等。

  1. 登录到阿里云的控制台
  2. 打开 产品与服务,找到 专有网络 VPC
  3. 再打开 专有网络 标签,选择一个地域,然后 创建专有网络
  4. 配置一下要创建的专有网络,输入它的名字,描述,还有选择网络的网段

阿里云的专有网络支持三个网段,192.168.0.0/16,172.16.0.0/12,10.0.0.0/8。它们之间的区别就是不同的网段可用的 IP 地址数量不一样,随便选择一个就行,我选的是 10.0.0.0/8,因为它看起来更简洁,也好记。可以使用专有网络的交换机继续划分网段。属于这些网段的 IP 地址是内网的地址,也就是它们不能直接在互联网上访问到。

6383181F-C281-44BD-A893-DCC7CC101D2D

添加交换机

有了专有网络以后,需要再给它添加一些交换机,它们可以划分网段。在创建阿里云服务的时候,如果你要使用自己的专有网络,需要为服务选择专有网络,还有它下面的某个交换机。

  1. 找到自己创建的专有网络,管理一下
  2. 打开 交换机 标签,点击 创建交换机
  3. 配置一下交换机,输入名字,选择可用区,网段,还有描述

在创建交换机的时候需要选择可用区,比如我的专有网络是在 华南 1 这个地区,那在这个专有网络下面的交换机也要选择 华南 1 下面的某个更具体的可用区,比如 华南 1 可用区 A 或者 华南 1 可用区 B 。

交换机的网段要属于它所属的专有网络,比如我的专有网络的网段是 10.0.0.0/8,那我创建的这个交换机的网段必须要属于这个网段,比如 10.1.0.0/16,10.2.0.0/16,10.3.1.0/24 等等。我用的是 10.1.0.0/16 作用这个交换机的网段,这样创建的服务如果使用这个交换机的话,它的 IP 地址应该像这样 10.1.0.1,10.1.0.2 ...

159AB9C3-B496-468D-B5A4-630CA8694857

创建云服务器

现在,创建的阿里云服务就可以使用我们自己的专有网络了,比如去创建两台按量付费的 ECS 云服务器,地域要选择专有网络所在的地域。或者,可以直接找到专有网络的交换机,点击 创建实例,选择 ECS 云服务器,这样会自动给我们选择好要使用的专有网络,交换机,还有地域。

如果云服务器使用专有网络,默认它不带公网 IP ,只会包含一个专有网络的交换机分配给它的一个内网的 IP 地址。想让服务器有一个公网 IP ,可以在创建它的时候勾选一下 弹性公网 IP ,或者也可以单独再去创建一个弹性公网 IP ,然后把它绑定到指定的服务器上使用。

先不要勾选 弹性公网 IP ,创建两台云服务器。网络类型选择专有网络,这样会出现在服务器的地域下面创建的专有网络,还有属于这个网络的交换机。完成以后,这两台服务器应该只会有内网的 IP 地址,分别是 10.1.0.1,10.1.0.2,因为在创建这个服务器的时候,选择的交换机的网段是 10.1.0.0/16 。

打开云服务器 ECS 的管理界面,在服务器所在区域下面找到它们,然后重命名一下服务器,地址是 10.1.0.1 的服务器命名为 node1,地址是 10.1.0.2 的服务器命名为 node2 。

FD135275-D7E3-4968-B02F-2D933A3CFEAC

申请弹性公网 IP

属于专有网络的服务器不能访问互联网,也不能通过互联网访问到它们。给它们绑定弹性公网 IP,就可以访问互联网了。你可以只为其中的一台服务器绑定个公网 IP ,然后配置一下它,让其它的服务器通过这台有公网 IP 的服务器访问互联网。

  1. 打开 产品与服务,选择 弹性公网 IP
  2. 选择跟服务器相同的地域,点击 申请弹性公网 IP
  3. 配置一下公网带宽的类型与大小

完成以后,你会得到一个公网 IP,点击 绑定,再选择一下要绑定到的 ECS 实例。比如之前我们创建的 node1 这台服务器。这样 node1 就可以使用这个公网 IP 连接互联网了。比如你可以通过这个公网 IP 地址 ssh 到 node1 这台服务器。

A69FC4A4-0F2D-4C53-8D14-8F188B2FDD01

SNAT 共享上网

现在 node1 已经绑定了弹性公网 IP,它可以上网。node2 这台服务器还没有上网的能力,但是 node2 可以访问 node1,因为它们属于同一个专有网络。现在我想让 node2 通过 node1 去上网。可以配置一下 node1 的 SNAT,还有专有网络的路由来实现这个功能。

  1. 使用 node1 的公网 IP,ssh 到 node1
  2. 编辑 node1 的配置文件:vi /etc/sysctl.conf
  3. 添加代码:net.ipv4.ip_forward = 1
  4. 重启 node1 的 network:systemctl restart network
  5. 配置 node1 的 iptables:iptables -t nat -I POSTROUTING -s 10.1.0.0/16 -j SNAT --to-source 10.1.0.1

如果服务器用的是 CentOS 系统,还需要停止它们的 FirewallD 服务。

  1. 停止 FirewallD:systemctl disable firewalld && systemctl stop firewalld
  2. 在 node1 的上面再 ssh 到 node2
  3. 然后停止 node2 的 FirewallD:systemctl disable firewalld && systemctl stop firewalld

再去配置一下专有网络的路由。

  1. 找到创建的专有网络,打开 路由器 标签
  2. 点击 添加路由,然后配置一下
  3. 目录网段:0.0.0.0/0,下一跳类型:ECS 实例,下一跳 ECS 实例,选择 node1(绑定了公网 IP 的服务器 )

1afa2b1e144d09c9596b07be9f4c61709a6c2e00

测试一下 node2 的上网能力。可以执行一下 ping baidu.com ,如果能连通,说明 node2 已经可以通过 node1 上网了。

评论

这是不是就是SDN哈~

那请问,如果服务器主要用于网站建设只用,是不是没有必要使用专用网络呀???

我看说专用网络不会像经典网络那么容易被黑客攻击,但是给他加了公网IP,不就又变得和经典网络一样了吗?

嗯,需要一个公网 IP,不过这个 IP 只需要给一个服务器,你可以通过这个服务器去连接你的其它的在专有网络上的服务器。

明白了,你说的是在有多台服务器的情况下。还有就是我看专用网络还需要单独买弹性IP,费用上估计也要高一些吧

嗯,单独买弹性 IP 。1M 带宽应该不贵。

请问,如果阿里云服务器想要和一个公网IP的交换机组建一个内网 如何实现

抱歉啊,这个不清楚如何做。

微信好友

用微信扫描二维码,
加我好友。

微信公众号

用微信扫描二维码,
订阅宁皓网公众号。

240746680

用 QQ 扫描二维码,
加入宁皓网 QQ 群。

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点