【计算机网络】课程 实验五 静态路由配置
实验五 静态路由配置
一、实验目的
理解静态路由的工作原理,掌握如何配置静态路由。
二、实验分析与设计
【背景描述】
假设校园网分为 2 个区域,每个区域内使用 1 台路由器连接 2 个子网, 现要在路由器上 做适当配置,实现校园网内各个区域子网之间的相互通信。
【需求分析】
两台路由器通过串口以 V.35 DCE/DTE 电缆连接在一起,每个路由器上设置 2 个 Loopback 端口模拟子网,设置静态路由,实现所有子网间的互通。
【实验拓扑】
【实验设备】
路由器(带串口)两台; V.35 DCE/DTE 电缆 1对
【实验原理】
路由器属于网络层设备,能够根据 IP 包头的信息,选择一条最佳路径,将数据包转发 出去。实现不同网段的主机之间的互相访问。
路由器是根据路由表进行选路和转发的。而路由表里就是由一条条的路由信息组成。路由表的产生方式一般有 3 种:
(1)直连路由:给路由器接口配置一个 IP 地址, 路由器自动产生本接口IP 所在网段的路由信息。
(2)静态路由 : 在拓扑结构简单的网络中,网管员通过手工的方式配置本路由器未知网段的路由信息,从而实现不同网段之间的连接。
(3)动态路由协议学习产生的路由:在大规模的网络中, 或网络拓扑相对复杂的情况下, 通过在路由器上运行动态路由协议, 路由器之间互相自动学习产生路由信息。
【注意事项】
(1)如果两台路由器通过串口直接互连,则必须在其中一端设置时钟频率(DCE)。
(2)静态路由必须双向都配置才能互通,配置时注意回程路由。
三、实验内容与步骤
配置路由器名称和接口IP地址
RouterA配置:
R3740#configure terminal Enter configuration commands, one per line. End with CNTL/Z.R3740(config)#hostname RouterA RouterA(config)#interface serial 4/0 RouterA(config-if)#clock rate 512000 RouterA(config-if)#ip address 192.168.2.1 255.255.255.0 RouterA(config-if)#no shutdown RouterA(config-if)#exitRouterA(config)#interface loopback 0 RouterA(config-if)#ip address 172.16.1.1 255.255.255.0 RouterA(config-if)#exitRouterA(config)#interface loopback 1 RouterA(config-if)#ip address 172.16.2.1 255.255.255.0 RouterA(config-if)#exit
RouterB配置:
R3740#configure terminal Enter configuration commands, one per line. End with CNTL/Z.R3740(config)#hostname RouterB RouterB(config)#interface serial 4/0 RouterB(config-if)#ip address 192.168.2.2 255.255.255.0 RouterB(config-if)#no shutdown RouterB(config-if)#exitRouterB(config)#interface loopback 0 RouterB(config-if)#ip address 10.1.1.1 255.255.255.0 RouterB(config-if)#exitRouterB(config)#interface loopback 1 RouterB(config-if)#ip address 10.2.2.1 255.255.255.0 RouterB(config-if)#exit
配置静态路由
RouterA配置:
RouterA(config)#ip route 10.1.1.0 255.255.255.0 192.168.2.2 RouterA(config)#ip route 10.2.2.0 255.255.255.0 s4/0
RouterB配置:
RouterB(config)#ip route 172.16.1.0 255.255.255.0 192.168.2.1 RouterB(config)#ip route 172.16.2.0 255.255.255.0 s4/0
查看路由表和接口配置
查看路由表:
RouterA#show ip route RouterB#show ip route
查看接口配置:
RouterA#show interfaces serial 4/0 RouterB#show interfaces serial 4/0
测试网络连通性
RouterA测试:
RouterA#ping 10.1.1.1 RouterA#ping 10.2.2.1
RouterB测试:
RouterB#ping 172.16.1.1 RouterB#ping 172.16.2.1
这些命令涵盖了实验中所有关键的配置步骤,包括路由器的命名、接口IP地址配置、时钟频率设置、Loopback接口配置、静态路由配置、路由表和接口状态查看以及网络连通性测试。
1. 配置路由器的名称、接口 IP 地址和时钟
R3740#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R3740(config)#hostname RouterA !配置路由器的名称
RouterA(config)#
RouterA(config)#interface serial 4/0 !进入端口 S4/0 的接口配置模式
RouterA(config-if)#clock rate 512000 !设置串口的时钟
RouterA(config-if)#ip address 192.168.2.1 255.255.255.0 !设置端口IP
RouterA(config-if)#no shutdown !开启端口
RouterA(config-if)#exit
RouterA(config)#
RouterA(config)#interface loopback 0 !设置 Loopback 端口用于测试
RouterA(config-if)#Sep 15 01:05:02 RouterA %7:%LINE PROTOCOL CHANGE:
Interface Loopback 0, changed state to UP
RouterA(config-if)#ip address 172.16.1.1 255.255.255.0
RouterA(config-if)#exit
RouterA(config)#
RouterA(config)#interface loopback 1
RouterA(config-if)#Sep 15 01:05:31 RouterA %7:%LINE PROTOCOL CHANGE:
Interface Loopback 1, changed state to UP
RouterA(config-if)#ip address 172.16.2.1 255.255.255.0
RouterA(config-if)#exit
R3740#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R3740 (config)#hostname RouterB
RouterB(config)#
RouterB(config)#interface serial 4/0
RouterB(config-if)#ip address 192.168.2.2 255.255.255.0
RouterB(config-if)#no shutdown
RouterB(config-if)#exit
RouterB(config)#
RouterB(config)#interface loopback 0
RouterB(config-if)#Aug 22 03:03:36 RouterB %7:%LINE PROTOCOL CHANGE:
Interface Loopback 0, changed state to UP
RouterB(config-if)#ip address 10.1.1.1 255.255.255.0
RouterB(config-if)#exit
RouterB(config)#
RouterB(config)#interface loopback 1
RouterB(config-if)#Aug 22 03:04:03 RouterB %7:%LINE PROTOCOL CHANGE:
Interface Loopback 1, changed state to UP
RouterB(config-if)#ip address 10.2.2.1 255.255.255.0
RouterB(config-if)#exit
2. 测试网络连通性
RouterA#ping 10.1.1.1
RouterA#ping 10.2.2.1
在配置过程中,我们确保了每个接口都有正确的 IP 地址和子网掩码,并且接口处于激活状态。对于串口连接,我们设置了时钟频率,因为这是 DCE 设备的要求。Loopback 接口用于模拟子网,以便在不实际连接物理网络的情况下测试路由配置。
由于此时尚未配置静态路由,因此这些ping命令应该都未能成功。这表明在没有静态路由的情况下,不同子网之间的通信是不成功的。
RouterB#ping 172.16.1.1
RouterB#ping 172.16.2.1
由于此时尚未配置静态路由,因此这些ping命令应该都未能成功。这表明在没有静态路由的情况下,不同子网之间的通信是不成功的。
3. 配置静态路由
RouterA(config)#ip route 10.1.1.0 255.255.255.0 192.168.2.2
!设置到子网 10.1.1.0 的静态路由,采用下一跳的方式
RouterA(config)#ip route 10.2.2.0 255.255.255.0 s4/0
!设置到子网 10.2.2.0 的静态路由,采用出站端口的方式
RouterB(config)#ip route 172.16.1.0 255.255.255.0 192.168.2.1
!设置到子网 10.1.1.0 的静态路由,采用下一跳的方式
RouterB(config)#ip route 172.16.2.0 255.255.255.0 s4/0
!设置到子网 10.2.2.0 的静态路由,采用出站端口的方式
4. 查看路由表和接口配置
RouterA#show ip route
(请截图说明 :以下一跳方式配置的静态路由和以出站端口方式配置的静态路由, 在路由表中的显示方式有什么不一样?)
通过show ip route命令,我们可以看到静态路由已经添加到路由表中。路由表中显示我们刚刚配置的静态路由,包括目的网络、子网掩码、下一跳地址或出站接口。
下一跳方式配置的静态路由会显示下一跳地址,而出站端口方式配置的静态路由会显示出站接口。
RouterA#show interfaces serial 4/0
(请给出接口配置的结果截图,并表述你的理解)
通过show interfaces serial 4/0命令,我们可以看到串口的配置信息,包括IP地址和时钟设置。接口配置的查看帮助我们确认物理连接的设置是否正确。
RouterB#show ip route
(请给出路由表的信息截图,并表述你的理解)
同理RouterA
RouterB#show interfaces serial 4/0
(请给出接口配置的结果截图,并表述你的理解)
同理RouterA
5. 测试网络连通性
RouterA#ping 10.1.1.1
在配置了静态路由之后,我们再次使用 ping 命令测试了网络连通性。这次,预期 ping 命令会成功,因为静态路由已经建立了不同子网之间的通信路径。
RouterA#ping 10.2.2.1
在配置了静态路由之后,我们再次使用 ping 命令测试了网络连通性。这次,预期 ping 命令会成功,因为静态路由已经建立了不同子网之间的通信路径。
RouterB#ping 172.16.1.1
在配置了静态路由之后,我们再次使用 ping 命令测试了网络连通性。这次,预期 ping 命令会成功,因为静态路由已经建立了不同子网之间的通信路径。
RouterB#ping 172.16.2.1
在配置了静态路由之后,我们再次使用 ping 命令测试了网络连通性。这次,预期 ping 命令会成功,因为静态路由已经建立了不同子网之间的通信路径。
四、实验总结
本次实验的主要目的是理解静态路由的工作原理,并掌握如何在网络设备上配置静态路由以实现不同子网间的通信。通过亲自动手操作,我们旨在深入理解路由器如何根据静态路由表转发数据包,以及静态路由在小型或特定网络环境中的应用。
实验结果表明,静态路由配置成功后,不同子网间的 ping 测试均能成功,证明了静态路由配置的正确性和网络连通性的实现。在查看路由表时,我们观察到静态路由条目清晰地列出了目的网络、子网掩码、下一跳地址或出站接口,这与我们的配置相符。
实验中的关键点和难点有:时钟频率的设置:在串口连接中,必须在DCE端设置时钟频率,这是实验中的一个关键点。双向静态路由配置:为了实现双向通信,必须在两台路由器上都配置静态路由。这是一个容易遗漏的点,也是实验中的一个难点。路由表的理解:理解路由表中的条目如何指导数据包的转发,对于掌握静态路由至关重要。
通过本次实验,我不仅学会了如何配置静态路由,还深入理解了路由器如何根据路由表进行数据包的转发。静态路由虽然配置简单,但它的局限性也很明显,例如在大型或经常变化的网络中,静态路由的手动配置会变得非常繁琐且难以管理。
在实际应用中,静态路由通常与其他动态路由协议结合使用,以适应不同的网络需求和环境。例如,在一些特定的网络环境中,如企业内部的默认路由配置,静态路由提供了一种简单而有效的解决方案。
本次静态路由配置实验不仅让我们掌握了静态路由的配置方法,还加深了对网络路由原理的理解。通过实践,我们更加明白了静态路由在网络设计和维护中的作用和限制,为未来处理更复杂的网络问题打下了坚实的基础。
相关文章:

【计算机网络】课程 实验五 静态路由配置
实验五 静态路由配置 一、实验目的 理解静态路由的工作原理,掌握如何配置静态路由。 二、实验分析与设计 【背景描述】 假设校园网分为 2 个区域,每个区域内使用 1 台路由器连接 2 个子网, 现要在路由器上 做适当配置,实现校…...
基于单片机的数字气压计设计
摘要:在嵌入式技术快速发展过程中,智能测量仪器被广泛应用于工业生产以及人们日常生活领域。数字气压计在实际应用中,利用气压传感器检测环境中的压力大小,便于实现对设备进行智能化的控制操作。数字气压计在气象监测、矿产开采、科学实验等环…...
【Docker项目实战】使用Docker部署Typemill轻量级平面文件CMS
【Docker项目实战】使用Docker部署Typemill轻量级平面文件CMS 一、Typemill介绍1.1 Typemill简介1.2 主要特点1.3 主要使用场景二、本次实践规划2.1 本地环境规划2.2 本次实践介绍三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本四、下载…...
react ts 定义基本类型,组件通过ref调用时类型提示
记录,以防忘记 子组件 import React, { forwardRef, Ref, useImperativeHandle, useState } from react;// 类型定义方式1 interface IProps {/**参数1 */params1: number | string | undefined/**参数2 */params2: number | string | undefined/**方法 */openDia…...
二十三种设计模式-原型模式
原型模式(Prototype Pattern)是一种创建型设计模式,它通过拷贝现有的实例来创建新的实例,而不是通过新建实例。这种方式可以避免复杂的构造过程,同时还能保持对象的创建和使用分离,提高系统的灵活性和扩展性…...

