梅利333

从无到有,自有至精

导航

GRE tunnel(通用路由封装)

GRE tunnel通用路由封闭协议

Ip in ip

啥意思,就是将一个IP的包,再次封闭在一个IP包里,乱吗?

别乱,看看倒底是怎么回事儿,

 

其实这东西就是一个VPN的原型,啥叫VPN?用于连接两个或多个站点的技术,实现双向局域网通信,当然VPN的种类还是蛮多的呢~

后面面学习的时候要一一见到,ipsec, ssl dm easyvpn Mpls...

 

大概意思明白了,为什么还要把IP再将封装到IP中呢?

其实这一点也很好理解,首先,私有地址是无法在公网上跑的,这毋庸置疑,那如何实现两个节点之间的互联呢?也许你会想到BGP? 别闹,啥企业上来就玩儿BGP啊,不要钱啊? 

当需要实现两个节点互通,且不想投入过多时,这个时候就要考虑VPN,(纯个人理解)而GREtunnel,就是VPN的原型,只不过是GRE是裸奔的,没有加密, 

其意思就是将局域网的IP,封闭到GREtunnel隧道里,到达对端以后再将外层的封装拆除,实现“和内网访问一样”的效果

 

看个实例吧 ,R1(内网192.168.1.0/24) R3(内网172.16.1.0/24)外网为12.0.0.0/24 23.0.0.0

 

 

 

R1,R3分别下联着两个分支,R2仿internet,

如何实现两个节点之点的互通呢?使用tunnel

 

现条件:

NAT是肯定要有的,对吧,企业网关出去肯定要转成公网IP的,

然后就是tunnel的配置了,

 

1 先要建立 tunnl 口,配置ip地址,这里的IP可以随意配置,因为只是源目的关系,其它人并不知道

2 指定隧道源和目的,建立隧道,

3 为隧道注入路由,(对端内网网段)

就这样实现互通了

 

NAT的部份咱们直接跳过了啊~

老生长谈了

 

直接上GRE部份

R1(config)#inte tunnel 1     //建立 tunnel 编号1
R1(config-if)#ip add 100.1.1.1 255.255.255.0     //配置一个IP地址,
R1(config-if)#tunnel source f0/0     //隧道源的IP(接口)
R1(config-if)#tunnel destination 23.0.0.3   //隧道目的IP
R1(config)#ip route 172.16.1.0 255.255.255.0 tunnel 1   //和对端做静态,从tunnel 口出去


R3(config)#inter tunnel 1
R3(config-if)#ip add 100.1.1.2 255.255.255.0
R3(config-if)#tunnel source f0/0
R3(config-if)#tunnel destination 12.0.0.1
R3(config)#ip route 192.168.1.0 255.255.255.0 tun 1

至此GRE完成,

先来看看两边的局域网能否通信~

 

 

 通是可以通的,但是它是怎么走的呢

Trace一下

 

 

 先到达自己的网关,

然后到达下一跳为tunnel口的对端 IP

再到对端 局域网内。

等于是数据又经过了一次封装,

GRE的封装过程

 

 

 可以直接从一个包来分析一下

由下至上,ICMP协议,ping包,

          Ipv4 sip 172.16.1.10 dip 192.168.1.10 (pc2pingpc1)

          GRE

          Ipv4 sip 23.0.0.3 , dip 12.0.0.1

 

里层数据,IPV4,源172.16.1.10 目的ip 192.168.1.10

传到路由器时,查看路由,需要从tunnel口出去,

由进行GRE的封装,

然后再加上新的IP,这里的新IP头部就是我们配置的 tunnel source 以及tunnel destination

 

 IPV4 源23.0.0.3  目的IP 12.0.0.1 

 

这时不禁会想到一个问题

我们配置了tunnel ip地址,好像在抓包中也没有看到啊~封装在哪里了呢?

其实配置tunnel IP主要目的有两点,

1,使静态路由生效

2,做为数据转发的下一跳

 

 

 

 

 最后,请问,tunnel ip 两端可以不一样吗?

R3(config)#inter tunnel 1
R3(config-if)#ip add 200.3.3.3 255.255.255.0

可以看到,就算是两端的tunnel ip 不一样,也没有问题

 

 因为这里起到决定因素的不是这个IP

而是tunnel source 以及tunnel destination 的指定。

 

 

----------------------------------------------

CCIE成长之路 --- 梅利

 

posted on 2020-07-20 22:18  梅利333  阅读(4765)  评论(0编辑  收藏  举报