MGRE基础实验及应用

2023-10-23 08:21
文章标签 基础 应用 实验 mgre

本文主要是介绍MGRE基础实验及应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MGRE实验
拓扑图如下:
在这里插入图片描述
要求如下:
1、R4为ISP只能配置IP地址
2、R1到R3间建立MGRE环境,且使用EIGRP来学习各自环回

为了方便,IP地址规划如下:
R1-R4使用15.1.1.0/24网段、R2-R4使用24.1.1.0/24网段、R3-R4使用34.1.1.0/24网段、R1环回192.168.1.0/24、R2环回192.168.2.0/24、R3环回192.168.3.0/24

实验思路:
1、首先内网先通—缺省指向ISP
2、然后构建MGRE环境
3、之后运行EIGRP协议让私网可通信
:需要注意分支间打破非广播型多路访问;中心站点关闭水平分割机制

R1、R2、R3、R4配置IP
R1(config)#int s1/0
R1(config-if)#ip address 14.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#int lo 0
R1(config-if)#ip address 192.168.1.1 255.255.255.0

R2(config)#int s1/1
R2(config-if)#ip address 24.1.1.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#int lo 0
R2(config-if)#ip address 192.168.2.1 255.255.255.0

R3(config)#int s1/1
R3(config-if)#ip address 34.1.1.2 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#int lo 0
R3(config-if)#ip address 192.168.3.1 255.255.255.0

R4(config)#int s1/1
R4(config-if)#ip address 14.1.1.2 255.255.255.0
R4(config-if)#no shutdown
R4(config-if)#int s1/0
R4(config-if)#ip address 24.1.1.1 255.255.255.0
R4(config-if)#no shutdown
R4(config-if)#int s1/2
R4(config-if)#ip address 34.1.1.1 255.255.255.0

一:配置缺省给ISP,实现内网互通
R1(config)#ip route 0.0.0.0 0.0.0.0 14.1.1.2
R2(config)#ip route 0.0.0.0 0.0.0.0 24.1.1.1
R3(config)#ip route 0.0.0.0 0.0.0.0 34.1.1.1
在这里插入图片描述在这里插入图片描述在这里插入图片描述
二:配置中心站点和分支站点构建MGRE环境
中心站点
R1(config)#int tun 0
R1(config-if)#ip address 10.1.1.1 255.255.255.0 Tunnel隧道地址
R1(config-if)#tunnel source s1/0 隧道源端口,固定的
R1(config-if)#tunnel mode gre multipoint 隧道的目标端口不固定靠NHRP获取多点IP
R1(config-if)#ip nhrp map multicast dynamic 本地成为NHRP的server端
Multicast 让本设备在目标地址为组播或广播时,将流量基于表中所有的目标单独发送一次-----伪广播

R1(config-if)#ip nhrp network-id 100 所有站点必须处于同一ID内站点

分支站点R2
R2(config)#int tun 0
R2(config-if)#ip address 10.1.1.2 255.255.255.0
R2(config-if)#tunnel source s1/1
R2(config-if)#tunnel mode gre multipoint
R2(config-if)#ip nhrp nhs 10.1.1.1 定义NHRP的server端,此处必须为tunnel口地址(想知道这个目标是谁,找这个服务器)
R2(config-if)#ip nhrp map 10.1.1.1 14.1.1.1 映射tunnel的公网地址(这个服务器是个假IP找真IP14.1.1.1)
R2(config-if)#ip nhrp network-id 100

分支站点R3
R3(config)#int tun 0
R3(config-if)#ip address 10.1.1.3 255.255.255.0
R3(config-if)#tunnel source s1/1
R3(config-if)#tunnel mode gre multipoint
R3(config-if)#ip nhrp nhs 10.1.1.1
R3(config-if)#ip nhrp map 10.1.1.1 14.1.1.1
R3(config-if)#ip nhrp network-id 100

