在Cisco Packet Tracer上配置NAT
目录
- 前言
- 一、搭建网络拓扑
- 1.1 配置PC机
- 1.2 配置客户路由器
- 1.3 配置ISP路由器
- 二、配置NAT
- 2.1 在客户路由器中配置NAT
- 2.2 测试是否配置成功
- 总结
前言
本篇文章是在了解NAT的原理基础上,通过使用Cisco Packet Tracer 网络模拟器实现模拟对NAT的配置,以加深对NAT的理解。
一、搭建网络拓扑

1.1 配置PC机
| 主机名 | IP地址 | 子网掩码 | 网关IP |
|---|---|---|---|
| PC3 | 192.168.10.2 | 255.255.255.0 | 192.168.10.1 |
| PC4 | 192.168.10.3 | 255.255.255.0 | 192.168.10.1 |
PC3的配置如下:

PC4的配置如下

测试是否配置成功:

PC3成功ping通PC4,说明配置成功。
1.2 配置客户路由器
| 接口名 | IP地址 | 子网掩码 |
|---|---|---|
| fa0/0 | 192.168.10.1 | 255.255.255.0 |
| fa0/1 | 66.1.1.1 | 255.255.255.0 |
配置接口fa0/0:
1. 进入特权模式
命令:enable
Router>enable
Router#2. 进入配置模式
命令:configure
Router#configure
Router(config)#3. 进入配置接口fa0/0
命令:interface fa0/0
Router(config)#interface fa0/04. 为接口配置ip地址
命令:ip address ip地址 子网掩码
Router(config-if)#ip address 192.168.10.1 255.255.255.0
5. 启动接口
命令:no shutdown
Router(config-if)#no shutdown
配置接口fa0/1:
退出接口配置
命令:exit
Router(config-if)#exit
Router(config)#1. 配置接口fa0/1
Router(config)#interface fa0/1
Router(config-if)#2. 配置ip
Router(config-if)#ip address 64.1.1.1 255.255.255.03. 开启接口
Router(config-if)#no shutdown
测试fa0/0是否配置成功,利用PC3ping fa0/0的IP地址。

成功ping通,说明配置成功。
测试fa0/1是否配置成功,利用PC3 ping fa0/1的IP地址

成功ping通,说明配置成功。
疑问:为什么PC3可以ping通fa0/1呢?
这就涉及到两个不同子网进行通信的原理了。过程如下:
- PC3 执行ping 66.1.1.1,发现这个IP和自己不在同一个网段。PC3向网关fa0/0发送一个ARP包,获取网关fa0/0的MAC地址;然后将这个MAC地址作为数据包的目的MAC地址,将数据包发给网关fa0/0
- 网关fa0/0收到这个数据包之后,根据查看数据包的目标IP,然后查看路由表,发现这个数据包属于66.1.1.0这个网段,然后将目的MAC改为fa0/1的MAC,网关fa0/0将这个数据包发给fa0/1。
- 网关fa0/1收到这个数据包后,发送一个应答包给PC3。
1.3 配置ISP路由器
| 接口名字 | IP地址 | 子网掩码 |
|---|---|---|
| fa0/0 | 66.1.1.254 | 255.255.255.0 |
配置如下:
1. 进入特权模式
命令:enable
Router>enable
Router#2. 进入配置模式
命令:configure
Router#configure
Router(config)#3. 进入配置接口fa0/0
命令:interface fa0/0
Router(config)#interface fa0/04. 为接口配置ip地址
命令:ip address ip地址 子网掩码
Router(config-if)#ip address 64.1.1.254 255.255.255.0
5. 启动接口
命令:no shutdown
Router(config-if)#no shutdown
测试是否配置成功,利用客户路由器 ping ISP路由器

以上,则成功搭建这个简单的网络拓扑。
二、配置NAT
在配置NAT之前,问:为什么要配置NAT呢?
在回答这个问题前,可以尝试让PC3去访问ISP路由器,看看结果如何。

