思科实现网络地址转换(NAT)和访问控制列表(ACL)和动态路由配置并且区分静态路由和动态路由配置。
实验拓扑(分为静态路由和动态路由两种)

静态路由互通

动态路由互通
实验背景
这个是想实现外网与内网的连接跟网络的探讨,最终实现互通以及使用并且在网络地址转换后能使用网络然后再这个基础上再配置访问控制列表和网络地址转换的的学习过程。
实验需了解的知识
完成这个之前需要知道会同网段,不同网段的ip互通的方法,以及A类、B类、C类、D类地址(私有地址),以及公有地址,接着还要知道,交换机与路由器的区别和使用场景情况,最后要知道网络地址转换(NAT)和访问控制列表(ACL)和动态路由配置并且区分静态路由和动态路由的基本原理和概念。
实验目的
- 配置静态路由
- 配置和验证网络地址转换(NAT)。
- 配置和验证访问控制列表(ACL)。
- 配置和验证动态路由(使用RIP协议)。
实验环境
- 设备:两个路由路由器,三个交换机,三个pc和一个服务器。
- 网络拓扑:如图所示包含两个内部网络(192.168.12.0/24 和 192.168.11.0/24)和一个ISP网络(56.34.112.0/28),看图片就知道了。
实验步骤
第一个实验:实现静态路由互通
1. 配置IP地址以及子网掩码和默认网关
根据如图所示配置相应的ip地址和子网掩码以及默认网关给PC机。

2.接着在路由器(网络地址转换点)和路由器(ISP)在对应接口下配置不同的默认网关和子网掩码并且no shutdown启动,这里我多搞了一个nat但是没开始用。
路由器(网络地址转换点)
网络地址转换点
enable
configure terminal
interface Fa0/0
ip address 192.168.12.254 255.255.255.0
ip nat inside
no shutdown
interface Fa0/1
ip address 192.168.11.254 255.255.255.0
ip nat inside
no shutdown
interface Se0/3/0
ip address 56.34.112.240 255.255.255.240
ip nat inside
no shutdown
路由器(ISP)
ISP运营商
enable
configure terminal
interface Se0/3/0
ip address 56.34.112.2 255.255.255.240
no shutdown
interface Fa0/0
ip address 34.103.25.1 255.255.255.240
no shutdown
3.接着配置路由器(网络地址转换点)和路由器(ISP)静态路由的下一跳地址保证路由器知道我们的网络该怎么走。
路由器(网络地址转换点)
网络地址转换点
enable
configure terminal
ip route 34.103.25.0 255.255.255.248 56.34.112.2
路由器(ISP)
ISP运营商
enable
configure terminal
ip route 192.168.12.0 255.255.255.0 56.34.112.1
ip route 192.168.11.0 255.255.255.0 56.34.112.1
3.然后我们可以ping验证,如下图所示可以连通,说明我们成功配置静态路由的配置。

第二个实验:实现动态路由(RIP)互通,使用nat网络地址转换,以及ACL访问控制列表。
先配置两个路由器的命令(跟上面的一样)
l路由器(网络地址转换点)
网络地址转换点
enable
configure terminal
interface Fa0/0
ip address 192.168.12.254 255.255.255.0
ip nat inside
no shutdown
interface Fa0/1
ip address 192.168.11.254 255.255.255.0
ip nat inside
no shutdown
interface Se0/3/0
ip address 56.34.112.240 255.255.255.240
ip nat inside
no shutdown
路由器(ISP)
ISP运营商
enable
configure terminal
interface Se0/3/0
ip address 56.34.112.2 255.255.255.240
no shutdown
interface Fa0/0
ip address 34.103.25.1 255.255.255.240
no shutdown
1. 配置NAT
在路由器(网络地址转换点)
配置NAT规则
ip nat inside source list 1 interface Se0/3/0 overload
2. 配置访问控制列表(ACL)
在路由器(网络地址转换点)
配置访问控制列表
access-list 1 permit 192.168.12.0 0.0.0.255
access-list 1 permit 192.168.11.0 0.0.0.255
3. 配置动态路由
在路由器(网络地址转换点)
实现动态路由
启用RIP
router rip
version 2
network 192.168.12.0
network 192.168.11.0
network 56.34.112.0
路由器(ISP)
ISP运营商
启用RIP
router rip
version 2
network 56.34.112.0
network 34.103.25.0
4. 验证配置
1.验证NAT
使用命令检查NAT映射:
show ip nat translations
使用命令查看ACL配置:
show access-lists
4.3 验证动态路由
使用命令查看路由表:
show ip route
5. 整体连通性测试
从内部网络的PC上,尝试ping ISP路由器的IP地址(56.34.112.2)如下图所示。

