当前位置: 首页 > news >正文

计算机网络 实验七 NAT配置实验

一、实验目的

        通过本实验理解网络地址转换的原理和技术,掌握扩展NAT/NAPT设计、配置和测试。

二、实验原理

        NAT配置实验的原理主要基于网络地址转换(NAT)技术,该技术用于将内部私有网络地址转换为外部公有网络地址,从而实现内网主机与外网的通信。以下是关于NAT配置实验原理的详细解释:

        NAT概述:NAT是一种网络技术,它允许内部网络中的设备使用私有IP地址,同时通过一个或多个公共IP地址访问外部网络。当内部网络中的主机需要访问外部网络时,NAT设备(如路由器)会将其私网地址转换为公网地址,从而在外部网络上进行通信。

        NAT工作原理:NAT设备维护一个转换表,记录内部私有地址与外部公有地址之间的映射关系。当内部主机发送数据包到外部网络时,NAT设备会检查数据包的源IP地址,并在转换表中查找对应的公网地址,然后将数据包的源IP地址替换为公网地址。同时,NAT设备还会记录数据包的端口号,以便在返回数据包时能够正确地将其转发给原始的内部主机。

        NAT分类:静态NAT:将一个固定的内部私有IP地址映射到一个固定的外部公有IP地址。动态NAT:也称为PAT(端口地址转换),它允许多个内部私有IP地址共享一个外部公有IP地址的不同端口。Easy IP:是NAPT的一种方式,直接借用路由器出接口IP地址作为公网地址,将不同的内部地址映射到同一公有地址的不同端口号上。

三、实验环境

        Cisco Router 2620XM     3台

        Catalyst Switch 2950-24 6台

        Hub Hub-PT 1台

        PC PC-PT 5台

        Server Server-PT 4台

四、实验内容

【实验拓扑和参数配置】

(一)首先按照下图构建网络拓扑

(二)配置参数

参照下表进行参数配置,具体步骤见下文。

路由器配置信息(子网掩码均为255.255.255.0)

主机名

类型

IP 地址

RIP路由网络

时钟频率

InsideRouter

2620XM

Fa0/0: 192.168.1.2

Eth1/0: 192.168.2.1

Eth1/1: 192.168.3.1

Eth1/2: 192.168.4.1

Eth1/3: 192.168.5.1

192.168.1.0

192.168.2.0

192.168.3.0

192.168.4.0

192.168.5.0

EageRouter

2620XM

Fa0/0: 192.168.1.1

Ser0/0: 218.58.59.91

192.168.1.0

218.58.59.0

OutsideRouter

2620XM

Fa0/0: 218.58.100.1

Ser0/0: 218.58.59.90

218.58.59.0

218.58.100.0

9600

PC和Server配置信息(子网掩码均为255.255.255.0)

主机名

IP 地址

默认网关

所属网段

PC0

192.168.2.2

192.168.2.1

192.168.2.0

PC1

192.168.2.3

192.168.2.1

192.168.2.0

PC2

192.168.3.2

192.168.3.1

192.168.3.0

PC3

192.168.4.2

192.168.4.1

192.168.4.0

PC4

192.168.5.2

192.168.5.1

192.168.5.0

PC5

218.58.100.2

218.58.100.1

218.58.100.0

WWW

192.168.1.3

192.168.1.1

192.168.1.0

FTP

192.168.1.4

192.168.1.1

192.168.1.0

SMTP

192.168.1.5

192.168.1.1

192.168.1.0

Outside WWW

218.58.100.3

218.58.100.1

218.58.100.0

交换机和Hub配置信息

主机名

类型

所属网段

备注

Manage

2950-24

192.168.2.0

所属校园网管理网段

Administration

2950-24

192.168.3.0

所属校园网行政网段

Teach

2950-24

192.168.4.0

所属校园网教学网段

Student

2950-24

192.168.5.0

所属校园网宿舍网段

Server Area

2950-24

192.168.1.0

DMZ区

Outside

2950-24

218.58.100.0

所属校外网

Hub 0

Hub-PT

