路由协议及GNS3网络仿真

      一、实验目的和要求

  1. 掌握IP地址编址规划,能自主学习并使用网络设备指令集在具体设备上进行业务和协议配置;
  2. 掌握网络仿真工具GNS3的使用方法;
  3. 使用GNS3,自主完成一个网络的拓扑设计,并完成IP地址规划、域内/域间路由规划内容及方案,域间采用BGP协议,实现AS内与AS间的路由,域内采用OSPF路由协议

    二、实验原理 

    网关:

    网关(getaway)实质上是一个网络通向其它网络地IP地址 get away就是英文离开的意思,类似于小区大门,要离开小区必须从大门走,也与下一跳概念相同。

    一个用于 TCP/IP 协议的配置项,是一个可直接到达的 IP 路由器的 IP 地址。配置默认网关可以在 IP 路由表中创建一个默认路径。 一台主机可以有多个网关。默认网关的意思是一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。现在主机使用的网关,一般指的是默认网关。

    静态路由

    是指用户或网络管理员手工配置的路由信息。当网络拓扑结构或链路状态发生改变时,需要网络管理员手工配置静态路由信息。

    相比较动态路由协议,静态路由无需频繁的交换各自的路由表,配置简单,比较适合小型、简单的网络环境。不适合大型和复杂的网络环境的原因是:当网络拓扑结构和链路状态发生改变时,网络管理员需要做大量的调整,工作量繁重,而且无法感知错误发生,不易排错。[i]

    动态路由:

    是与静态路由相对的一个概念,指路由器能够根据路由器之间的交换的特定路由信息自动地建立自己的路由表,并且能够根据链路和节点的变化适时地进行自动调整。当网络中节点或节点间的链路发生故障,或存在其它可用路由时,动态路由可以自行选择最佳的可用路由并继续转发报文。

    动态路由机制的运作依赖路由器的两个基本功能:路由器之间适时的路由信息交换,对路由表的维护[i]

    OSPF

    OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。

    Link State Protocols(地图原理) 每台路由器初始化时仅包含直连网段信息 相邻路由器与建立邻居建立邻接关系 路由器学习真实的网络拓扑信息 交换链路状态信息( LSA) 保存到本地数据库中 获取完整的拓扑信息后,仅在拓扑变化时更新 使用 Dijkstra算法计算最短路径 对于大型网络,支持分区。

    BGP

    边界网关协议(BGP)是运行于 TCP 上的一种自治系统的路由协议。 BGP 是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接的协议。

    三、实验内容与步骤

    添加路由镜像

    路由协议及GNS3网络仿真_第1张图片

    图 1 preference界面

    在GNS3软件上方菜单栏选择Edit->preference->IOS routers->New 选择镜像文件(*.image)打开。

    路由协议及GNS3网络仿真_第2张图片

    路由协议及GNS3网络仿真_第3张图片

    图 2 添加镜像

    确定路由器型号,名称,点击Next下一步。

    路由协议及GNS3网络仿真_第4张图片

    图 3 配置路由器默认端口

    为路由器设置默认端口数量及类型,计算空闲值。

    点击OK,镜像添加成功。

    静态路由

     

    路由协议及GNS3网络仿真_第5张图片

    图 4 初始拓扑结构及接口情况

    从GNS3软件左列的路由器列表中拖出路由,这里选用的是S7200,再由软件窗口左侧下端选择添加链接(add a link)如图所示链接图上路由器。

    路由协议及GNS3网络仿真_第6张图片

    图 5 添加路由 链接

    路由器序号

    接口

    IP地址

    R1

    f0/0

    192.168.1.1

    f1/0

    /

    R2

    f0/0

    192.168.1.2

    f1/0

    192.168.2.1

    R3

    f0/0

    192.169.2.2

    f1/0

    192.168.3.1

    R4

    f0/0

    192.168.3.2

    f1/0

    /

    根据表中所示配置各路由器接口的IP地址,具体过程如下。

     

    鼠标位于路由器之上,右键选择consel,键入config t进入配置模式,输入interface f0/0(或简写为 int f0/0),用以下命令指定IP地址:

    ip addr + 地址值 + 掩码,输入no shutdown保持该端口不关闭,最后用end语句结束配置。

    路由协议及GNS3网络仿真_第7张图片

    图 6 R1配置IP地址

    路由协议及GNS3网络仿真_第8张图片

    图 7 R2配置ip地址

    路由协议及GNS3网络仿真_第9张图片

    图 8 R3配置IP地址路由协议及GNS3网络仿真_第10张图片

    图 9 R4配置IP地址

    IP地址配置完成后可使用sh ip int bri查看各端口IP地址配置情况。

    现在实验发觉各路由器只能Ping通直连的路由器,二段,三段等非直连网段均显示不可达。

    路由协议及GNS3网络仿真_第11张图片

    图 10 R1连通测试

    路由协议及GNS3网络仿真_第12张图片

    图 11 R2连通测试

    路由协议及GNS3网络仿真_第13张图片

    图 12 R3联通测试

    路由协议及GNS3网络仿真_第14张图片

    图 13 R4连通测试

    最简单的让路由器之间可互相通信的方法就是手动为各路由器配置静态路由,就是“搭桥”,告诉路由器哪些路可以走,适用于小型的拓扑结构简单且比较固定的网络。具体操作如下:

    右键路由器选择consel,键入config t进入配置状态,

    ip route +目的地址 + 掩码 +  出口地址,为静态路由配置格式,end结束配置。

    这里通过观察我们知道,R1和R4作为末端网络,要想与其他路由器连通,R1必须经过R2,R4必须经过R3,所以无论去往哪个路由器,对应的下一跳都是R2,R3,就像离开城市必须从(机场火车站汽车站)走一样。

    路由协议及GNS3网络仿真_第15张图片

    图 14 给R1添加静态路由

       此处掩码为通配符掩码,不是子网掩码

       通配符掩码的计算:(255.255.255.255)减(子网掩码)

          例如:子网掩码为:255.255.255.0,通配符掩码为:0.0.0.255

                    any:  表示任意IP地址,即:0.0.0.0

    所以图中语句表示,从R1到任意ip地址需要经过192.168.1.2地址。

    配置完成后可使用sh ip route 查看当前路由器路由表,从图中可以看到,刚刚添加的S打头的static静态路由,via表示经过(下一跳)。

    也可以一个一个写目的地址。

    图 15 给R4添加静态路由

    对于R2,R3,要实现全网互通,只要再添加R2->R3,R3->R2的静态路由即可,过程与之前类似。

    路由协议及GNS3网络仿真_第16张图片

    图 16 给R2添加静态路由

    这里的192.168.3.0表示的是整个192.168.3.0的网段,包括192.168.3.1和192.168.3.2。在路由表中可以看到除了C打头的直连路由,还有新配置的静态路由。

    图 17 给R3添加静态路由

    由R4 ping R1地址 成功连通。

    路由协议及GNS3网络仿真_第17张图片

    图 18 静态路由配置后连通性测试

    这种通信是一种递归过程,若假设主机1和主机2之间可以正常的通信,即可以正常的连通,则主机1将发送数据给其网关设备R1;而R1在收到其数据之后,根据数据包中的目的地址查看自己的路由表,找到相应的目的网络的所在的路由条目,并根据该条目中的下一跳和出接口信息将该数据转发给下一个路由器R2;同时R2采用相同的方式将数据转发给R3,最后R3页同样的将数据转发给与自己直接相连的主机2;主机2在收到数据后,与主机1发送数据到主机2的过程一样,再发送相应的回应信息给主机1。[i]

    动态路由

     

    正如之前所说,在网络结构较复杂或者时常发生变动时,静态路由非常不便于管理,于是乎有了路由器可以自动建立,修改,选路的动态路由。这里我们假设有两个自治系统的互联,分别是在刚刚静态路由实验基础拓扑结构上的Xiyou AS100和另一个较简易的网络Xidian AS200。域内采用OSPF协议,域间采用BGP协议。

    因为OSPF路由器之间会将所有的链路状态(LSA)相互交换,毫不保留,

     

    当网络规模达到一定程度时,LSA将形成一个庞大的数据库,势必会给OSPF计算带来巨大的压力;为了能够降低OSPF计算的复杂程度,缓存计算压力,OSPF采用分区域计算,将网络中所有OSPF路由器划分成不同的区域,每个区域负责各自区域精确的LSA传递与路由计算,然后再将一个区域的LSA简化和汇总之后转发到另外一个区域,这样一来,在区域内部,拥有网络精确的LSA,而在不同区域,则传递简化的LSA。区域的划分为了能够尽量设计成无环网络[i] 区域划分为一个星型结构,area1,area2都把LSA发送给核心area0.路由协议及GNS3网络仿真_第18张图片

     

    图 19 动态路由实验拓扑结构

    向拓扑图中拖入VPCS1 VPCS2 和R5。和静态路由实验中过程类似,分配接口IP地址。本次新增的IP地址有:

    设备名

    接口

    IP地址

    R1

    f1/0

    192.168.4.254

    R4

    f1/0

    192.168.5.1

    PC1

    e0

    192.168.4.1

    PC2

    e0

    192.168.6.2

    R5

    f0/0

    192.169.5.2

    f1/0

    192.168.6.1

    PC的ip地址分配句式为 ip + 本接口地址 + 网关地址 + 掩码

    路由协议及GNS3网络仿真_第19张图片

    图 20 PC1 IP地址分配

    路由协议及GNS3网络仿真_第20张图片

    图 21 PC2  IP地址分配

    路由协议及GNS3网络仿真_第21张图片

    图 22 R4 IP地址分配2

    路由协议及GNS3网络仿真_第22张图片

    图 23 R5 IP地址分配

    使用no语句撤销之前配置的静态路由。

    图 24 R4撤销静态路由配置

    图 25 R3撤销静态路由配置

    图 26 R2撤销静态路由配置

    图 27 R1撤销静态路由配置

    现在为AS100中各路由器配置OSPF动态路由。

    Config t进入配置模式,router ospf 10启用ospf协议 进程号10

    Network + 端口所在网段IP +通配符掩码 + 分区号 宣告网段属于某区域

    下图中 宣告R1两臂192.168.4.0 和192.168.1.0网段属于area 1

    路由协议及GNS3网络仿真_第23张图片

    图 28 R1 ospf配置

    R2两臂192.168.1.0网段属于area1 ,192.168.2.0网段属于area 0

    可以看到 宣告网段后收到了192.168.4.254的邻居消息

    R1也收到来自192.168.2.1的邻居消息

    路由协议及GNS3网络仿真_第24张图片

    图 29 R2 ospf配置

    图 30 R2配置完ospf后 R1收到邻居消息

    R3两臂192.168.3.0网段属于area2 ,192.168.2.0网段属于area 0

    可以看到 宣告网段后收到了192.168.2.1的邻居消息,同时R2也收到192.168.3.1的邻居消息。

    图 31 R3 ospf配置

    图 32 R3配置ospf后 R2收到邻居消息

    R4 192.168.3.0网段属于area2

    可以看到 宣告网段后收到了192.168.3.1的邻居消息

    因为右臂192.168.5.1为AS200和AS100共用网段 不属于任一,所以不配置ospf

     

    图 33 R4 ospf配置

    路由协议及GNS3网络仿真_第25张图片

    图 34 R4 ospf配置后的路由表

    此时使用sh ip route指令查看R4路由表可以看到 除了直连网段,还有O打头的三条ospf路由。

    As200是一个较简单的网络,由R5和VPCS2直连构成,但是AS100和AS200之间无法通信。

    所以我们需要在边界配置BGP协议。

    Config t 进入配置模式 Router bgp + 自治系统号 //启用BGP协议

    Network + 网段IP + 掩码 //宣告网络进入BGP进程

    Neighbor + 邻居IP + remote-as +自治网络号//手动配置邻居

    R4将R1 R2 R3都设成邻居。

    路由协议及GNS3网络仿真_第26张图片

    图 35 R4bgp协议配置

    R1手动配置R4为邻居。

    图 36 R1 bgp协议配置

    R2手动配置R4为邻居。

    路由协议及GNS3网络仿真_第27张图片

    图 37 R2 bgp协议配置

    R5手动配置R4为邻居

    宣告vpcs2进入BGP进程。

    路由协议及GNS3网络仿真_第28张图片

    图 38 R5 bgp协议配置

    路由协议及GNS3网络仿真_第29张图片

    图 39 bgp邻居关系

    邻居关系如图所示,R4将VPCS1,R1,R2,R3的信息宣告到R5一侧,R5将VPCS2的信息宣告到R4一侧。此时查看R1路由表发现

    路由协议及GNS3网络仿真_第30张图片

    图 40 R1配置完bgp后路由表

    观察R1路由表发觉没有到192.168.6.0网段的路由。但是由sh ip bgp指令可以看到去往192.168.6.0的下一跳是192.168.5.2

    路由协议及GNS3网络仿真_第31张图片

    图 41 R1查看BGP路由

    BGP路由中看到,通往192.168.6.0的路由下一跳地址为192.168.5.2,该地址在R1的路由表中不可达,所以路由器认为是无效路由没有记录至路由表。即火星不可达问题。解决办法有配置多条静态路由,或者将bgp协议内容重分布至ospf中(ospf和bgp内容虽然互相公告后但是不互通的)

    这里采用重分布的解决方式,在边界路由R4键入指令router ospf 10 配置ospf

    协议

    redistribute bgp 100将bgp协议内容重分布到ospf中。

    路由协议及GNS3网络仿真_第32张图片

    图 42 R4重分布

    路由协议及GNS3网络仿真_第33张图片

    图 43 重分布后R1路由表

    此时可以看到R1路由表中出现了192.168.6.0网段的路由,但是是以外部OSPF协议的形式显示的。

    由于OSPF有着多种区域,所以OSPF的路由在路由表中也以多种形式存在,共分以下几种:

     

    如果是同区域的路由,叫做Intra-Area Route,在路由表中使用O来表示; 如果是不同区域的路由,叫做Inter-Area Route或Summary Route,在路由表中使用O IA来表示; 如果并非OSPF的路由,或者是不同OSPF进程的路由,只是被重分布到OSPF的,叫做External Route,在路由表中使用O E2或OE 1来表示。

     

    图 45 撤销重分布再重连后R1路由表

    这时看到通往192.168.6.0网段的路由显示为BGP路由。

    这是由于OSPF协议的显示优先级在BGP协议之上,所以在R4取消重分布操作后重连即可。

    路由协议及GNS3网络仿真_第34张图片

    图 44 撤销重分布后重连

     

    路由协议及GNS3网络仿真_第35张图片

    图 45 撤销重分布再重连后R1路由表

    这时看到通往192.168.6.0网段的路由显示为BGP路由。

    四、实验结果分析静态路由

    路由协议及GNS3网络仿真_第36张图片

    静态路由配置完成后R4ping 192.168.1.1成功

    动态路由

     

    完成ospf协议后,由VPCS1 pingR4 192.168.3.2可以连通 ping192.168.5.0和192.168.6.0不通,证明AS100内部连通性良好。

    路由协议及GNS3网络仿真_第37张图片

    图 46 ospf配置完成后连通性检验

    配置完BGP协议后各路由器路由表:

    路由协议及GNS3网络仿真_第38张图片

    图 47 bgp配置后R1路由表

    路由协议及GNS3网络仿真_第39张图片

    图 48 bgp配置后R2路由表

    路由协议及GNS3网络仿真_第40张图片

    图 49 bgp配置后R3路由表

    路由协议及GNS3网络仿真_第41张图片

    图 50 bgp配置后R4路由表

    路由协议及GNS3网络仿真_第42张图片

    图 51 bgp配置后R5路由表

    路由协议及GNS3网络仿真_第43张图片

    图 52 动态路由配置完成后连通性测试

    初学难免有纰漏请见谅

    [1] https://blog.csdn.net/qq_42248536/article/details/90047246

    [2]https://baike.baidu.com/item/%E5%8A%A8%E6%80%81%E8%B7%AF%E7%94%B1/100533?fr=aladdin    

    [3] https://blog.csdn.net/qq_42248536/article/details/90047246

    [4] https://blog.csdn.net/zzj244392657/article/details/92617311


    [i] https://blog.csdn.net/zzj244392657/article/details/92617311

    [i] https://blog.csdn.net/qq_42248536/article/details/90047246

    [i]https://baike.baidu.com/item/%E5%8A%A8%E6%80%81%E8%B7%AF%E7%94%B1/100533?fr=aladdin 

    [i] https://blog.csdn.net/qq_42248536/article/details/90047246

你可能感兴趣的:(MCNE)