该内容只是以默写总结一些知识点而已,顺便分享出来和方便翻阅。无他。有错误的地方麻烦批评指正。十分感谢。
GRE封装和解封装的过程:
1、设备从连接私网的接口收到报文后,根据报文的目的地址,查找出接口,如果发现出接口是隧道接口,则交给隧道模块进行处理。
2、隧道模块对收到的报文进行封装,添加GRE报文头。
3、然后,设备给报文添加传输协议报文头,即IP报文头。IP报文头的源地址就是隧道的源地址,目的地址就是隧道的目的地址。
4、最后,设备根据新添加的IP报文头目的地址查找出接口,并发送报文。
5、接收端设备收到报文后根据IP报文头的协议类型如果为47,则是gre协议,于是出接口将报文发送给GRE模块处理。GRE模块去掉IP报文头和gre报文头,并根据gre报文头的协议类型字段,发现该报文的乘客协议是私网中运行的协议,于是将报文发送给该协议处理。
总而言之就是本端设备对从私网收到的报文进行GRE报文头添加,然后再在gre报文头前面添加新的IP报文头。这个新的IP报文头的源目的地址是隧道的源目的地址。接收端设备收到报文后就去掉IP报文头和gre报文头,将剩下的部分发送给私网进行通信。