Hub-PT

【实验步骤】

1. 配置静态网络地址转换并完成相应的测试

将192.168.1.3 静态NAT到218.58.59.93。

配置路由器IP:

配置路由器RIP:

配置主机IP:

配置时钟频率:

配置服务器IP:

首先将192.168.1.3 静态转换到218.58.59.93并查看一下刚才的配置。

接下来我们进行测试,添加一个由PC5到218.58.59.93的Complex PDU格式如图所示:

在Simulation模式下我们跟踪该PDU如图所示:

图中PDU的Successful状态说明外网网段可以访问218.58.59.93上的HTTP资源。

在Simulation Panel-Event List中单击3.022s的EageRouter上的PDU,调出PDU Information对话框,在OSI Model选项卡中我们可以清楚的看到IP地址的转换过程,OSI Model下方的英文信息说明这一点。

2. 配置动态网络地址转换并完成相应的测试

将管理网段、行政网段的内部私有IP动态NAT到218.58.59.95和218.58.59.96。

将管理网段(192.168.2.0)、行政网段(192.168.3.0)的内部私有IP动态转换到218.58.59.95和218.58.59.96。

建立两个Complex PDU格式如下图所示:

图中0号PDU和1号PDU的Successful状态分别说明管理网段和行政网段可以访问218.58.59.100.3上的HTTP资源。

用如下命令做进一步的验证:EdgeRouter#show ip nat translations 信息显示又增加了两个条目,正好是刚才进行的NAT地址转换。

分别调出两个数据包在EdgeRouter上的PDU Information 面板,在各自OSI Model选项卡中我们可以清楚的看到各自的Ip地址的转换过程,OSI Model下方的英文信息说明这一点。

五、实验思考

详细记录实验过程当中遇到的具体问题及阐述自己的解决方法。

        在连接设备的过程中,对于2620XM路由器,InsideRouter缺少Eth端口,EdgeRouter和OutsideRouter缺少Ser端口,导致无法连接。通过查找资料,发现可以在路由器的Physicial界面添加端口。在添加端口的过程中,需要先关闭路由器电源,对于InsideRouter,将NM-4E拖入Zoom in下面的黑色区域即可添加4个Eth端口;对于EdgeRouter和OutsideRouter,将WIC-2T拖入Original Size下面的两块黑色区域之一即可添加2个Ser端口,完成操作后开启路由器电源,等待片刻后端口添加完成。

        在设备连接完成后,不了解Cisco Packet Tracer软件如何操作,导致实验无法进行,查找资料后才了解了本次实验的基本操作:

        在右侧栏中添加Complex PDU

        在右下角进入Simulation模式

        在Realtime和Simulation的下方查看PDU状态

相关文章:

计算机网络 实验七 NAT配置实验

一、实验目的 通过本实验理解网络地址转换的原理和技术,掌握扩展NAT/NAPT设计、配置和测试。 二、实验原理 NAT配置实验的原理主要基于网络地址转换(NAT)技术,该技术用于将内部私有网络地址转换为外部公有网络地址,从…...

数据结构——排序算法第二幕(交换排序:冒泡排序、快速排序(三种版本) 归并排序:归并排序(分治))超详细!!!!

文章目录 前言一、交换排序1.1 冒泡排序1.2 快速排序1.2.1 hoare版本 快排1.2.2 挖坑法 快排1.2.3 lomuto前后指针 快排 二、归并排序总结 前言 继上篇学习了排序的前面两个部分:直接插入排序和选择排序 今天我们来学习排序中常用的交换排序以及非常稳定的归并排序 快排可是有多…...

【kafka04】消息队列与微服务之Kafka 图形工具

Kafka 在 ZooKeeper 里面的存储结构 topic 结构 /brokers/topics/[topic] partition结构 /brokers/topics/[topic]/partitions/[partitionId]/state broker信息 /brokers/ids/[o...N] 控制器 /controller 存储center controller中央控制器所在kafka broker的信息 消费者 /c…...

剖析前后端 API 接口参数设计:JSON 数据结构化全攻略

