静态路由只配置出接口网络不通(实验)
#问题引入
配置静态路由时,可以选择配置下一跳地址,也可以选择配置出接口,也可以两者同时配置。
但是以太网环境中只配置路由出接口时,两个网段无法通信。
(事实上以太网,或者说广播类型接口配置静态路由时,必须指定下一跳地址,具体原因就是本例分析的)
#实验条件
采用华为的eNSP模拟器
如下图,两台PC连接到两台路由器,PC1处于11.0.0.0 24网段,PC2处于22.0.0.0 24网段。他们的网关都设置为连接的路由器接口。
路由器之间网段为12.0.0.0 24。
需求是PC1和PC2之间通信,显然AR1和AR2两台路由器需要有对应的路由。
即当PC1向PC2发包时,由于AR1为PC1的网关,PC1会将包发往AR1,AR1收到包后需要根据路由表转发包,显然需要转发向AR2方向,AR2接收到包后就可向PC2转发(AR2有通往22.0.0.0 24网段的直连路由)。PC2向PC1回包也就是倒过来。
#抓包结果
我们先在AR1上配置前往PC2的路由,只配置出接口为GE 0/0/0。
ip route-static 22.0.0.2 24 g0/0/0
查看路由表,发现多了一条前往22.0.0.0 24网段的静态路由,出接口为g0/0/0,下一跳为出接口的IP地址12.0.0.1。
注:如果直接配置下一跳IP为12.0.0.1(g0/0/0口的IP地址),会报错。
前面问题已经描述过了,即使配置了AR2,这样配置PC1和PC2也无法通信。所以不再配置AR2,直接抓包分析。
在PC1上Ping PC2,理论上AR1是配置了到PC2网段路由的,最后我们得到的结果是超时,这个结果看着似乎像是没有配置AR2路由的原因,导致PC2没有能回包。
我们进一步在AR1的g0/0/0口抓包。
发现仅仅有的是来自AR1路由器的ARP包!也就是ICMP的请求包根本就没有从AR1发出。
我们再抓取PC1和AR1之间的包。
可以发现,PC1是正确发出了ICMP请求包。
#结果分析
这时候原因就很显然了,AR1接收到PC1发出的ICMP请求包,但不能正确地将这个包转发出去。
路由器将包转发出去,实际上是一个跨不同二层链路的动作,它修改的是二层帧中的MAC地址。
PC1向AR1发包时,MAC地址填写的是AR1(PC1的网关)的,AR1的MAC通过PC1发送ARP请求利用AR1的IP获得,而AR1向22.0.0.0 24网段转发包时,需要知道目标地址下一跳的MAC,而路由表中的下一跳是AR1的GE 0/0/0端口的IP。但路由器不会去思考是否合理,它仅仅知道已知IP获取MAC的方法:ARP广播。
所以我们抓到了许多ARP包,再仔细看ARP包的内容。
ARP广播希望得到12.0.0.1地址设备的MAC,但网段不会有设备回应它,因为它自身的接口IP就是12.0.0.1,所以这个ARP广播被视为ARP宣告。
由于得不到目标MAC地址,无法封装二层帧,路由器自然无法转发出这个包,最后PC1等待无果,显示Ping超时。
#结论
路由转发最终决策是根据设备的路由转发表(Forwarding Information Base,FIB),路由转发表的路由路径是根据路由表选择最优路由后下发的。
路由表有两个关键字段,NextHop和Interface,分别表示路由的下一跳地址和路由的出接口。
出接口就决定了路由器将包从哪个接口发出,而NextHop的作用,通过上述问题分析可以得出:它是用来获得对端MAC地址的。
综上,在广播网络中,配置静态路由时,两个字段内容缺一不可。我们只配置下一跳时,路由表会根据自身已有的表项递归查询,查询出出接口是哪个端口,如果查询不到,此条路由会被标记为无效。
所以以太网环境中配置静态路由时没法只配出接口,也许同时配置出接口和下一跳地址是个好习惯。
静态路由只配置出接口网络不通(实验)相关推荐
- 中兴路由器中静态路由的配置
一.实验目的 1.掌握中兴1800路由器的工作原理. 2.熟练掌握静态路由的配置过程. 二.实验内容 1.绘制拓扑图,根据拓扑图进行试验: 2.配置路由器,并最终验证网络的连通性. 三.实验过程 1. ...
- 中兴路由器中浮动静态路由的配置
一.实验目的 1.掌握中兴1800路由器的工作原理. 2.熟练掌握浮动静态路由的配置过程. 二.实验内容 1.绘制拓扑图,根据拓扑图进行试验: 2.配置路由器,并最终验证网络的连通性. 三.实验过程 ...
- ipv6 华为交换机 路由配置_利用华为ENSP模拟器实现IPv6与IPv6默认路由与静态路由的配置...
1.1[实验目的] 1.理解汇总路由的运作原理. 2. 深刻理解IPv6协议原理. 3.掌握IPv6默认路由的配置方法 4.掌握IPv6静态路由的配置方法 1.2[实验环境] ENSP模拟器 路由器获 ...
- 计算机网络实验报告 静态路由的配置
实验名称 静态路由的配置 一.实验目的 1.掌握路由器的配置 2. 学会配置静态路由 3. 实现静态路由的不同网络间的互通 二.实验内容 1.搭建拓扑图 2.网络拓扑节点IP配置 3.静态路由配置实现 ...
- 静态配置_【实验】华为静态路由基础配置
关注我,你的眼睛会怀孕 一.静态路由功能介绍 静态路由就是手工配置的路由,使得数据包能够按照预定的路径传送到指定的目标网络.当不能通过动态路由协议学到一些目标网络的路由时,配置静态路由就会显得十分重要 ...
- 静态路由与配置 知识点
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 1. 什么是路 ...
- 【实验】华为静态路由基础配置
一.静态路由功能介绍 静态路由就是手工配置的路由,使得数据包能够按照预定的路径传送到指定的目标网络.当不能通过动态路由协议学到一些目标网络的路由时,配置静态路由就会显得十分重要. 二.静态路由应用场景 ...
- 【面试必备】静态路由与配置相关知识点详解
[欢迎关注微信公众号:厦门微思网络] 微思网络(官网):https://www.xmws.cn/ 1.什么是路由?什么是路由选择? 跨越从源主机到目标主机的一个互联网络来转发数据包的过程,称为路由.路 ...
- 【学习整理】静态路由如何配置
一 . 静态路由是什么? 静态路由是一种路由的方式,路由项由手动配置,而非动态决定.与动态路由不同,静态路由是固定的,不会改变,即使网络状况已经改变或是重新被组态.一般来说,静态路由是由我们网管逐项 ...
- Cisco Packet Tracer路由方式介绍和静态路由简单配置
当向目的IP地址发送数据包时,可能会经过很多路由器,有很多选择路径,那么路由器怎么找到路并怎么选择最优路径呢?答案是通过路由表. 每个路由器中都有一个路由表和FIB表:路由表用来决策路由,FIB用来转 ...
最新文章
- 计算机视觉与深度学习 | 机器学习中的数学——入门机器学习
- c语言制表符_随时随地学习C语言之1—开发环境搭建
- 两张趣图助你理解 HTTP 状态码
- .net winform panel 不刷新_【扫盲篇】visual studio2019(C#/.NET)安装教程
- matlab中上下光标的作用,当鼠标移动到按钮上时改变光标形状
- 08返回一个整数数组中最大子数组的和
- Springboot集成JavaMailSender发送邮件
- 浅析C#中的文件操作
- 8g内存一般占用多少_手机6G和8G运存有什么不同,8G运存真比6G流畅?这也要考虑处理器...
- php去掉文字空白换行,php去掉空格换行的方法
- 优化三维空间定位法及C语言快捷实现
- react.js 原生文字下划线标注功能开发
- Navicat:Access violation at address xxxxxxxxx in module 'navicat.exe'.Read of address xxxxxx
- 手机中的com.android.provision删除可不可以,Android Provision (Setup Wizard)
- 【Excel提取数字】用5个简单公式从混合文本中提取数字
- 用Python批量从本地导数据到postgres数据库,比人工导入快十倍,爽
- 如何挖到人生当中第一本CNVD
- Android 在应用图标上设置未读消息数量
- win7桌面图标显示不正常解决
- 网站本地化建设文章自动批量翻译工具