提升汽车金融租赁系统的效率与风险管理策略探讨
内容概要 在汽车金融租赁系统这个复杂的生态中,提升整体效率是每个企业都渴望达成的目标。首先,优化业务流程是实现高效运行的基础。通过分析目前的流程,找出冗余环节并进行简化,能够帮助企业缩短审批时间,提高客户满…...

Spring Framework 5.3.x源码构建 (jdk-1.8, gradle 7.5.1, idea2024.3)
1、下载jdk安装并配置环境变量(自行百度) https://www.oracle.com/java/technologies/downloads/#java8 2、下载spring-framework源码,切换分支到5.3.x https://github.com/spring-projects/spring-framework.git 备用地址 https://gitco…...
leetcode 2241. 设计一个 ATM 机器 中等
一个 ATM 机器,存有 5 种面值的钞票:20 ,50 ,100 ,200 和 500 美元。初始时,ATM 机是空的。用户可以用它存或者取任意数目的钱。 取款时,机器会优先取 较大 数额的钱。 比方说,你想…...

IO模型与NIO基础
File类 File类主要是JAVA为文件这块的操作(如删除、新建等)而设计的相关类File类的包名是java.io,其实现了Serializable, Comparable两大接口以便于其对象可序列化和比较 创建一个文件/文件夹 删除文件/文件夹 获取文件/文件夹 判断文件/文件夹是否存在 对文件夹进…...