结果发现,PC3无法访问ISP路由器。那么怎样才能访问呢?
通过测试发现,客户路由器是可以访问ISP路由器的,那么怎样可以借助客户路由器访问到ISP路由器呢?
答案:通过NAT。
这里就不讨论NAT的原理,有兴趣可查看另一篇文章: https://blog.csdn.net/pyc68/article/details/139420920?spm=1001.2014.3001.5501
2.1 在客户路由器中配置NAT
在客户路由器配置NAT的具体步骤如下:
- 创建ACL,用于过滤数据包,即哪些IP地址需要进行地址转换。
- 创建一个NAT地址池(公网IP地址池)。
- 把创建的ACL与NAT地址池进行映射。
- 将私网网关设置为内网口,将外网网关设置为外网口
配置的信息如下:
1. 创建ACL
命令:access-list acl编号 permit 私网IP网段 反向掩码
Router(config)#access-list 1 permit 192.168.10.0 0.0.0.255
Router(config)#2. 创建公网ip地址池
命令:ip nat pool 地址池名字 公网ip起始地址 公网ip结束地址 netmask 公网ip掩码这里在地址池创建66.1.1.2~66.1.1.5 四个公网IP,为地址转换提供
Router(config)#ip nat pool natpool 66.1.1.2 66.1.1.5 netmask 255.255.255.0
Router(config)#3. acl与地址池进行映射
命令:ip nat inside source list acl编号 pool 地址池名字 overload注:overload意思是开启端口映射
Router(config)#ip nat inside source list 1 pool natpool overload
Router(config)#4. 将fa0/0口设置为内网口
Router(config)#interface fa0/0
Router(config-if)#ip nat inside
Router(config-if)#
Router(config-if)#exit
Router(config)#5. 将fa0/1设置为外网口
Router(config)#interface fa0/1
Router(config-if)#ip nat outside
2.2 测试是否配置成功
再用PC3访问ISP路由器,查看是否成功

查看PC4是否可以访问ISP路由器

查看客户路由器表的NAT转换表

