GRE \ MGRE

目录

VPN---虚拟专用网络

GRE-----通用路由封装

​编辑

GRE封装和解封装过程

GRE实例

配置

封装格式

检查设备连通性

查看数据抓包

R1请求R2的报文

R2回复R1的报文

keepalive检测机制

MGRE

重点

NHRP --- 下一跳解析协议

hub-spoke架构----中心到节点架构 

MGRE的shortcut

Hub 配置

检查Hub 的 MAP 映射表

Spoke节点配置

 r2

r3

测试设备连通性

DSVPN---动态智能VPN

NHRP映射表

        静态表项

        动态表项

NHRP映射表的建立过程

DSVPN支持两种分支间路由学习方式

分支间互相学习路由----非shortcut方式

分支路由汇聚到总部----shortcut方式

实例

非shortcut方式

shortcut方式

在shortcut方式下需要添加的配置


GRE \ MGRE_第1张图片

VPN---虚拟专用网络

依靠ISP或者其他公用网络基础设施上构建专用的安川数据通信网络。  ---只不过这个专用网络是逻辑而非物理的

虚拟:用户不在需要拥有实际的长途数据线缆,而是使用公共网络资源建立自己的专用网络

专用: 可以定制最符合自身需求的网络

GRE-----通用路由封装

GRE \ MGRE_第2张图片

GRE \ MGRE_第3张图片

GRE封装和解封装过程

  • 设备从连接私网的接口接收到数据包后,检查报文头部中的目的IP地址字段,在路由表中查找出接口,如果发现出接口为隧道接口,则将报文发送给隧道模块进行处理。
  • 隧道模块接收到报文后,首先根据乘客协议的类型和当前GRE隧道配置的校验和参数,对报文进行GRE封装
  • 然后,设备给报文添加新的传输协议,该协议的源IP就是隧道源地址,目的IP为隧道目的地址
  • 最后,设备根据新条件的IP报文头部中的目的地址,在路由表中查找对应的出接口并发送报文。
  • 接收端设备从连接公网的接口收到报文后,首先分析IP报文头部信息,如果发现协议字段类型值为47 (GRE协议号),表示数据部分由GRE模块进行处理。

GRE模块去除掉IP报文头部和GRE报文头部,并根据GRE报文头部中的协议类型字段来判断乘客协议内容。从而交给对应模块处理。

GRE实例

GRE \ MGRE_第4张图片

配置

[r1]ip route-static 0.0.0.0 0 12.0.0.2   

[r3]ip route-static 0.0.0.0 0 23.0.0.1

[r1]interface ?

  Bridge-if         Bridge-if interface

  Dialer            Dialer interface

  Eth-Trunk         Ethernet-Trunk interface

  GigabitEthernet   GigabitEthernet interface

  Ima-group         ATM-IMA interface

  LoopBack          LoopBack interface

  MFR               MFR interface

  Mp-group          Mp-group interface

  NULL              NULL interface

  Tunnel            Tunnel interface

  Virtual-Ethernet  Virtual-Ethernet interface

  Virtual-Template  Virtual-Template interface

  Vlanif            Vlan interface

  Wlan-Ess          Wlan-Ess interface

[r1]interface Tunnel 0/0/0  ---  创建隧道接口

[r1-Tunnel0/0/0]ip address 192.168.3.1 24  ---  给通道接口地址配好一个IP,必须是私网地址

[r1-Tunnel0/0/0]tunnel-protocol ?

  gre        Generic Routing Encapsulation

  ipsec      IPSEC Encapsulation

  ipv4-ipv6  IP over IPv6 encapsulation

  ipv6-ipv4  IPv6 over IP encapsulation

  mpls       MPLS Encapsulation

  none       Null Encapsulation

[r1-Tunnel0/0/0]tunnel-protocol gre   ---   定义通道封装的类型

[r1-Tunnel0/0/0]source 12.0.0.1   ---  源公网地址

[r1-Tunnel0/0/0]destination 23.0.0.2   ---  目的公网地址

