使用路由表
本节介绍如何使用路由表。
目录
确定子网的路由表
可通过在 Amazon VPC 控制台中查看子网的详细信息,判断该子网与哪个路由表关联。
确定子网的路由表
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Subnets(子网)。
-
选择子网。
-
选择 Route table(路由表)选项卡可查看路由表 ID 及其路由的相关信息。如需判断是否与主路由表存在关联以及是否为显式关联,请参见 确定显式关联的子网和/或网关。
确定显式关联的子网和/或网关
您可以确定哪些子网或网关与路由表显式关联以及存在关联的数量。
主路由表可以有显式和隐式子网关联。自定义路由表只有显式关联。
未与任何路由表建立显式关联的子网都与主路由表有隐式关联。您可以在子网与主路由表间建立显式关联。有关您可能会这样做的原因的示例,请参阅替换主路由表。
使用控制台确定显式关联的子网
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表)。
检查 Explicit subnet association(显式子网关联)列以确定显式关联的子网,检查 Main(主)列以确定是否为主路由表。
-
选择路由表并选择 Subnet associations(子网关联)选项卡。
-
Explicit subnet associations(显式子网关联)下的子网与路由表显式关联。Subnets without explicit associations(没有显式关联的子网)下的子网与路由表属于同一 VPC,但未与任何路由表关联,因此它们与该 VPC 的主路由表隐式关联。
使用控制台确定显式关联的网关
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表)。
-
选择路由表并选择 Edge associations(边缘关联)选项卡。
使用命令行描述一个或多个路由表并查看其关联
-
describe-route-tables (Amazon CLI)
-
Get-EC2RouteTable (Amazon Tools for Windows PowerShell)
创建自定义路由表
您可以使用 Amazon VPC 控制台为 VPC 创建自定义路由表。
使用控制台创建自定义路由表
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表)。
-
选择创建路由表。
-
(可选)对于 Name(名称),为您的路由表输入名称。
-
对于 VPC,选择您的 VPC。
-
(可选)若要添加标签,请选择 Add new tag(添加新标签),然后输入标签键和标签值。
-
选择创建路由表。
使用命令行创建自定义路由表
-
create-route-table (Amazon CLI)
-
New-EC2RouteTable (Amazon Tools for Windows PowerShell)
在路由表中添加和删除路由
您可在路由表中添加、删除和修改路由。您只能修改已添加的路由。
有关使用 Site-to-Site VPN 连接的静态路由的更多信息,请参阅《Amazon Site-to-Site VPN 用户指南》中的编辑 Site-to-Site VPN 连接的静态路由。
使用控制台更新路由表的路由
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
依次选择 Actions (操作)、Edit routes (编辑路由)。
-
要添加路由,请选择添加路由。对于目的地,输入目的地 CIDR 块、单个 IP 地址或前缀列表的 ID。
-
要修改路由,对于 Destination(目的地),请替换目的地 CIDR 块或单个 IP 地址。对于目标,请选择一个目标。
-
要删除路由,请选择 Remove(删除)。
-
选择 Save changes(保存更改)。
使用命令行更新路由表的路由
-
create-route (Amazon CLI)
-
replace-route (Amazon CLI)
-
delete-route (Amazon CLI)
-
New-EC2Route (Amazon Tools for Windows PowerShell)
-
Set-EC2Route (Amazon Tools for Windows PowerShell)
-
Remove-EC2Route (Amazon Tools for Windows PowerShell)
注意
如果您使用命令行工具或 API 添加路由,则目的地 CIDR 块将自动修改为其规范形式。例如,如果您为 CIDR 块指定 100.68.0.18/18
,我们将创建一个路径,其目标 CIDR 块为 100.68.0.0/18
。
启用或禁用路由传播
路由传播允许虚拟私有网关自动将路由传播到路由表。这意味着 VPN 路由无需手动添加或删除。
要完成此过程,您必须具有虚拟私有网关。
有关更多信息,请参阅《Site-to-Site VPN 用户指南》中的 Site-to-Site VPN 路由选项。
使用控制台启用路由传播
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
依次选择 Actions (操作) 和 Edit route propagation (编辑路由传播)。
选中虚拟私有网关旁边的 Enable (启用) 复选框,然后选择 Save (保存)。
使用命令行启用路由传播
-
enable-vgw-route-propagation (Amazon CLI)
-
Enable-EC2VgwRoutePropagation (Amazon Tools for Windows PowerShell)
使用控制台禁用路由传播
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 在导航窗格中,选择 Route tables(路由表),然后选择路由表。
依次选择 Actions (操作) 和 Edit route propagation (编辑路由传播)。
-
清除虚拟专用网关旁边的 Enable(启用)复选框,然后选择 Save(保存)。
使用命令行禁用路由传播
-
disable-vgw-route-propagation (Amazon CLI)
-
Disable-EC2VgwRoutePropagation (Amazon Tools for Windows PowerShell)
将子网与路由表关联起来
若要对特定子网应用路由表路由,您必须将路由表与子网关联。一个路由表可以与多个子网关联。但是,子网一次只能与一个路由表关联。任何未与路由表显式关联的子网都默认与主路由表隐式关联。
使用控制台将路由表与子网关联
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
在 Subnet associations (子网关联) 选项卡上,选择 Edit subnet associations (编辑子网关联)。
-
选中要与路由表关联的子网的复选框。
-
选择 Save associations (保存关联)。
使用命令行将子网与路由表关联
-
associate-route-table (Amazon CLI)
-
Register-EC2RouteTable (Amazon Tools for Windows PowerShell)
更改子网的路由表
更改子网的路由表关联
当您更改路由表时,将删除子网中的现有连接,除非新路由表中包含相同流量到同一目标的路由。
使用控制台更改子网路由表关联
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Subnets(子网),然后选择子网。
-
从 Route table(路由表)选项卡,选择 Edit route table association(编辑路由表关联)。
-
对于 Route table ID(路由表 ID),选择新的路由表。
-
选择 Save(保存)。
使用命令行更改与子网关联的路由表
-
replace-route-table-association (Amazon CLI)
-
Set-EC2RouteTableAssociation (Amazon Tools for Windows PowerShell)
解除子网与路由表的关联
您可以解除子网与路由表的关联。在将子网与其他路由表关联前,它与主路由表是隐式关联的。
使用控制台取消子网与路由表的关联
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
从 Subnet associations(子网关联)选项卡,选择 Edit subnet associations(编辑子网关联)。
-
清除子网的复选框。
-
选择 Save associations (保存关联)。
使用命令行取消子网与路由表的关联
-
disassociate-route-table (Amazon CLI)
-
Unregister-EC2RouteTable (Amazon Tools for Windows PowerShell)
替换主路由表
您也可以更改作为 VPC 中主路由表的路由表。
使用控制台替换主路由表
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择新的主路由表。
-
选择 Actions(操作)、Set main route table(设置主路由表)。
-
提示进行确认时,输入
set
,然后选择 OK(确认)。
使用命令行替换主路由表
-
replace-route-table-association (Amazon CLI)
-
Set-EC2RouteTableAssociation (Amazon Tools for Windows PowerShell)
以下步骤描述如何删除子网与主路由表之间的显式关联。结果是在子网和主路由之间生成隐式关联。这个步骤与解除任何子网与任何路由表的步骤相同。
删除与主路由表的显式关联
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
从 Subnet associations(子网关联)选项卡,选择 Edit subnet associations(编辑子网关联)。
-
清除子网的复选框。
-
选择 Save associations (保存关联)。
关联网关与路由表
您可以将互联网网关或虚拟私有网关与路由表关联。有关更多信息,请参阅网关路由表。
使用控制台将网关与路由表关联
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
从 Edge associations(边缘关联)选项卡,选择 Edit edge associations(编辑边缘关联)。
-
选中网关的复选框。
-
选择 Save changes(保存更改)。
使用 Amazon CLI 将网关与路由表关联
使用 associate-route-table 命令。以下示例将互联网网关 igw-11aa22bb33cc44dd1
与路由表 rtb-01234567890123456
关联。
aws ec2 associate-route-table --route-table-id rtb-01234567890123456 --gateway-id igw-11aa22bb33cc44dd1
取消网关与路由表的关联
您可以取消互联网网关或虚拟私有网关与路由表的关联。
使用控制台将网关与路由表关联
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
从 Edge associations(边缘关联)选项卡,选择 Edit edge associations(编辑边缘关联)。
-
清除网关的复选框。
-
选择 Save changes(保存更改)。
使用命令行取消网关与路由表的关联
-
disassociate-route-table (Amazon CLI)
-
Unregister-EC2RouteTable (Amazon Tools for Windows PowerShell)
替换或还原本地路由的目标
您可以更改默认本地路由的目标。如果您替换本地路由的目标,以后可以将其恢复为默认 local
目标。如果您的 VPC 有多个 CIDR 块,则路由表会有多个本地路由,每个 CIDR 块一个。您可以根据需要替换或恢复各个本地路由的目标。
使用控制台更新本地路由
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
从 Routes(路由)选项卡,选择 Edit routes(编辑路由)。
-
对于本地路由,清除 Target(目标),然后选择一个新目标。
-
选择 Save changes(保存更改)。
使用控制台还原本地路由的目标
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
依次选择 Actions (操作)、Edit routes (编辑路由)。
-
对于路由,清除 Target(目标),然后选择 local(本地)。
-
选择 Save changes(保存更改)。
使用 Amazon CLI 替换本地路由的目标
使用 replace-route 命令。以下示例将本地路由的目标替换为 eni-11223344556677889
。
aws ec2 replace-route --route-table-id rtb-01234567890123456 --destination-cidr-block 10.0.0.0/16 --network-interface-id eni-11223344556677889
使用 Amazon CLI 还原本地路由的目标
以下示例还原路由表 rtb-01234567890123456
的本地目标
aws ec2 replace-route --route-table-id rtb-01234567890123456 --destination-cidr-block 10.0.0.0/16 --local-target
删除路由表
您只可以删除未与任何子网关联的路由表。您无法删除主路由表。
使用控制台删除路由表
-
通过以下网址打开 Amazon VPC 控制台:https://console.aws.amazon.com/vpc/
。 -
在导航窗格中,选择 Route tables(路由表),然后选择路由表。
-
依次选择 Actions (操作) 和 Delete route table (删除路由表)。
-
提示进行确认时,输入
delete
,然后选择 Delete(删除)。
使用命令行删除路由表
-
delete-route-table (Amazon CLI)
-
Remove-EC2RouteTable (Amazon Tools for Windows PowerShell)