此时MGRE环境构建完成,实现tunnel之间互相通信
在这里插入图片描述在这里插入图片描述在这里插入图片描述
三:运行协议让私网能够互相通信
R1(config)#router eigrp 200
R1(config-router)#no auto-summary
R1(config-router)#network 192.168.1.0
R1(config-router)#network 10.0.0.0

R2(config)#router eigrp 200
R2(config-router)#no auto-summary
R2(config-router)#network 192.168.2.0
R2(config-router)#network 10.0.0.0

R3(config)#router eigrp 200
R3(config-router)#no auto-summary
R3(config-router)#network 10.0.0.0
R3(config-router)#network 192.168.3.0
注意:运行协议后不能宣告内网网段(R1-R4),不用公网的接口用的是假接口(隧道接口),因为此时已经构成MGRE环境,相当于ISP不存在R1、R2、R3为直连, 处于10.1.1.0/24网段
此时中心站点R1学不到R2,R3的EIGRP的邻居表且处于翻滚状态(hello包保活),而分支站点R2、R3能够收到R1的邻居表
原因:EIGRP发的是组播,在NBMA网络中发不出去。在中心站点配置了伪广播功能(Multicast),分支站点没有配置。R1开启伪广播给R2,R3发hello包,而R2,R3又没有开启伪广播功能所以发不回来,导致在R2,R3上能看到R1的hello包,所以R2,R3上认为和R1有邻居关系
解决:分支站点R2,R3开启伪广播功能
(分支站点开启伪广播功能需要定义流量的具体目标)

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
分支站点R2,R3开启伪广播
R2(config)#int tun 0
R2(config-if)#ip nhrp map multicast 14.1.1.1

R3(config)#int tun 0
R3(config-if)#ip nhrp map multicast 14.1.1.1
在这里插入图片描述在这里插入图片描述
此时R2,R3能互相访问R1环回,但是R2访问不了R3--------原因在于R1的平分割机制,所以手工关掉
R1(config)#int tun 0
R1(config-if)#no ip split-horizon ei
R1(config-if)#no ip split-horizon eigrp 200

实验完成,私网全部可达
在这里插入图片描述在这里插入图片描述在这里插入图片描述

这篇关于MGRE基础实验及应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/266679

相关文章

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

mysql的基础语句和外键查询及其语句详解(推荐)

《mysql的基础语句和外键查询及其语句详解(推荐)》:本文主要介绍mysql的基础语句和外键查询及其语句详解(推荐),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录一、mysql 基础语句1. 数据库操作 创建数据库2. 表操作 创建表3. CRUD 操作二、外键

Python基础语法中defaultdict的使用小结

《Python基础语法中defaultdict的使用小结》Python的defaultdict是collections模块中提供的一种特殊的字典类型,它与普通的字典(dict)有着相似的功能,本文主要... 目录示例1示例2python的defaultdict是collections模块中提供的一种特殊的字

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印

Python基础文件操作方法超详细讲解(详解版)

《Python基础文件操作方法超详细讲解(详解版)》文件就是操作系统为用户或应用程序提供的一个读写硬盘的虚拟单位,文件的核心操作就是读和写,:本文主要介绍Python基础文件操作方法超详细讲解的相... 目录一、文件操作1. 文件打开与关闭1.1 打开文件1.2 关闭文件2. 访问模式及说明二、文件读写1.

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

C#基础之委托详解(Delegate)

《C#基础之委托详解(Delegate)》:本文主要介绍C#基础之委托(Delegate),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 委托定义2. 委托实例化3. 多播委托(Multicast Delegates)4. 委托的用途事件处理回调函数LINQ

Android Kotlin 高阶函数详解及其在协程中的应用小结

《AndroidKotlin高阶函数详解及其在协程中的应用小结》高阶函数是Kotlin中的一个重要特性,它能够将函数作为一等公民(First-ClassCitizen),使得代码更加简洁、灵活和可... 目录1. 引言2. 什么是高阶函数?3. 高阶函数的基础用法3.1 传递函数作为参数3.2 Lambda