上门按摩系统架构与功能分析
一、系统架构 服务端:Java(最低JDK1.8,支持JDK11以及JDK17)数据库:MySQL数据库(标配5.7版本,支持MySQL8)ORM框架:Mybatis(集成通用tk-mapper,支持…...
ubuntu安装ssh9.2
删除旧版本: dpkg --list|grep ssh apt remove sshwget https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.2p1.tar.gz tar xzvf openssh-9.2p1.tar.gz cd openssh-9.2p1 #下载依赖#开始编译安装 ./configure && make && make inst…...
linux wsl配置 redis远程连接
✅ 1. 修改 Redis 配置文件 在 WSL 的 Redis 配置文件中,找到 redis.conf 或 /etc/redis/redis.conf 文件,编辑以下配置项: ➡️ 更新 bind 配置项 将 bind 127.0.0.1 ::1 修改为: bind 0.0.0.0这样,Redis 将监听所…...
JVM 优化指南
JVM 优化指南 1. JVM 参数配置 1.1 基础参数配置 设置堆内存大小 -Xms2048m -Xmx2048m 设置新生代大小 -Xmn1024m 设置元空间大小 -XX:MetaspaceSize256m -XX:MaxMetaspaceSize256m 设置线程栈大小 -Xss512k1.2 垃圾回收器配置 使用 G1 垃圾回收器 -XX:UseG1GC 设置期望停顿…...

关机重启后,GitLab服务异常
整理机房,关闭了所有主机重新上架。 上架后开机,所有主机硬件启动正常。 其中一台GitLab服务器启动正常,使用gitlab-ctl status查看服务业正常。 但使用web登陆却失败,如下图: 反复测试,发现无论使用正确密码还是错误密码都是同样的提示。很大可能是数据库的问题。 使…...

谷粒商城-高级篇完结-Sleuth+Zipkin 服务链路追踪
1、基本概念和整合 1.1、为什么用 微服务架构是一个分布式架构,它按业务划分服务单元,一个分布式系统往往有很多个服务单元。由于服务单元数量众多,业务的复杂性,如果出现了错误和异常,很难去定位 。主要体现在&#…...
C语言基本知识复习浓缩版:标识符、函数、进制、数据类型
C语言基本知识复习浓缩版:标识符、函数、进制、数据类型 【c语言期末复习3小时速成【完整全集】期末速成含考试题c语言期末速成突击复习C语言补考C语言期末大一】 B站看到的复习C语言视频,感觉非常棒,就跟着进行了一下学习。众所周知&#…...
selenium已经登陆了 我怎么查看 网页 在fRequest xhr 的数据呢
在使用 Selenium 登录网页后,查看网页的 XHR 请求数据可以通过以下几种方法: ### 1. 使用浏览器开发者工具 - **手动查看**: - 打开浏览器的开发者工具(按 F12 或右键点击页面元素选择“检查”)。 - 切换到“Netw…...
Bash语言的数据库编程
Bash语言的数据库编程 引言 在现代软件开发中,数据库编程是一个不可或缺的部分。从小型项目到大型系统,数据库通常是存储和管理数据的核心。然而,许多开发者往往将焦点放在高级编程语言如Python、Java或C#上,忽视了Shell脚本语言…...

易支付二次元网站源码及部署教程
易支付二次元网站源码及部署教程 引言 在当今数字化时代,二次元文化逐渐成为年轻人生活中不可或缺的一部分。为了满足这一庞大用户群体的需求,搭建一个二次元主题网站显得尤为重要。本文将为您详细介绍易支付二次元网站源码的特点及其部署教程…...
ios脚本巨魔商店多巴胺越狱基本操作教程
准备工作 确认设备兼容性:A9-A11(iPhone6s-X):iOS15.0-16.6.1;A12-A14(iPhoneXR-12PM):iOS15.0-16.5.1;A15-A16(iPhone13-…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...

利用最小二乘法找圆心和半径
#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...

el-switch文字内置
el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
06 Deep learning神经网络编程基础 激活函数 --吴恩达
深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...
浅谈不同二分算法的查找情况
二分算法原理比较简单,但是实际的算法模板却有很多,这一切都源于二分查找问题中的复杂情况和二分算法的边界处理,以下是博主对一些二分算法查找的情况分析。 需要说明的是,以下二分算法都是基于有序序列为升序有序的情况…...