通过 GRE 隧道 实现 VPC 互通方案介绍-阿里云开发者社区

开发者社区> 云计算> 正文

通过 GRE 隧道 实现 VPC 互通方案介绍

简介: 背景 不同 VPC 之间或者是云下 IDC 机房和 VPC 网络之间互通,可以通过高速通道、自建 Site to Site VPC 和 GRE 隧道 3 种方式实现互通。本介绍如何使用 GRE 实现互通并对相关问题进行分析。

背景

不同 VPC 之间或者是云下 IDC 机房和 VPC 网络之间互通,可以通过高速通道、自建 Site to Site VPC 和 GRE 隧道 3 种方式实现互通。

本介绍如何使用 GRE 实现互通并对相关问题进行分析。

部署架构和环境介绍

部署图拓扑图:

杭州节点:

  • 网段:172.16.0.0/24
  • 部署 GRE ECS:172.16.0.1 绑定 EIP:121.196.208.175 系统:Centos6.5
  • 隧道互联地址:192.168.1.1
  • 测试主机:172.16.0.136 系统:Centos6.5

北京节点:

  • 网段:10.10.10.0/24
  • 部署 GRE ECS:10.10.10.1 绑定EIP:60.205.187.39 系统:Centos6.5
  • 隧道互联地址:192.168.1.2
  • 测试主机:10.10.10.118 系统:Centos6.5

部署步骤


一、杭州 VPC 部署


1、在虚拟路由器上添加去往 10.10.10.0/24 指向 ECS:172.16.0.1

2、在杭州 VPC 的虚拟路由器上增加去往互联地址的路由:



3、在 ECS:172.16.0.1 上加载 GRE 模块
[root@HZ-GW ~]# modprobe ip_gre
[root@HZ-GW ~]# lsmod |grep ip_gre
9575 0 ip_tunnel 12661 1 ip_gre

4、在 ECS:172.16.0.1 上创建隧道 tun1
[root@HZ-GW ~]# ip tunnel add tun1 mode gre remote 60.205.187.39 local 172.16.0.1

5、在 ECS:172.16.0.1 上激活隧道 tun1
[root@HZ-GW ~]# ip link set tun1 up

6、在 ECS:172.16.0.1 上为隧道配置互联地址
[root@HZ-GW ~]# ip addr add 192.168.1.1 peer 192.168.1.2 dev tun1

7、在 ECS:172.16.0.1 上指路由,将访问 10.10.10.0/24 丢到 tun1 上
[root@HZ-GW ~]# route add -net 10.10.10.0/24 dev tun1

8、在 ECS:172.16.0.1 上开启路由转发
[root@HZ-GW ~]# echo 1 > /proc/sys/net/ipv4/ip_forward


以上已经把 GER 在杭州的环境已经配置好



二、北京 VPC 部署

1、在虚拟路由器上添加去往 172.16.0.0/24 指向 ECS:10.10.10.1


2、在杭州 VPC 的虚拟路由器上增加去往互联地址的路由:


3、在 ECS:10.10.10.1上加载 GRE 模块
[root@BJ-GW ~]# modprobe ip_gre
[root@BJ-GW ~]# lsmod |grep ip_gre
9575 0ip_tunnel 12661 1 ip_gre

4、在 ECS:10.10.10.1 上创建隧道 tun1
[root@BJ-GW ~]# ip tunnel add tun1 mode gre remote 121.196.208.175 local 10.10.10.1

5、在 ECS:10.10.10.1 上激活隧道 tun1
[root@BJ-GW ~]# ip link set tun1 up

6、在 ECS:10.10.10.1 上为隧道配置互联地址
[root@BJ-GW ~]# ip addr add 192.168.1.2 peer 192.168.1.1 dev tun1

7、在 ECS:10.10.10.1上指路由,将访问 172.16.0.0/24 丢到 tun1上
[root@BJ-GW ~]# route add -net 172.16.0.0/24 dev tun1

8、在 ECS:10.10.10.1 上开启路由转发
[root@BJ-GW ~]# echo 1 > /proc/sys/net/ipv4/ip_forward


以上已经把 GER 在北京的环境已经配置好:

测试


1、在北京 VPC 下测试去往杭州 VPC

在 10.10.10.1上 ping 172.16.0.1 通

在 10.10.10.1上 ping 172.16.0.136 通

在 10.10.10.118 上 ping 172.16.0.136 通

在 10.10.10.118 上 ping 172.16.0.1 通

2、在杭州 VPC 下测试去往北京 VPC

在 172.16.0.1 上 ping 10.10.10.1 通

在 172.16.0.1 上 ping 10.10.10.118 通

在 172.16.0.136 上 ping 10.10.10.118 通

在 172.16.0.136 上 ping 10.10.10.1 通

总结


在搭建 GRE 隧道的时候,如果发现不通,要注意的地址是内核上要开启路由转发,相关路由要设置正确。如果检查配置没有问题还是不通,那么建议在各个节点上进行抓包。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

其他文章