[r1]ip route-static 192.168.2.0 24 192.168.3.2  ---  去往的私网网段,下一跳为R2隧道接口地址

[r3]interface Tunnel 0/0/0

[r3-Tunnel0/0/0]ip address 192.168.3.2 24

[r3-Tunnel0/0/0]tunnel-protocol gre

[r3-Tunnel0/0/0]source 23.0.0.2

[r3-Tunnel0/0/0]destination 12.0.0.1

封装格式

检查设备连通性

GRE \ MGRE_第5张图片

查看数据抓包

R1请求R2的报文

GRE \ MGRE_第6张图片

R2回复R1的报文

GRE \ MGRE_第7张图片

keepalive检测机制

[r1-Tunnel0/0/0]keepalive period 2 retry-times 5

设置发送周期为2s,设置重传次数为5次

MGRE

重点

NHRP --- 下一跳解析协议

        

        至少存在一个中心站点;中心站点的 IP 地址必须固定;所有分支站点,在启动后将本地当下的物理接口 IP 地址发送到中心站点;中心站点生成 MAP(MAP中记录分支站点的公有 IP 与 Tunnel 接口的 IP 地址对应关系); 其他分支站点也可以到中心站点下载该 MAP;

        存在服务端和客户端;服务端需要固定公有ip地址,客户端ip地址可变;客户端在本地公有ip变化后,主动向服务端进行注册;服务端生成 MAP,MAP 中记录客户端的公有 IP 与 Tunnel 接口的 IP 地址对应关系;若其他客户端需要访问另一个客户端,可以到服务端下载该 MAP;

hub-spoke架构----中心到节点架构 

          NHS---下一跳服务器

        中心节点的IP地址必须固定

MGRE的shortcut

        有一台中心服务器AR1 作为整个网络中的中心服务器Hub,且每次节点与节点之间访问的时候必须经过AR1进行转发,也是有优点的,配置比较简单,但是缺点就是占用大多带宽,对线路通讯不太好

GRE \ MGRE_第8张图片

Hub 配置

[r1]int Tunnel 0/0/0 

[r1-Tunnel0/0/0]ip address 192.168.5.1 24

[r1-Tunnel0/0/0]tunnel-protocol gre p2mp  --- 修改接口封装协议为GRE,且为点到多点模式

[r1-Tunnel0/0/0]source 15.0.0.1  ---  Hub只有源没有目标,因为是别人得到中心认证来找Hub

[r1]ip route-static 192.168.2.0 24 192.168.5.2   

[r1]display nhrp peer all

检查Hub 的 MAP 映射表

GRE \ MGRE_第9张图片

Spoke节点配置
 r2

[r2-Tunnel0/0/0]ip address 192.168.5.2 24

[r2-Tunnel0/0/0]tunnel-protocol gre p2mp

[r2-Tunnel0/0/0]source GigabitEthernet 0/0/0

[r2-Tunnel0/0/0]nhrp entry 192.168.5.1 15.0.0.1 register   ---   找中心站点进行注册隧道地址物理接口地址

[r2]ip route-static 192.168.1.0 24 192.168.5.1

[r1]display nhrp peer all  ----  查看nhrp映射表

r3

[r3]interface Tunnel 0/0/0

[r3-Tunnel0/0/0]ip address 192.168.5.3 24

[r3-Tunnel0/0/0]tunnel-protocol gre p2mp

[r3-Tunnel0/0/0]source g0/0/0

[r3-Tunnel0/0/0]nhrp entry 192.168.5.1 15.0.0.1 register

[r3]ip route-static 192.168.1.0 24 192.168.5.1

[r3]ip route-static 192.168.2.0 24 192.168.5.1

测试设备连通性

GRE \ MGRE_第10张图片

DSVPN---动态智能VPN

传统的MGRE技术存在的问题。----分部之间无法直接通讯(源分支无法获取目的分支的公网地址,也就无法建立VPN隧道)导致所有的分支之间的通讯数据只能通过总部HUB设备进行中转。