在当今软件开发领域,前后端分离架构已成为主流趋势。而 API 接口作为前后端之间数据交互的桥梁,其设计的合理性对系统的可维护性和扩展性起着至关重要的作用。JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式&…...

vue3 多种方式接受props,定义ref,reactive

定义props 1 第一种 interface AddType { dialogStudyVisible: boolean; } const props defineProps<AddType>(); 第二种 // const props defineProps({ // dialogStudyVisible:{ // type:Boolean, // default:false // } // }) 第三种 // const …...

逻辑处理器核心指纹修改

navigator.hardwareConcurrency的属性,可以用来获取CPU的逻辑处理器核心数。 1、navigator.hardwareConcurrency接口定义&#xff1a; third_party\blink\renderer\core\frame\navigator_concurrent_hardware.idl // https://html.spec.whatwg.org/C/#navigator.hardwarecon…...

如何制作项目网页

一、背景 许多论文里经常会有这样一句话Supplementary material can be found at https://hri-eu.github.io/Lami/&#xff0c;这个就是将论文中的内容或者补充视频放到一个网页上&#xff0c;以更好的展示他们的工作。因此&#xff0c;这里介绍下如何使用前人提供的模板制作我…...

mongodb/redis/neo4j 如何自己打造一个 web 数据库可视化客户端?

随笔 从千万粉丝“何同学”抄袭开源项目说起&#xff0c;为何纯技术死路一条&#xff1f; 数据源的统一与拆分 监控报警系统的指标、规则与执行闭环 我们的系统应该配置哪些监控报警项&#xff1f; 监控报警系统如何实现自监控? java 老矣&#xff0c;尚能饭否&#xff…...

1、正则表达式

grep匹配 grep用来过滤文本内容&#xff0c;以匹配要查询的结果。 grep root /etc/passwd&#xff1a;匹配包含root的行 -m 数字&#xff1a;匹配几次后停止 -v&#xff1a;取反-i&#xff1a;忽略字符的大小写&#xff0c;默认的&#xff0c;可以不加-n&#xff1a…...

Airsim安装问题:This project was made with a different version of the Unreal Engine.

本文记录如何在 Ubuntu 18.04 系统中配置 AirSim 和 Unreal Engine 4.27&#xff0c;并成功打开默认的 Blocks 环境项目。 环境说明 系统&#xff1a;Ubuntu 18.04Unreal Engine 版本&#xff1a;4.27AirSim&#xff1a;主分支文件路径&#xff1a; Unreal Engine&#xff1a…...

java八股-分布式服务的接口幂等性如何设计?

文章目录 接口幂等token Redis分布式锁 原文视频链接&#xff1a;讲解的流程特别清晰&#xff0c;易懂&#xff0c;收获巨大 【新版Java面试专题视频教程&#xff0c;java八股文面试全套真题深度详解&#xff08;含大厂高频面试真题&#xff09;】 https://www.bilibili.com/…...

vscode python code runner执行乱码

打开vscode code runner插件配置&#xff0c;如图所示&#xff1a; 然后在setting.json修改运行python的默认命令&#xff1a; 将原来 替换成 "python":"set PYTHONIOENCODINGutf8 && python", 参考&#xff1a;Vscode——python环境输出中文乱…...

Java中的继承详解

在Java编程中&#xff0c;继承&#xff08;Inheritance&#xff09;是一种面向对象编程&#xff08;OOP&#xff09;的核心概念&#xff0c;它允许一个类&#xff08;称为子类或派生类&#xff09;继承另一个类&#xff08;称为父类或基类&#xff09;的属性和方法。通过继承&a…...

kafka进阶_2.存储消息

文章目录 一、存储消息介绍二、副本同步2.1、数据一致性2.2、HW在副本之间的传递 如果想了解kafka基础架构和生产者架构可以参考 kafka基础和 Kafka进阶_1.生产消息。 一、存储消息介绍 数据已经由生产者Producer发送给Kafka集群&#xff0c;当Kafka接收到数据后&#xff0c…...

