根据本实验刚开始所定义的假设,有些 VPC 之间需要禁止访问。例如:

根据当前网络配置,Non-Prod VPC1 同 Production VP1 之间还是可以访问。连通示意如下:

需要阻止非生产网络环境(Non-Prod VPC1 及 Non-Prod VPC2 ) 不能访问生产环境网络 (Production VPC1)

解决方法:当如果我们想阻止Non-Prod VPC1 同 Production VP1之间的访问,我们需要在 Transit gateway route table 中设置 Blackhole 规则。
在AWS管理控制台选择“Services”,然后选择“VPC”。
从左边的菜单中,向下滚动并选择Transit gateway route table。 点击链接 https://us-east-2.console.aws.amazon.com/vpc/home?region=us-east-2#TransitGatewayRouteTables:sort=transitGatewayRouteTableId
从主面板的表中选择Blue Route Table。让我们看看底部,然后点击Routes标签。

查看现有的路由,看到0.0.0.0/0路由,它将数据从 No-prod VPC 发送到Datacenter Service VPC。让我们设置路由进行阻止。
点击 [Create staticTable] 按钮。

10.16.0.0/13,勾选BlackHole旁边的复选框。这将阻止任何目的地为Non-Product vpc的流量。这是因为TGW查找最特定的匹配路由,而/13比/0路由更精确匹配。
点击 [Create static route] 按钮。 至此,已经设置 Production VPC1 到 Non-Prod VPC1 方向的访问。
选择 [Red Route Table]记录。
点击 Create Static Route 按钮。在“Create static Table”界面,对于CIDR输入 10.8.0.0/13 ,勾选BlackHole旁边的复选框。

点击 Close 按钮关闭。
至此,已经设置 Non-Prod VPC1 到 Production VPC1 方向的访问。
期望 从 Non-Prod VPC1 的 EC2 实例无法访问到 Production VPC1EC2 实例。
点击 https://us-east-2.console.aws.amazon.com/systems-manager/session-manager?region=us-east-2
选择左侧的 session manager, 继续选择 NP1-tgw-Server
点击 Start session 按钮。
在 session manager 的 console 中输入

ping 10.8.22.100
系统只输出
PING 10.8.22.100 (10.8.22.100) 56(84) bytes of data.
输入 ctrl+x 终止当前进程。出现如下输出
PING 10.8.22.100 (10.8.22.100) 56(84) bytes of data.
^C
--- 10.8.22.100 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2030ms
说明已经成功的阻止 Non-Prod VPC1 到 Production VPC1 的访问。