GRE隧道技术介绍
- 格式:pdf
- 大小:311.64 KB
- 文档页数:13
GRE 隧道GRE 隧道可以实现多个私有站点通过公有网络进行数据传送。
隧道有两个端点,流量从隧道一端流入,从遂道另一端流出。
在遂道里,路由器使用新的外层头部来转发报文。
GRP IP头部 GRE IP头部 TCP 数据(隧道IP)100.1.1.1 110.1.1.2 GRE 192.168.1.2 192.168.2.2 用户数据1. 承载IP组播流量。
2. 在IP网络中承载非IP包,穿越IP核心网络。
3. 支持路由协议穿越连接,RIP、OSPF 、EIGRP。
步骤:1.确保两个隧道端点之间的基本连通性。
2.配置隧道。
隧道源(本地路由器的接口或IP地址)隧道目的地(远程路由器的IP地址)隧道IP ( 可以用私有IP3. 启用路由协议。
实验:基本的GRE配置172.16.1.1 100.1.1.1 .2 200.1.1.1 .2 172.16.2.1R1 ------------------- R2 ---------------------- R3F0/1 S1/0 S1/0 S1/1 S1/1 F0/1R1(config # int tunnel 0# ip add 172.16.3.1 255.255.255.0# tunnel source 100.1.1.1# tunnel destination 200.1.1.2tunnel mode greR1(config # router rip# net 172.16.0.0验证 :# sh ip route 验证是否学到路由# ping 172.16.2.1 source 172.16.1.1# trace 172.16.2.1 source 172.16.1.1 查看经过的路径R1#debug ip packetDec 22 07:07:46.063: IP: s=172.16.1.1 (local, d=172.16.2.1 (Tunnel0, len 100, sending*Dec 22 07:07:46.063: IP: s=100.1.1.1 (Tunnel0, d=110.1.1.2 (Serial0/0/0, len 124, sending *Dec 22 07:07:46.135: IP: tableid=0, s=172.16.2.1 (Tunnel0, d=172.16.1.1 (FastEthernet0/1, routed via RIB*Dec 22 07:07:46.135: IP: s=172.16.2.1 (Tunnel0, d=172.16.1.1, len 100, rcvd 4*Dec 22 07:07:46.135: IP: tableid=0, s=172.16.1.1 (local, d=172.16.2.1 (Tunnel0, routed via FIB。
IPv6-over-IPv4 GRE隧道技术隧道机制隧道技术是一种通过互联网络基础设施在网络之间传递数据的方式。
使用隧道传递的数据可以是不同协议的数据帧或包,隧道协议将这些其它协议的数据帧或包重新封装在新的包头中发送,被封装的数据包在隧道的两个端点之间通过公共互联网络进行路由,一旦到达网络终点,数据将被解包并转发到最终目的地。
整个传递过程中,被封装的数据包在公共互联网络上传递时所经过的逻辑路径称为隧道。
简言之,隧道技术是指包括数据封装,传输和解包在内的全过程。
IPv6是新一代Internet通信协议,具有许多的功能特色:全新的表头格式、较大的地址空间、有效及阶层化的地址与路由架构、内建的安全性、与邻近节点相互作用的新型通信协议Neighbor Discovery Protocol for IPv6、可扩展性等。
作为网络管理者,有必要加强对IPv6的了解,为以后IPv4的全面升级做好准备。
I Pv6隧道是将IPv6报文封装在IPv4报文中,让IPv6数据包穿过IPv4网络进行通信。
对于采用隧道技术的设备来说,在隧道的入口处,将IPv6的数据报封装进IPv4,IPv4报文的源地址和目的地址分别是隧道入口和隧道出口的IPv4地址;在隧道的出口处,再将IPv6报文取出转发到目的节点。
隧道技术只要求在隧道的入口和出口处进行修改,对其他部分没有要求,容易实现。
但是,隧道技术不能实现IPv4主机与IPv6主机的直接通信。
IPv6-over-IPv4 GRE隧道技术使用标准的GRE隧道技术,可在IPv4的GRE隧道上承载IPv6数据报文。
GRE隧道是两点之间的连路,每条连路都是一条单独的隧道。
GRE隧道把IPv6作为乘客协议,将GRE 作为承载协议。
所配置的IPv6地址是在Tunnel接口上配置的,而所配置的IPv4地址是Tunnel 的源地址和目的地址(隧道的起点和终点)。
GRE隧道主要用于两个边缘路由器或终端系统与边缘路由器之间定期安全通信的稳定连接。
二三层隧道协议
一直知道L2TP是第二层隧道协议,GRE是第三层隧道协议,可是一直不是太明白,今天总结一下自己理解的。
L2TP是用于三层网络上承载二层协议报文的隧道协议,是用于在三层网络上跑PPP 的。
GRE是通用路由封装协议,内部能封装二层,三层,MPLS……它能封装的报文类型很多,但一般都用于封装三层报文,所以也有叫三层隧道协议的,但这个说法也不严谨。
例如:GRE能封装MPLS,ISIS等,这些都不是三层报文。
Gre over ipsec就是通过GRE将广播,组播,非IP报文通过GRE封装变成单播IP报文,然后再用IPSEC封装加密,IPSEC是个标准的三层隧道协议,它只能承载单播IP报文。
Cisco路由器配置GRE隧道本文档介绍了如何在Cisco路由器上配置GRE(通用路由封装)隧道。
通过GRE隧道,可以在不同的网络之间建立一条虚拟通道,实现数据的封装和传输。
以下是配置GRE隧道的详细步骤:1.确认网络拓扑在开始配置GRE隧道之前,请确保你了解网络的拓扑结构,并且已经正确连接了相关的设备。
2.配置隧道源和目的地质为GRE隧道指定源和目的地质。
例如,假设我们的隧道源地质是192.16①,隧道目的地质是192.16①.3.创建隧道接口在路由器上创建一个GRE隧道接口,并将其与源和目的地质关联。
例如,假设我们在路由器上创建了隧道接口 Tunnel0,并将其源地质设置为 192.16①,目的地质设置为 192.16①.4.配置隧道模式在隧道接口上配置隧道模式。
常见的隧道模式包括点对点模式和多点模式。
根据你的需求选择合适的隧道模式。
5.配置隧道传输协议为GRE隧道选择传输协议。
GRE隧道可以使用TCP或UDP进行传输。
根据你的需求选择合适的传输协议。
6.配置隧道加密如果需要对GRE隧道进行加密,可以配置相关的加密机制,如IPSec。
根据你的需求选择合适的加密方式。
7.配置路由信息在路由器上配置隧道的路由信息,确保数据能够正常传输到隧道的目的地。
8.验证GRE隧道配置在配置完成后,使用ping命令或其他工具验证GRE隧道的连接状态和数据传输情况。
附件:●附件1:GRE隧道配置示例文件法律名词及注释:1.GRE(通用路由封装):一种用于封装和传输IP数据包的协议。
2.隧道:一种虚拟通道,通过将数据包封装在其他协议中进行传输。
3.IP地质:用于在网络中标识和定位设备的唯一地质。
4.TCP(传输控制协议):一个面向连接的协议,用于可靠地传输数据。
5.UDP(用户数据报协议):一个无连接的协议,用于不保证数据传输可靠性的应用。
GREtunnel与ipsec tunnelGRE: Generic Routing EncapsulationGRE tunnel是⽤于解决IPv6⽅案的⼀种,GRE通过通过重封装实现不同协议的通信。
但是GRE没有安全加密的特性,需要ipsec的帮助。
iipsec vpn的tunnel mode与gre over ipsec的区别psec tunnel mode是通过ipsec的加密技术对数据进⾏的隧道⽅式再封装,是在原有的ip数据包外⾯再加⼀层封装。
⽽后者是ipsec对已经经过gre封装的数据进⾏的传输模式的封装,通过修改现有ip数据包头部⽽⾮前者的再封装模式。
ipsec隧道不⽀持传输IPSEC Over GRE即IPSEC在⾥,GRE在外。
先把需要加密的数据包封装成IPSEC包,然后再扔到GRE隧道⾥。
作法是把IPSEC的加密图作⽤在Tunnel⼝上的,即在Tunnel⼝上监控(访问控制列表监控本地ip⽹段-源i和远端ip⽹段-⽬的地),是否有需要加密的数据流,有则先加密封装为IPSEC包,然后封装成GRE包进⼊隧道(这⾥显⽽易见的是,GRE隧道始终⽆论如何都是存在的,即GRE隧道的建⽴过程并没有被加密),同时,未在访问控制列表⾥的数据流将以不加密的状态直接⾛GRE隧道,即存在有些数据可能被不安全地传递的状况。
⽽GRE Over IPSEC是指,先把数据分装成GRE包,然后再分装成IPSEC包。
做法是在物理接⼝上监控,是否有需要加密的GRE流量(访问控制列表针对GRE两端的设备ip),所有的这两个端点的GRE数据流将被加密分装为IPSEC包再进⾏传递,这样保证的是所有的数据包都会被加密,包括隧道的建⽴和路由的建⽴和传递。
使⽤GRE的主要原因是VPN IPSec的局限性-不⽀持组播 (which is used by DHCP, DNS etc)-不⽀持除了IP以外的Routed ProtocolIPSec可以⽤三个词来形容-Powerful-Flexible-Limited-并⾮所有的VPN都像IPSec⼀样强⼤,早期的隧道技术主要是为了通过重封装实现让数据在不同的媒体上传递-任何不同的可路由协议⽣成的数据包都可以在GRE隧道上传递(IP/IPX/AppleTalk)-本质是插⼊⼀个包头,类似Dot1Q-对GRE⽽⾔,被他封装的是第四层的包,封装后有了新的IP包头,所以它本⾝是第三层的,但其实⾥⾯有两个IP包头-GRE包头只有4个字节,前两个是扩展包头,后两个字节表⽰payload类型是IP还是IPX等-默认情况下:No confidentiality, No authentication, No data integerity assurance, No compression-可以通过配置命令实现⼀个较为初级的⽤户认证-使⽤Keepalive来检测GRE隧道的状态-Optional Header包含:checksum,Key,Seq number,offset。
⽹络隧道技术与⽹络叠加模式VLAN、VxLAN、GRE什么是叠加⽹络1.⼀个数据包(或帧)封装在另⼀个数据包内;被封装的包转发到隧道端点后再被拆装。
2.叠加⽹络就是使⽤这种所谓“包内之包”的技术安全地将⼀个⽹络隐藏在另⼀个⽹络中,然后将⽹络区段进⾏迁移。
⼀、VLAN介绍VLAN,是英⽂Virtual Local Area Network的缩写,中⽂名为"虚拟局域⽹", VLAN是⼀种将局域⽹(LAN)设备从逻辑上划分(注意,不是从物理上划分)成⼀个个⽹段(或者说是更⼩的局域⽹LAN),从⽽实现虚拟⼯作组(单元)的数据交换技术。
VLAN这⼀新兴技术主要应⽤于交换机和路由器中,但⽬前主流应⽤还是在交换机之中。
不过不是所有交换机都具有此功能,只有三层以上交换机才具有此功能,这⼀点可以查看相应交换机的说明书即可得知。
VLAN的好处主要有三个:(1)端⼝的分隔。
即便在同⼀个交换机上,处于不同VLAN的端⼝也是不能通信的。
这样⼀个物理的交换机可以当作多个逻辑的交换机使⽤。
(2)⽹络的安全。
不同VLAN不能直接通信,杜绝了⼴播信息的不安全性。
(3)灵活的管理。
更改⽤户所属的⽹络不必换端⼝和连线,只更改软件配置就可以了。
⼆、VXLAN介绍什么是VXLANVXLAN全称Virtual eXtensible LAN,是⼀种覆盖⽹络技术或隧道技术。
VXLAN将虚拟机发出的数据包封装在UDP中,并使⽤物理⽹络的IP/MAC作为outer-header进⾏封装,然后在物理IP⽹上传输,到达⽬的地后由隧道终结点解封并将数据发送给⽬标虚拟机。
为什么需要Vxlan1. vlan的数量限制4096个vlan远不能满⾜⼤规模云计算数据中⼼的需求2. 物理⽹络基础设施的限制基于IP⼦⽹的区域划分限制了需要⼆层⽹络连通性的应⽤负载的部署3. TOR交换机MAC表耗尽虚拟化以及东西向流量导致更多的MAC表项4. 多租户场景IP地址重叠?什么是隧道技术隧道技术(Tunneling)是⼀种通过使⽤互联⽹络的基础设施在⽹络之间传递数据的⽅式。
14 IPSec上的GRE隧道GRE(Generic Routing Encapsulation,通用路由封装)隧道已经广泛应用了很长一段时间,GRE首先由Cisco公司提出,目的是提供IP网络承载其他被路由协议。
某些网络管理员为了降低其网络核心的管理开销,将除IP外所有传送协议都删除了,因而IPX和AppleTalk等非IP协议只能通过GRE来穿越IP核心网络。
GRE需要在已有的数据包上增加一个新的GRE头部,这个概念与IPSec隧道模式相似。
原始数据包通过IP网络进行承载,而只有新增加的外层头部用于转发操作,当GRE 包到达GRE隧道终点时,外层头部将被剥离,还原出原始的内部数据包。
目前,多协议网络基本上都消失了,已经很难再看见企业和核心网络基础设施中出现曾经丰富多样的多种协议。
对纯IP网络来说,GRE刚开始被视为无用的传统协议,但随着IPSec的应用增多,IP网络中又重新出现了GRE的身影。
本章将详细描述IPSec环境下的GRE应用问题。
14.1 “我已经知道了吗?”测验“我已经知道了吗?”测验的目的是帮助读者确定是否需要完整的学习本章知识,如果打算完整地阅读本章全部内容,那么就无需在此刻回答本节的问题。
根据本章主要知识点提炼出来的15道测验题可以帮助读者有效地利用有限的学习时间。
表14-1列出了本章的主要内容以及与这些内容相关联的“我已经知道了吗?”测验题。
表14-1 “我已经知道了吗?”基本主题章节与所对应的测验题260第14章IPSec GRE注意1.GRE给数据包增加的额外头部最小多少字节?a.16字节;b.20字节;c.24字节;d.36字节;e.48字节。
2.下面哪些是GRE头部中的有线选项(请选出所有正确答案)?a.GRE头部长度;b.校验和存在;c.密钥存在;d.外部加密;e.协议。
3.GRE隧道接口的作用是什么?a.GRE隧道接口总是隧道源接口;b.GRE隧道接口总是隧道目的接口;c.GRE隧道接口是配置穿越隧道的协议的地方;d.GRE隧道接口是映射到物理隧道端口的接口;e.当前未用。
通用路由封装(GRE)定义了在任意一种网络层协议上封装任意一个其它网络层协议的协议。
在大多数常规情况下,系统拥有一个有效载荷(或负载)包,需要将它封装并发送至某个目的地。
首先将有效载荷封装在一个 GRE 包中,然后将此 GRE 包封装在其它某协议中并进行转发。
此外发协议即为发送协议。
当 IPv4 被作为 GRE 有效载荷传输时,协议类型字段必须被设置为 0x800。
当一个隧道终点拆封此含有IPv4 包作为有效载荷的 GRE 包时,IPv4 包头中的目的地址必须用来转发包,并且需要减少有效载荷包的 TTL。
值得注意的是,在转发这样一个包时,如果有效载荷包的目的地址就是包的封装器(也就是隧道另一端),就会出现回路现象。
在此情形下,必须丢弃该包。
当 GRE 包被封装在 IPv4 中时,需要使用 IPv4 协议 47。
GRE 下的网络安全与常规的 IPv4 网络安全是较为相似的,GRE 下的路由采用IPv4 原本使用的路由,但路由过滤保持不变。
包过滤要求防火墙检查 GRE 包,或者在 GRE 隧道终点完成过滤过程。
在那些这被看作是安全问题的环境下,可以在防火墙上终止隧道。
∙ C ― 当前校验和。
∙Reserved 0 & 1 ― 预留以备后用。
∙Ver ― 版本号,当前为0。
∙Protocol Type ― 包括有效载荷数据包的协议类型。
∙Checksum ― 包括 GRE 头和有效负载数据包中所有16位字的 IP 校验和总数GRE的原理是将3层报文封装到IP报文里,送到tunnel对端后在解开的技术。
你可以把tunnel想象成一个DDN专线,tunnel口上配置的ip地址就相当于连接DDN专线的串口的IP地址。
这个地址一般是内部的IP,Internet上是不认的(假设tunnel通过 Internet来建)。
而tunnel source和tunnel destination地址是Internet上可以路由的IP地址,用于建立tunnel,并不是tunnel口的IP。