实验结果
- 第一个实验:实现静态路由互通成功
- 第二个实验:NAT配置成功,内部IP地址成功转换为外部IP地址, ACL配置正确,允许内部网络访问外部网络。动态路由配置成功,路由器能够正确路由到各个网络。
实验脚本附录(第一个实验)
网络地址转换点
enable
configure terminal
interface Fa0/0
ip address 192.168.12.254 255.255.255.0
ip nat inside
no shutdown
interface Fa0/1
ip address 192.168.11.254 255.255.255.0
ip nat inside
no shutdown
interface Se0/3/0
ip address 56.34.112.240 255.255.255.240
ip nat inside
no shutdown
ip route 34.103.25.0 255.255.255.248 56.34.112.2
ISP运营商
enable
configure terminal
interface Se0/3/0
ip address 56.34.112.2 255.255.255.240
no shutdown
interface Fa0/0
ip address 34.103.25.1 255.255.255.240
no shutdown
ip route 192.168.12.0 255.255.255.0 56.34.112.1
ip route 192.168.11.0 255.255.255.0 56.34.112.1
实验脚本附录(第二个实验)
网络地址转换点
enable
configure terminal
配置内部接口
interface Fa0/0
ip address 192.168.12.254 255.255.255.0
ip nat inside
no shutdown
interface Fa0/1
ip address 192.168.11.254 255.255.255.0
ip nat inside
no shutdown
配置外部接口
interface Se0/3/0
ip address 56.34.112.240 255.255.255.240
ip nat outside
no shutdown
配置NAT规则
ip nat inside source list 1 interface Se0/3/0 overload
配置访问控制列表
access-list 1 permit 192.168.12.0 0.0.0.255
access-list 1 permit 192.168.11.0 0.0.0.255
实现动态路由
启用RIP
router rip
version 2
network 192.168.12.0
network 192.168.11.0
network 56.34.112.0
ISP运营商
enable
configure terminal
配置外部接口
interface Se0/3/0
ip address 56.34.112.2 255.255.255.240
no shutdown
interface Fa0/0
ip address 34.103.25.1 255.255.255.240
no shutdown
启用RIP
router rip
version 2
network 56.34.112.0
network 34.103.25.0
相关文章:
思科实现网络地址转换(NAT)和访问控制列表(ACL)和动态路由配置并且区分静态路由和动态路由配置。
实验拓扑(分为静态路由和动态路由两种) 静态路由互通 动态路由互通 实验背景 这个是想实现外网与内网的连接跟网络的探讨,最终实现互通以及使用并且在网络地址转换后能使用网络然后再这个基础上再配置访问控制列表和网络地址转换的的学习过程。 实验需了解的知识…...
基于 Python、OpenCV 和 PyQt5 的人脸识别上课打卡系统
大家好,我是Java徐师兄,今天为大家带来的是基于 Python、OpenCV 和 PyQt5 的人脸识别上课签到系统。该系统采用 Python 语言开发,开发过程中采用了OpenCV框架,Sqlite db 作为数据库,系统功能完善 ,实用性强…...
MySQL 复合查询
实际开发中往往数据来自不同的表,所以需要多表查询。本节我们用一个简单的公司管理系统,有三张表EMP,DEPT,SALGRADE 来演示如何进行多表查询。表结构的代码以及插入的数据如下: DROP database IF EXISTS scott; CREATE database IF NOT EXIST…...
【Leetcode】19. 删除链表的第N个节点
【Leetcode】19. 删除链表的第N个节点 1. 题目介绍2. 方法一:计算链表长度逻辑流程:代码复杂度分析 1. 题目介绍 题目描述 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head [1,2,…...
flutter底部导航栏中间按钮凸起,导航栏中间部分凹陷效果
关键代码: Scaffold中设置floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked和extendBody: true, BottomAppBar中设置shape: const CircularNotchedRectangle() Scaffold(extendBody: true,//body是否延伸脚手架底部,在底部导航…...
<项目代码>YOLOv8 红绿灯识别<目标检测>
YOLOv8是一种单阶段(one-stage)检测算法,它将目标检测问题转化为一个回归问题,能够在一次前向传播过程中同时完成目标的分类和定位任务。相较于两阶段检测算法(如Faster R-CNN),YOLOv8具有更高的…...
HTMLHTML5革命:构建现代网页的终极指南 - 4. 使用元素
HTML&HTML5革命:构建现代网页的终极指南 4. 使用元素 大家好,我是莫离老师。 到目前为止,我们已经了解了 HTML 和 HTML5 的基础概念,并且选择了适合自己的开发工具。 今天,我们将迈出实际开发的第一步,…...
使用 Selenium 和 Python 爬取腾讯新闻:从基础到实践
使用 Selenium 和 Python 爬取腾讯新闻:从基础到实践 在这篇博客中,我们将介绍如何利用 Selenium 和 Python 爬取腾讯新闻的内容,并将结果保存到 CSV 文件中。本教程包含以下内容: 项目简介依赖安装实现功能的代码实现中的关键技…...
CAD深度清理工具-AVappsDrawingPurge9.0.0(2024.8.27版本) 支持版本CAD2022-2025-供大家学习研究参考
图形文件DWG体积很大:通常没有明显的数据。同时,还其他症状包括: (1)无法复制和粘贴图元。 (2)悬挂较长时间选择文本与 “特性”选项板上打开。 (3)图形文件需要很长时间…...
vue3+vite使用vite-plugin-electron-renderer插件和script-loader插件有冲突
报错信息:Error: Dynamic require of "path" is not supported 报错问题是在使用vite-plugin-electron-renderer插件不支持import动态引入,该报错信息并不准确,实际原因是vite-plugin-electron-renderer插件和script-loader插件有…...
领养我的宠物:SpringBoot开发指南
第2章 开发环境与技术 本章节对开发宠物领养系统需要搭建的开发环境,还有宠物领养系统开发中使用的编程技术等进行阐述。 2.1 Java语言 Java语言是当今为止依然在编程语言行业具有生命力的常青树之一。Java语言最原始的诞生,不仅仅是创造者感觉C语言在编…...
直击高频编程考点:聚焦新版综合编程能力考查汇总
目录 一、业务性编程和广度能力考查 (一)基本定义 (二)必要性分析 二、高频考查样题(编程扩展问法) 考题1: 用java 代码实现一个死锁用例,说说怎么解决死锁问题?(高…...
【EI会议征稿 | ACM出版 】第六届计算机信息和大数据应用国际学术会议(CIBDA 2025)
大会官网:www.ic-cibda.org 大会时间:2025年3月14-16日 大会地点:中国-武汉 收录检索:EI Compendex,Scopus 接受/拒稿通知:投稿后约3~8天 大会简介 第六届计算机信息和大数据应用国际学术会议ÿ…...
淘宝商品数据获取:Python爬虫技术的应用与实践
引言 随着电子商务的蓬勃发展,淘宝作为中国最大的电商平台之一,拥有海量的商品数据。这些数据对于市场分析、消费者行为研究、商品推荐系统等领域具有极高的价值。然而,如何高效、合法地从淘宝平台获取这些数据,成为了一个技术挑…...
【C++】getchar() 与 putchar() 的深入解析
博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 💯前言💯函数原型及头文件包含💯 getchar() 和 putchar() 的基本概念2.1 getchar() 函数2.2 putchar() 函数 💯输入输出的关系与返回值的解释3.1 getchar() …...
Centos7安装MySQL8.0详细教程(压缩包安装方式)
本章教程,主要介绍如何在Centos7上安装MySQL8.0版本数据库(压缩包安装方式) 一、卸载系统自带的 Mariadb 1、查询 rpm -qa|grep mariadb2.、卸载 如果有查询结果,就进行卸载,没有就跳过该步骤。 rpm -e --nodeps mar…...
深度学习的python基础(1)
一.tensor创建 1.张量的定义 张量在形式上就是多维数组,例如标量就是0维张量,向量就是一维张量,矩阵就是二维张量,而三维张量就可以想象RGB图片,每个channel是一个二维的矩阵,共有三个channel࿰…...
拥抱 OpenTelemetry:阿里云 Java Agent 演进实践
作者:陈承 背景 在 2018 年的 2 月,ARMS Java Agent 的第一个版本正式发布,为用户提供无侵入的的可观测数据采集服务。6 年后的今天,随着软件技术的迅猛发展、业务场景的逐渐丰富、用户规模的快速增长,我们逐渐发现过…...
003 MATLAB基础计算
01 方程组的求解 多项式及其运算 多项式在MATLAB中以向量形式存储。 即n次多项式用一个长度为n1的系数向量来表示,且按降幂,缺少的幂次对应的向量元素为0。 多项式的运算主要包括多项式的四则运算、求导、求值和求根运算 多项式的四则运算:…...
安卓逆向之Android-Intent介绍
Intent是各个组件之间交互的一种重要方式,它不仅可以指明当前组件想要执行的动作,而且还能在各组件之间传递数据。Intent一般可用于启动Activity、启动Service、发送广播等场景。Intent有多个构造函数的重载。 显式intent 显式 Intent 明确指定要启动的…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
什么是Ansible Jinja2
理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具,可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板,允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板,并通…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
React---day11
14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store: 我们在使用异步的时候理应是要使用中间件的,但是configureStore 已经自动集成了 redux-thunk,注意action里面要返回函数 import { configureS…...
C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