如何启用本机GPU硬件加速猿大师播放器网页同时播放多路RTSP H.265 1080P高清摄像头RTSP视频流?

目前市面上主流播放RTSP视频流的方式是用服务器转码方案&#xff0c;这种方案的好处是兼容性更强&#xff0c;可以用于不同的平台&#xff0c;比如&#xff1a;Windows、Linux或者手机端&#xff0c;但是缺点也很明显&#xff1a;延迟高、播放高清或者同时播放多路视频视频容易…...

如何更好地设计SaaS系统架构

SaaS&#xff08;Software as a Service&#xff09;架构设计的核心目标是满足多租户需求、支持弹性扩展和高性能&#xff0c;同时保持低成本和高可靠性。一个成功的SaaS系统需要兼顾技术架构、资源利用、用户体验和商业目标。本文从以下几个方面探讨如何更好地设计SaaS系统架构…...

表征对齐在训练DiT模型中的重要性

Diffusion Models专栏文章汇总&#xff1a;入门与实战 前言&#xff1a;训练过DiT模型的读者们肯定有所体会&#xff0c;相比于UNet模型训练难度大了很多&#xff0c;模型不仅很难收敛&#xff0c;而且非常容易训崩&#xff0c;其中一个很重要的原因是没有进行表征对齐&#xf…...

Qt中CMakeLists.txt解释大全

‌Qt从Qt5.15版本开始正式推荐使用CMake进行项目管理‌。 在Qt 5.15之前&#xff0c;虽然可以使用CMake进行构建&#xff0c;但Qt官方更推荐使用qmake。 然而&#xff0c;从Qt5.15开始&#xff0c;Qt官方正式推荐使用CMake作为主要的构建系统&#xff0c;并在Qt 6中进一步加强了…...

【在 PyTorch 中使用 tqdm 显示训练进度条,并解决常见错误TypeError: ‘module‘ object is not callable】

在 PyTorch 中使用 tqdm 显示训练进度条&#xff0c;并解决常见错误TypeError: module object is not callable 在进行深度学习模型训练时&#xff0c;尤其是在处理大规模数据时&#xff0c;实时了解训练过程中的进展是非常重要的。为了实现这一点&#xff0c;我们可以使用 tq…...

数据结构-堆的实现和应用

目录 1.堆的概念 2.堆的构建 3.堆的实现 4.堆的功能实现 4.1堆的初始化 4.2堆的销毁 4.3堆的插入 4.3.1向上调整 4.4堆的删除 4.4.1向下调整法 ​编辑4.5取堆顶 5. 向上调整法和向下调整法比较 6.堆的应用 6.1TOP-K问题 6.2TOP-K思路 6.2.1用前n个数据来建堆 6.…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天&#xff0c;Spring AI 作为 Spring 生态系统的新生力量&#xff0c;正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务&#xff08;如 OpenAI、Anthropic&#xff09;的无缝对接&…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

ArcGIS Pro制作水平横向图例+多级标注

今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作&#xff1a;ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等&#xff08;ArcGIS出图图例8大技巧&#xff09;&#xff0c;那这次我们看看ArcGIS Pro如何更加快捷的操作。…...

稳定币的深度剖析与展望

一、引言 在当今数字化浪潮席卷全球的时代&#xff0c;加密货币作为一种新兴的金融现象&#xff0c;正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而&#xff0c;加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下&#xff0c;稳定…...

深度学习习题2

1.如果增加神经网络的宽度&#xff0c;精确度会增加到一个特定阈值后&#xff0c;便开始降低。造成这一现象的可能原因是什么&#xff1f; A、即使增加卷积核的数量&#xff0c;只有少部分的核会被用作预测 B、当卷积核数量增加时&#xff0c;神经网络的预测能力会降低 C、当卷…...

以光量子为例,详解量子获取方式

光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学&#xff08;silicon photonics&#xff09;的光波导&#xff08;optical waveguide&#xff09;芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中&#xff0c;光既是波又是粒子。光子本…...

纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join

纯 Java 项目&#xff08;非 SpringBoot&#xff09;集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...