4.6. 管理虚拟路由器

虚拟路由器在虚拟网络和网络网络或其他虚拟网络之间提供 L3 服务,例如路由和源网络地址转换 (SNAT):

  • 虚拟网络和物理网络之间的虚拟路由器为连接至该虚拟网络的 VM 提供对公共网络(例如 Internet)的访问;

  • 不同虚拟网络之间的虚拟路由器为连接至这些虚拟网络的 VM 提供网络通信。

虚拟路由器具有两种类型的端口:

  • 连接至物理网络的外部网关。

  • 连接至虚拟网络的内部端口。

注解

路由器只能连接已启用 IP 管理的网络。

要创建虚拟路由器,请执行以下操作:

  1. Compute > Networks > Networks 选项卡上,确保要连接至路由器的计算网络已指定网关。

  2. 导航至 Compute > Routers 选项卡,然后单击添加路由器

  3. 添加路由器窗口中:

    1. 指定路由器名称。

    2. 网络下拉菜单,选择一个物理网络,通过该公用网络的外部网关来提供外部访问。新外部网关将从选定的物理网络中选择一个未使用的 IP 地址。

    3. 添加内部接口部分中,选择一个或多个要通过内部接口连接至路由器的虚拟网络。默认情况下,新内部接口将尝试使用选定虚拟网络的网关 IP 地址。

    4. (可选)选中或取消选中 SNAT 复选框,以相应地在路由器的外部网关上启用或禁用 SNAT。在 SNAT 已启用的情况下,路由器会将 VM 专用 IP 地址替换为其外部网关的公共 IP 地址。

    ../_images/virtual_routers1_ac.png
  4. 单击创建

要编辑路由器名称,请单击它旁边的省略号图标,然后单击重命名

要删除虚拟路由器,请单击它旁边的省略号图标,然后单击删除。要一次删除多个虚拟路由器,请选择它们,然后单击删除。在删除某个虚拟路由器之前,请确保没有浮动 IP 地址与该虚拟路由器所连接至的任何网络相关联。

4.6.1. 管理路由器接口

要添加外部路由器接口,请执行以下操作:

  1. 如果您已有外部网关,请先删除现有外部网关。

  2. 路由器屏幕上,单击相应路由器名称以打开其接口列表。

  3. 在工具栏上单击添加,如果没有显示接口,则单击添加接口

  4. 添加接口窗口中,请执行以下操作:

    1. 选择外部网关

    2. 网络下拉菜单,选择一个要连接至路由器的物理网络。新接口将从选定的物理网络中选择一个未使用的 IP 地址。还可以提供选定物理网络中的一个指定 IP 地址,以在 IP 地址字段中指派给接口。

    3. (可选)选中或取消选中 SNAT 复选框,以相应地在路由器的外部网关上启用或禁用 SNAT。在 SNAT 已启用的情况下,路由器会将 VM 专用 IP 地址替换为其外部网关的公共 IP 地址。

    ../_images/virtual_routers2_ac.png
  5. 单击添加

要编辑外部网关参数,请单击它旁边的省略号图标,然后单击编辑。在编辑接口窗口中,可以更改外部网关 IP 地址以及启用或禁用其上的 SNAT。要保存所做的更改,请单击保存

要添加内部路由器接口,请执行以下操作:

  1. 路由器屏幕上,单击相应路由器名称以打开其接口列表。

  2. 单击添加

  3. 添加接口窗口中,从网络下拉菜单选择一个要连接至路由器的网络。默认情况下,新接口将尝试使用选定虚拟网络的网关 IP 地址。如果该地址在使用中,请指定选定虚拟网络中一个未使用的 IP 地址,以在 IP 地址字段中指派给接口。

    ../_images/virtual_routers3_ac.png
  4. 单击添加

要删除路由器接口,请单击它旁边的省略号图标,然后单击删除。要一次删除多个接口,请选择它们,然后单击删除

4.6.2. 管理静态路由

还可以通过手动在路由器的路由表中添加条目,来配置路由器的静态路由。例如,如果不需要在两个虚拟网络之间进行相互连接,并且只希望一个虚拟网络可从另一个虚拟网络访问,这可能会很有用。

考虑以下示例:

  • 虚拟机 vm1 通过 IP 地址为 192.168.128.10 的网络接口连接至虚拟网络 private1 (192.168.128.0/24)、

  • 虚拟机 vm2 通过 IP 地址为 192.168.30.10 的网络接口连接至虚拟网络 private2 (192.168.30.0/24)、

  • 路由器 router1 通过 IP 地址为 10.94.129.73 的外部网关将网络 private1 连接至物理网络、

  • 路由器 router2 通过 IP 地址为 10.94.129.74 的外部网关将网络 private2 连接至物理网络。

为了能够从 vm1 访问 vm2,需要为 router1 添加静态路由:指定 private2 的CIDR(即 192.168.30.0/24)作为目标子网,指定 router2 的外部网关 IP 地址(即 10.94.129.74)作为下一跳 IP 地址。在此例中,当 192.168.30.10 的 IP 包到达 router1 时,它将转发给 router2,然后转发给 vm2

要为路由器创建静态路由,请执行以下操作:

  1. 路由器屏幕上,单击路由器名称。打开静态路由选项卡,并单击右侧窗格上的添加。如果没有显示路由,单击添加静态路由

    ../_images/ss_routers1_ac.png
  2. 添加静态路由窗口中,以 CIDR 表示法指定目标子网范围和掩码并指定下一跳的 IP 地址。下一跳的 IP 地址必须属于路由器连接至的网络之一。

    ../_images/virtual_routers4_ac.png
  3. 单击添加

要编辑静态路由,请单击它旁边的省略号图标,然后单击编辑。在编辑静态路由窗口中,更改所需的参数,然后单击保存

要删除静态路由,请单击它旁边的省略号图标,然后单击删除。要一次删除多个路由,请选择它们,然后单击删除