客户路由器根据nat转换表可以将ISP路由器的回包发给私网的对应主机。
总结
NAT这个技术可以将私网IP转换成公网IP后,实现访问互联网的功能。
私网IP无法直接访问互联网的本质原因是ISP路由器上没有关于私网IP的路由信息。
相关文章:
在Cisco Packet Tracer上配置NAT
目录 前言一、搭建网络拓扑1.1 配置PC机1.2 配置客户路由器1.3 配置ISP路由器 二、配置NAT2.1 在客户路由器中配置NAT2.2 测试是否配置成功 总结 前言 本篇文章是在了解NAT的原理基础上,通过使用Cisco Packet Tracer 网络模拟器实现模拟对NAT的配置,以加…...
Web前端工程师的前景:挑战与机遇并存
Web前端工程师的前景:挑战与机遇并存 随着互联网的飞速发展和数字化转型的深入推进,Web前端工程师的前景日益广阔且充满挑战。作为互联网技术的核心力量之一,前端工程师的角色越来越重要,但同时也面临着技术更新迅速、市场需求多…...
MySQL—多表查询—联合查询
一、引言 之前学习了连接查询。现在学习联合查询。 union:联合、联盟 对于union查询,就是把多次查询的结果合并起来,形成一个新的查询结果集 涉及到两个关键字:union 和 union all 注意: union 会把上面两个SQL查询…...
2024 Jiangsu Collegiate Programming Contest E. Divide 题解 主席树
Divide 题目描述 Given an integer sequence a 1 , a 2 , … , a n a_1,a_2,\ldots,a_n a1,a2,…,an of length n n n. For an interval a l , … , a r a_l,\ldots,a_r al,…,ar in this sequence, a Reduce operation divides the maximum value of the inter…...
C# WPF入门学习主线篇(十五)—— DockPanel布局容器
C# WPF入门学习主线篇(十五)—— DockPanel布局容器 欢迎来到C# WPF入门学习系列的第十五篇。在前几篇文章中,我们探讨了 Canvas、StackPanel 和 WrapPanel 布局容器及其使用方法。本篇博客将介绍另一种强大且常用的布局容器——DockPanel。…...
基于SVPWM矢量控制的无速度传感器电机控制系统simulink建模与仿真
目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于SVPWM矢量控制的无速度传感器电机控制系统simulink建模与仿真,包括电机,SVPWM模块,矢量控制器模块等。 2.系统仿真结果 3.核心程序与模…...
Linux操作系统:Zookeeper在虚拟环境下的安装与部署
将 Zookeeper 安装到指定目录 // 将zookeeper解压到安装目录 $ tar –zxvf zookeeper-3.4.10.tar.gz –C /usr/local $ mv /usr/local/zookeeper-3.4.10.tar.gz /usr/local/zookeeper 设置 zookeeper 配置文件 // 创建 data 数据目录 $ mkdir /usr/local/zookeeper/data // …...
决策树Decision Tree
目录 一、介绍发展优点缺点基本原理 二、熵1、熵2、条件熵3、信息增益4、信息增益率 三、基尼系数四、ID3算法1、建树过程2、优点3、缺点 五、C4.51、二分法处理连续变量1、流程:2、示例 2、缺点 六、CART1、连续数据处理2、离散数据处理3、CART回归原理1、均方误差…...
1奇函数偶函数
文章目录 自变量有理化奇偶性周期性初等函数 自变量 自变量是x,这个还挺奇怪,记住就好 y f ( e x 1 ) yf(e^x1) yf(ex1) 里面 e x e^x ex 只算中间变量,自变量是x 做这些题,想到了以前高中的时候做数学题,不够扎实…...
什么情况下需要配戴助听器
以下几种情况需要考虑配戴助听器: 1、听力无波动3个月以上的感音神经性听力障碍。如:先天性听力障碍、老年性听力障碍、噪声性听力障碍、突聋的稳定期等,均可选配合适的助听器。 2、年龄方面。使用助听器没有严格的年龄限制,从出生数周的婴…...
Java 基础面试300题 (231-260)
Java 基础面试300题 (231-260) 231 String::toUpperCase是什么类型的方法引用? String::toUpperCase是任意方法引用的示例。它指的是String 类的toUpperCase方法,但不是指任何特定对象。 通常在遍历集合或流时使用。例如&#x…...
Hadoop3:MapReduce源码解读之Map阶段的Job任务提交流程(1)
3、Job工作机制源码解读 用之前wordcount案例进行源码阅读,debug断点打在Job任务提交时 提交任务前,建立客户单连接 如下图,可以看出,只有两个客户端提供者,一个是YarnClient,一个是LocalClient。 显然&a…...
Linux环境---在线安装MYSQL数据库
Linux环境—在线安装MYSQL数据库 一、使用步骤 1.安装环境 Mysql 驱动 8.0 需要 jdk1.8 才行。 JDK版本:1.8 参考文档 MYSQL版本:8.0.2 下载链接: https://pan.baidu.com/s/1MwXIilSL6EY3OuS7WtpySA?pwdg263 操作系统:CentOS 1.1 建立存…...
git本地配置及IDEA下Git合并部分文件
目录 1、IDEA 下 Git 合并部分文件 2、分支合并忽略特定文件步骤 3、git本地配置 1、IDEA 下 Git 合并部分文件 1.1Git 下存在两个分支,foo 和 bar 分支,想要把 bar 分支上的部分文件合并到 foo 分支: 首先切换到 foo 分支,点击右下角的 …...
安徽京准 NTP时钟同步服务器具体配置方法是什么?
安徽京准 NTP时钟同步服务器具体配置方法是什么? 安徽京准 NTP时钟同步服务器具体配置方法是什么? 可以使用特权终结点 (PEP) 来更新 Azure Stack Hub 中的时间服务器。 使用可解析为两个或更多个 NTP(网络时间协议)服务器 IP 地…...
微信小程序 画布canvas
属性说明 属性类型默认值必填说明最低版本typestring否指定 canvas 类型,支持 2d (2.9.0) 和 webgl (2.7.0)2.7.0canvas-idstring否canvas 组件的唯一标识符,若指定了 type 则无需再指定该属性1.0.0disable-scrollbooleanfalse否当在 canvas 中移动时且…...
leetcode-04-[24]两两交换链表中的节点[19]删除链表的倒数第N个节点[160]相交链表[142]环形链表II
一、[24]两两交换链表中的节点 重点:暂存节点 class Solution {public ListNode swapPairs(ListNode head) {ListNode dummyHeadnew ListNode(-1);dummyHead.nexthead;ListNode predummyHead;//重点:存节点while(pre.next!null&&pre.next.next…...
深入探讨 Java 18 的主要新特性,分析其设计理念和实际应用
Java 18 作为 Java 的最新版本,引入了一系列的新特性和改进,这些变化不仅提升了语言的性能和安全性,也为开发者提供了更多的工具和选项,简化了开发过程,提高了代码的可读性和维护性。本文将深入探讨 Java 18 的主要新特性,分析其设计理念和实际应用,帮助读者理解这些新特…...
qt4-qt5 升级(2)-GUI-UTF-8-GBK-QTextCode-字符集乱码
MFC与QT的消息机制的区别_qt信号槽机制与mfc的消息映射机制的区别-CSDN博客 1.QT4-QT5差别 kits构建 控件,信号与槽 ui修改好后点击编译会自动生成 ui_XXX.h 聚合的关系,不是拥有的关系。 QWidget 和QWindow有什么差别? 2.VS2019-QT5 构建…...
Qt Designer 生成的 .ui 文件转为 .py 文件并运行
1. 使用使用 PyUIC将 .ui 转 .py (1)打开命令行终端(可以用cmd,或pycharm 下面的 Terminal)。 (2)导航到包含.ui文件的目录。 cd 你的ui文件路径 (3)运行以下命令来…...
RE3SIM系统:3D真实感仿真数据生成技术解析
1. RE3SIM系统概述:3D真实感仿真数据生成新范式在机器人操作领域,获取高质量训练数据一直是制约算法发展的瓶颈。传统基于真实环境的示教数据采集不仅需要昂贵硬件支持,还依赖专业操作人员,单次任务采集成本可达数千元。RE3SIM系统…...
本地代码解释器:基于LLM与Docker沙箱的AI编程助手实现
1. 项目概述:一个本地化的代码解释器最近在GitHub上看到一个挺有意思的项目,叫Allen091080/local-code-interpreter。光看名字,很多开发者可能就会心一笑,这不就是想在本地复现类似ChatGPT Code Interpreter那种“对话式代码执行”…...
智慧工地起重机吊钩检测数据集VOC+YOLO格式1138张1类别
数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件)图片数量(jpg文件个数):1138标注数量(xml文件个数):1138标注数量(txt文件个数):1138标注类别…...
C盘空间管理完全指南:从清理到预防,根治飘红
你的C盘是否在不知不觉中已经飘红?在清理文件的路上,你是否曾因误删系统文件而追悔莫及? C盘告急的普遍困境 每当Windows系统运行缓慢,或安装新软件时弹出磁盘空间不足的提示,用户的第一反应往往是查看C盘使用情况。…...
霍尔效应绝对式双码道磁编码器【附电路】
✨ 长期致力于双码道多磁极编码器、硬件设计、误差仿真与校正、算法设计与优化研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)双码道多磁极磁场检测硬…...
Turms开发者定制指南:如何基于源码进行二次开发
Turms开发者定制指南:如何基于源码进行二次开发 【免费下载链接】turms 🕊️ The worlds most advanced open source instant messaging engine for 100K~10M concurrent users https://turms-im.github.io/docs 项目地址: https://gitcode.com/gh_mir…...
用Matplotlib heatmap分析你的数据:从农产品收成到商品销量的实战案例拆解
用Matplotlib heatmap解锁业务洞察:从农场到电商的数据可视化实战 热力图(heatmap)远不止是颜色方块的排列——它是数据与商业决策之间的视觉桥梁。想象一下,你面前有一张农场作物产量的热力图,颜色从深绿渐变到亮黄&a…...
PHP批量导出数据,CSV格式文件 - 支持几十万行数据无压力
目录 一、前言 二、解决方案 三、示例 一、前言 之前做数据批量导出一直都是用的PHPExcel插件,一个是由于现在PHPExcel已经不再维护了,一个是如果导出大批量数据,导出的表格就会提示数据损坏、文件不完整之类的提示,就是打不开…...
ClawSuite:模块化网络安全工具集在渗透测试中的实战应用
1. 项目概述:ClawSuite,一个被低估的网络安全工具集如果你在网络安全领域摸爬滚打了一段时间,尤其是在渗透测试或者红队评估的圈子里,你大概率听说过或者用过像 Metasploit、Nmap、Burp Suite 这些耳熟能详的“瑞士军刀”。但今天…...
Crystal语言Web框架实战:构建高性能API服务的轻量级方案
1. 项目概述:一个轻量级、高性能的Crystal语言Web框架最近在探索一些新兴的编程语言生态时,我注意到了Crystal语言,以及一个名为jvpflum/Crystal的GitHub仓库。乍一看这个标题,可能会让人有些困惑:这究竟是Crystal语言…...