NHRP映射表

        静态表项

                由网络管理员手工配置

                spoke与hub建立静态的mgre隧道

        动态表项

                是由NHRP协议动态生成

                hub节点被动获取到spoke节点发送来的注册信息

                各个spoke节点通过NHRP协议获取到对端的spoke节点的映射关系。

                7200S

NHRP映射表的建立过程

建立spokehub之间的mgre隧道

1.spokehub注册请求

2.hubspoke注册应答

DSVPN支持两种分支间路由学习方式

分支间互相学习路由----shortcut方式

        每个分支需要学习到所有对端的路由数据,且下一跳为分支本身

分支路由汇聚到总部----shortcut方式

        下一跳为hub设备

        建立spoke与spoke之间的mgre隧道

实例

shortcut方式

        R4一开始发送的报文包括ICMP和NHRP(请求R2实际地址),因为在比对自己的NHRP表发现下一跳与NHRP映射表中的下一跳发生冲突,所以R4会认为这个映射表中的应该是错误的,继而发送一个NHRP报文来与目的去申请建立连接,目的IP是R1的IP因为他的nhrp信息表里面没有关于AR2的信息所以目的的IP是15.0.0.1

        当R1收到这个报文之后他会去看R4和R2的网段发现192.168.5.4 和 192.168.5.2 同一网段,处于同一广播域下,当R2收到NHRP请求报文后如果R2同意进行通讯,这个时候他会在本地NHRP表里生成一个关于去往自己的信息,标识是local    最后发给R4然后就建立了链接

GRE \ MGRE_第11张图片

GRE \ MGRE_第12张图片

R2没ping前的nhrp表

GRE \ MGRE_第13张图片

首先来看在R1上抓取的ICMP包,能发现是第一轮是由R1做转发,再看R4上抓包发现

GRE \ MGRE_第14张图片

R4上抓包在第一次发送ICMP包的同时也会发送NHRP包去向R2申请怎么去

GRE \ MGRE_第15张图片

R2在容易了R4的请求后也会发一条NHRP报文给R4并告诉他实际地址是多少,并且序列号是跟发过去的序列号是一样的

GRE \ MGRE_第16张图片

R2上已经生成了R4的NHRP映射信息了

GRE \ MGRE_第17张图片

R4上的NHRP表上增添了关于R2的信息

GRE \ MGRE_第18张图片

shortcut方式

        此时去R2环回pingR3环回发送的都是ICMP包,他并没有发送NHRP包,这是因为在shortcut模式下他并不知道自己的写的下一跳是错误的,因为在NHRP 表中他看到protocol-addr和下一跳是一样的,R2就认为是对的,并没有发NHRP包去请求R3所以只有ICMP包

GRE \ MGRE_第19张图片

GRE \ MGRE_第20张图片

在shortcut方式下需要添加的配置

开启这个功能R1就会将这个ICMP报文与自己的映射表做比对,并且判断是否在同一广播域,如果在同一广播域并且正确则不做回复,如果不正确就会通知R2你的是错的并且需要跟R1申请映射关系

[r1-Tunnel0/0/0]nhrp redirect   ----  开启重定向功能。默认情况下是未启动

开启重定向功能在使用R2 ping一下R4

此报文是R1给R2回的NHRP包告诉R2需要向R1申请映射关系

GRE \ MGRE_第21张图片

这个时候去查一下R2的表发现并没有加表,也就是说R2仍然认为自己是对的,他不听

GRE \ MGRE_第22张图片

此时需要开启R2的nhrp的 shuortcut配置

[r2-Tunnel0/0/0]nhrp shortcut

去ping一下R4发现这个表已经加载出来了,这个时候R2跟R4建立了单向的链接,如果要双向需R4同样也开启NHRP shortcut配置

GRE \ MGRE_第23张图片

这里能发现R4已经给R2回一个NHRP报文了这个时候R2才会修改他的NHRP表

GRE \ MGRE_第24张图片

你可能感兴趣的:(网络,服务器)