引入
GRE VPN本质上利用了一个网络层封装技术GRE,并没有对VPN有过多规范,而且没有信息加密
协议A承载协议里面如果是IPv4协议的话协议号字段GRE的协议号是47号,
协议B载荷协议如果是IPv4,GRE类型号字段为0x0800
工作流程:
1.隧道起点路由查找
2.加封装
3.承载协议路由转发
4.中途转发
5.解封装
6.隧道终点查找
详细说明:
1.隧道起点路由查找
假设内网A的10.1.1.1要访问,内网B的10.1.3.1,开始先发送报文到RA查找路由表
发现出接口是一个虚拟的Tunnel接口
2.加封装
发现是隧道接口后,对数据包进行GRE封装,把源地址203.1.1.1和目的地址203.1.1.2封装
进新的IP头部
3.承载协议报文路由转发
承载协议报文按照自己正常的路由进行转发
4.中途转发
5.解封装
当数据报文到达目的地址时,拆开报文
一、发现IP目的地址是自己
二、检查IP头部发现协议号是47号
三、解开IP头检查GRE头部
四、检查私网地址,然后发给Tunnel接口转发
6.隧道终点路由查找:根据路由表RB转发
考虑因素:
1.连接私网的网络接口和Tunnel接口是同一个AS
2.公网接口属于公网AS
Tunnel:
静态配置:手工配置目的隧道接口IP
动态配置:把两个内网看从一个AS,然后在私网接口和Tunnel接口开启路由协议
如图,当中间链路断开的时候,内网边界的路由器接口未发送故障,但是RTA接口未故障
这时就会导致信息接收不到,这时应景产生的措施就是RTA每隔一段时间会发送Keep live报文
当三次没收到就会切换备份线路,但是如果是动态路由协议就会自动检测线路,就不用该报文