交换机与路由器技术:静态NAT、动态NAT、PAT和端口镜像

2023-11-17

网络地址转换NAT
1、静态转换
2、动态转换
3、端口多路复用PAT
4、端口映射(服务器映射)

一、NAT基本概念

在ipv4的网络环境中,由于网络分为私网和公网,私网的地址无法在公网上进行路由

1、目的

  • 将私网的地址转换为公网地址

2、出现背景

  • IP地址不够用

3、转换方式

静态转换和动态转换几乎不用

  • 静态转换 仅进行IP地址转换 1对1转
  • 动态转换 仅进行IP地址转换 多对多转 内网的一部分转换为外网的一部分
    • 内网地址多于外网地址 5-------3. 造成部分主机无法上网
    • 外网地址多于内网地址
  • 端口多路复用PAT多对1转携带端口一起转换
    • 192.168.1.1:8899---------》64.23.54.99:6677
    • 192.168.2.1:2277--------》64.23.54.99:8866
  • 端口映射(服务器映射)
    • 将一台内网的服务器发布到外网,从而使外网的主机可以访问到内网的服务器
    • 192.168.1.1:80------》64.23.54.99:80
    • 目的地址转换,外部主机访问内网服务器会进行目的地址的转换成端口访问。

4、转换表中的4类地址

  • 内部局部地址:发送方的内网
  • 内部全局地址:发送方的外网
  • 外部局部地址:接收方内网
  • 外部全局地址:接收方外网

如果这篇文章对你帮助很大,麻烦帮忙,点下友情链接: 鱼儿项目网(直接点这里),进去之后切换几个页面,停留几十秒。感激不尽。本站采集全网自媒体,网赚类,电商营销课程。里面有一些免费项目大家也可以看看

二、静态NAT

  • 固定1----->1 转 192.168.1.1------>64.23.54.99
  • 命令
#首先需要去定义出口路由器的内网接口和外网接口,之后再来配置静态NAT
ip nat inside source static 192.168.1.1 64.23.54.99

在这里插入图片描述

1、放置各器件并连线,如图所示
在这里插入图片描述
2、配置IP地址在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、尝试去pingPC2,发现并不能ping通。因为PC2没有设置网关
在这里插入图片描述
4、配置内外网入口
在这里插入图片描述
5、配置静态NAT
在这里插入图片描述
在这里插入图片描述
6、PC0就是10.10的内网地址,所以可以ping通,而PC1不能ping通在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、动态NAT

  • 动态的 多对多
#1、定义内网范围,使用ACL来定义允许
Router(config)#access-list 1 permit 192.168.10.0 0.0.0.255
#2、定义外网范围,使用名称指定范围IP
Router(config)#ip nat pool woniu 23.34.56.70 23.34.56.71 netmask 255.255.255.0
#3、应用
Router(config)#ip nat inside source list 1 pool woniu
#清除所有转换表
Router#clear ip nat translation *

1、放置器件并连接线路,如图所示
在这里插入图片描述
2、配置ip地址
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、配置内外网出入接口
在这里插入图片描述
4、定义内网范围
在这里插入图片描述
5、定义外网范围,并应用
在这里插入图片描述
6、PC0和PC1去ping最右边的那台PC,ping成功了。并且在路由器0中有对应的转换表
在这里插入图片描述
在这里插入图片描述
7、发现PC2去ping不通了,因为数量有限的外网地址已经被占满了。就算把PC0或1删掉了也无济于事,关键是看转换表中是否把外网地址给释放掉在这里插入图片描述
8、清掉转换表,再来查看,发现没有了
在这里插入图片描述
9、PC2、PC1和PC1依次去ping最右边的主机,前面两个ping得通,PC1ping不同,因为外网地址已经自动把外网地址分配完了。在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、PAT

(1)端口多路复用(多对1的转换)

  • 主要是将内网的多个地址转换为外网的一个IP地址(将端口一起转换,从而进行区分)
#定义内网范围
Router(config)#access-list 1 permit any
#定义外网范围〈外网只有一个IP地址,所以这里起始和结束都是这一个IP)
Router(config)#ip nat pool woniu 23.34.56.80 23.34.56.80 netmask 255.255.255.0
#应用(因为使用的是PAT,后面需要加上overload)
Router(config)#ip nat inside source list 1 pool woniu overload

  • 将内网的多个地址直接转换为外网接口的地址
#定义内网范围
Router(config)#access-list 1 permit any
#应用〈因为使用的是PAT,后面需要加上overload)这里直接引用的是外网接口g0/1
Router(config)#ip nat inside source list 1 int g0/1 overload
  • 是目前企业当中最常使用的方式(源地址转换,NAT代理上网)

(2)端口映射(服务器映射)

  • 主要是讲内网的某一台服务器(服务器上就会有对应的服务)映射到外网的某一个IP地址的某个端口
    • 192.168.1.100:80------>23.34.56.78:80
    • 因为内网的端口标识了服务器的服务类型,所以不能更改
    • 映射出去的外网端口可以更改,但是会影响外网客户端访问时的端口号,如果映射的外网端口为8088端口,这时候外网客户机在访问内网服务器时,访问的是映射出去的IP地址及端口号(8088)(http://23.34.56.78:8088)
Router(config)#ip nat inside source static tcp 192.168.1.100 80 23.34.56.78 80
  • 是目前企业中针对内网服务器对外提供服务时使用(目的地址转换)

情况1:主要是将内网的多个地址转换为外网的一个IP地址
1、放置线路并且连线如图所示
在这里插入图片描述
2、配置IP(交换机什么都不用做)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、定义内外网接口
在这里插入图片描述
4、配置PAT
在这里插入图片描述
5、尝试去ping通外网主机,都成功了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6、路由器0的转换表
在这里插入图片描述
情况2:将内网的多个地址直接转换为外网接口的地址
7、先删掉情况1的,再来配置情况2在这里插入图片描述
8、去ping一下,发现全部都ping通了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
9、查看路由器0的转换表
在这里插入图片描述
情况3:端口映射
10、现在还没有配置,发现是访问不了
在这里插入图片描述
11、配置
在这里插入图片描述
12、PC2访问成功
在这里插入图片描述
13、删掉80端口改成8088端口,直接输入ip地址不带端口,发现访问不了了,因为默认直接访问ip地址就是访问80端口,我们要访问8088端口,就得输入ip地址带端口
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


总结

(1)静态转换

  • 1对1转换:1个内网地址转换为1个外网地址,形成的是永久性的对应关系,可以根据外网地址直接定位到内网地址,可以实现内网访问外网,也可以实现外网访问内网

(2)动态转换

  • 多对多转换:内网多个IP转换为外网多个IP,当内网主机数量多于外网IP地址个数时,无法实现内网所有主机同时上网,由于是动态的对应关系,所以无法根据外网地址锁定到内网地址,只能实现内网访问外网

(3)端口多路复用(PAT)

  • 多对1转换(源地址转换,NAT代理上网):内网多个IP地址转换为外网一个IP地址(外网接口IP地址),使用不同端口号进行区分,形成的也是动态的对应关系,只能实现内网访问外网

(4)端口映射(服务器映射):目的地址转换

  • 主要是将内网的某一台服务器(服务器上就会有对应的服务)映射到外网的某一个IP地址的某个端口。
  • 形成的是一个永久性的对应关系,但是只能实现外网访问内网,无法实现内网访问外网
    192.168.1.100:80------>23.34.56.78:80

五、端口镜像

1、本地端口镜像

  • 在一台交换机上

2、远程端口镜像

  • 将交换机A的某接口数据镜像到交换机B的某个接口上

1、基本概念

1、概述

  • 将一个或多个源端口的数据流量转发到某一个指定端口

2、目的

  • 主要是方便—个或多个网络接口流量进行分析(IDS入侵检测)

3、功能

  • 故障定位、流量分析、流量备份

1、放置装置并连接如图
设计:pc1是镜像端口,pc2是检测镜像的端口在这里插入图片描述2、配置ip
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、关闭sw1的路由功能,之后主机互ping,都能ping通
在这里插入图片描述
在这里插入图片描述
4、配置端口镜像。先配置镜像端口,再配置目的端口
在这里插入图片描述
5、对pc2的链路进行抓包,然后PC1pingPC3,发现PC1pingPC3的数据全部都抓出来了
在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

交换机与路由器技术:静态NAT、动态NAT、PAT和端口镜像 的相关文章

  • 无法为 Python 3.4 创建工作虚拟环境

    I 安装Python 3 4 2 https docs python org 3 using unix html building python和我的 Linux Mint 17 1 中的 Virtualenv 12 0 5 然后我尝试创建
  • 我在哪里可以学习如何使 C++ 程序与操作系统 (Linux) 交互

    我是一个 C 初学者 我想创建与操作系统交互的小程序 使用 Kubuntu Linux 到目前为止 我还没有找到任何教程或手册来让 C 与操作系统交互 在 PHP 中 我可以使用命令 exec 或反引号运算符来启动通常在控制台中执行的命令
  • 如何使用libaudit?

    我试图了解如何使用 libaudit 我想接收有关使用 C C 的用户操作的事件 我不明白如何设置规则 以及如何获取有关用户操作的信息 例如 我想获取用户创建目录时的信息 int audit fd audit open struct aud
  • 使用 sed 将 old-link-url 替换为 new-link-url

    我正在 bash 中编写一个脚本 将 old link url 替换为 new link url 我的问题是 sed 由于斜杠而无法替换 url 如果我只输入一些文字就可以了 my code sed e s old link new lin
  • 原生 Linux 应用程序可像 ResHacker 一样编辑 Win32 PE

    我想运行自动修改 dll服务 用户提交特定的 dll 我在服务器上修改它 然后用户可以下载 dll的修改版本 是否有任何本机 Linux 应用程序提供常见的 Win32 PE 修改功能 例如图标 字符串 加速器 对话等 至少提供命令行或脚本
  • gnome-terminal 新选项卡,使用别名作为要执行的命令

    我已经创建了一个别名 bashrc文件如下 alias myproject cd Desktop myproject 当我重新启动终端时保存文件后 输入myproject带我到项目目录 但是当我尝试使用别名作为新的命令参数时gnome te
  • 如何在 Linux 中使用单行命令获取 Java 版本

    我想通过单个命令获取 Linux 中的 Java 版本 我是 awk 的新手 所以我正在尝试类似的事情 java version awk print 3 但这不会返回版本 我将如何获取1 6 0 21从下面的Java版本输出 java ve
  • 如何在两个不同帐户之间设置无密码身份验证

    我们可以在两台机器的两种不同用途之间设置无密码身份验证吗 例如 计算机A有用户A 计算机B有用户B 我们可以设置密码 ssh 以便计算机 A 上的用户 A 使用其用户帐户 A 登录计算机 B 谢谢你 如果我理解你的问题 你能设置一下吗ssh
  • 如何在 Linux x86_64 上模拟 iret

    我正在编写一个基于 Intel VT 的调试器 由于当 NMI Exiting 1 时 iret 指令在 vmx guest 中的性能发生了变化 所以我应该自己处理vmx主机中的NMI 否则 guest会出现nmi可重入错误 我查了英特尔手
  • Windows 与 Linux 文本文件读取

    问题是 我最近从 Windows 切换到 Ubuntu 我的一些用于分析数据文件的 python 脚本给了我错误 我不确定如何正确解决 我当前仪器的数据文件输出如下 Header 有关仪器等的各种信息 Data 状态 代码 温度 字段等 0
  • 是否有可能在linux中找到包含特定文本的文件?

    考虑这种情况 我在文件夹 Example 下有很多文件 如果我需要找到一个包含特定短语 如 Class Example 的文件 我该如何使用 Linux shell 来做到这一点 linux中有类似 定位 的函数可以做到这一点吗 Thank
  • Bash 脚本 - 迭代 find 的输出

    我有一个 bash 脚本 其中需要迭代 find 命令输出的每一行 但似乎我正在迭代 find 命令中的每个单词 以空格分隔 到目前为止我的脚本看起来像这样 folders find maxdepth 1 type d for i in f
  • Linux、ARM:为什么仅当启动时存在 I2C GPIO 扩展器时才创建 gpiochip

    在 imx6sx 硬件平台 NXP 嵌入式 ARM 上使用 Linux 3 14 52 问题是设备树中指定的 PCF8575 I2C GPIO 扩展器不会实例化为 sys class gpio 结构中的设备 除非它们在内核启动期间存在 这些
  • 如何从 Linux 命令行获取视频文件的分辨率(宽度和高度)?

    我一直在挖掘 mplayer mencoder 和 ffmpeg 文档 但我似乎无法想出anything 我对输出格式不是特别挑剔 因为我可以使用正则表达式将其拉出来 我只是似乎无法首先获取数据 Use ffprobe https ffmp
  • 无法仅在控制台中启动 androidstudio

    你好 我的问题是下一个 我下载了Android Studio如果我去 路径 android studio bin 我执行studio sh 我收到以下错误 No JDK found Please validate either STUDIO
  • Scrapy FakeUserAgentError:获取浏览器时发生错误

    我使用 Scrapy FakeUserAgent 并在我的 Linux 服务器上不断收到此错误 Traceback most recent call last File usr local lib64 python2 7 site pack
  • 如何调用位于其他目录的Makefile?

    我正在尝试这样做 我想打电话给 make Makefile存在于其他目录中 abc可以使用位于不同目录中的 shell 脚本的路径 我该怎么做呢 由于 shell 脚本不允许我cd进入Makefile目录并执行make 我怎样才能编写she
  • 如何使用AWK脚本检查表的所有列数据类型? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在这里 我正在检查表中第一列的数据类型 但我想知道AWK中表的所有列数据类型 我尝试过 但只能获得一列数据类型 例如 Column 1
  • 构建 makefile 依赖/继承树

    如果我解释得不好或者问了一些明显的问题 我很抱歉 但我是 Linux 内核的新手 而且有点深入 我们有一个嵌入式 Linux 系统 它附带一个 文档非常糟糕的 SDK 其中包含数百个文件夹stuff 大多数文件夹包含rules make m
  • 在 LINUX 上使用 Python 连接到 OLAP 多维数据集

    我知道如何在 Windows 上使用 Python 连接到 MS OLAP 多维数据集 嗯 至少有一种方法 通常我使用 win32py 包并调用 COM 对象进行连接 import win32com client connection wi

随机推荐

  • java修改AD域用户密码使用SSL连接方式

    正常情况下 JAVA修改AD域用户属性 只能修改一些普通属性 如果要修改AD域用户密码和userAccountControl属性就得使用SSL连接的方式修改 SSL连接的方式需要操作以下步骤 1 安装AD域证书服务 2 证书颁发机构中设置以
  • 【C语言】结构体中的函数指针

    目录 一 函数指针是什么 二 结构体中的函数指针 一 函数指针是什么 函数指针是指向函数的指针变量 通常我们说的指针变量是指向一个整型 字符型或数组等变量 而函数指针是指向函数 函数指针可以像一般函数一样 用于调用函数 传递参数 正确形式
  • 2.【Python】分类算法—Logistic Regression

    2 Python 分类算法 Logistic Regression 文章目录 2 Python 分类算法 Logistic Regression 前言 一 Logistic Regression模型 1 线性可分和线性不可分 2 Logis
  • 二.全局定位--开源定位框架livox-relocalization实录数据集测试

    相关博客 二十五 SLAM中Mapping和Localization区别和思考 goldqiu的博客 CSDN博客 二十五 SLAM中Mapping和Localization区别和思考 goldqiu的博客 CSDN博客 基于固态雷达的全局
  • 【Flink系列】- RocksDB增量模式checkpoint大小持续增长的问题及解决

    背景 Flink版本 1 13 5 一个使用FlinkSQL开发的生产线上任务 使用Tumble Window做聚和统计 并且配置table exec state ttl为7200000 设置checkpoint周期为5分钟 使用rocks
  • cr2格式缩略图不显示_苹果HEIC格式照片如何快速在windows电脑上查看

    相信很多人一定遇到这样的一个情况 出去旅游玩了一阵 辛辛苦苦回来将iphone拍的照片拷贝到windows电脑 windows7系统 上 想寻找一些心仪的照片 却发现是如下的样子 OMG 欺负我买不起苹果电脑是吧 我拍的是啥 什么也看不到
  • Linux —— XShell6远程操控开机、重启和用户登录注销

    1 关机 重启命令 shutdown h now 表示立即关机 shutdown h 1 表示一分钟后关机 shutdown r now 表示立即重启 halt 直接使用 等价于关机 reboot 就是重启系统 sync 把内存的数据同步到
  • 会议OA项目----我的审批

    前言 上一篇博客我将我的会议的送审和会议排座这两个功能完成 送审之后就到了审批阶段 那么这次做的就是 我的审批 一 实现思路 根据产品原型图 见产品原型图 我的审批界面与我的会议界面大同小异 那么我们可以调用之前的写好的SQL语句 只不过将
  • 文件上传/下载接口(超简单的教程来了)

    前言 文件上传 下载接口与普通接口类似 但是有细微的区别 如果需要发送文件到服务器 例如 上传文档 图片 视频等 就需要发送二进制数据 上传文件一般使用的都是 Content Type multipart form data 数据类型 可以
  • java懒加载注解_一分钟学习Spring注解之懒加载@Lazy

    先声明 本篇文章非常简单属于一分钟学会使用系列 不深入讲解原理 如果要学习源码 可以看小编Spring源码解析系列 什么是懒加载 懒加载就是不使用不加载 使用的时候才去加载 Spring默认不是懒加载 而是启动加载 就在Spring上下文启
  • rac集群节点级联重启故障分析

    author skate time 2012 07 16 无意中发现以前处理故障写的一篇文章 记录下来以备查找 rac集群节点级联重启故障分析 环境 os linux db rac10g ocfs2 rac数据库环境实际包含两个集群 一个是
  • linux socket非阻塞之connect 函数

    1 connect原型 include
  • 联想E480安装MacOS苹果系统记录

    联想E480安装MacOS记录 联想E480安装黑苹果 自己有用IPad和Iphone 但Mac OS却没怎接触过 于是萌生了转用Mac OS的想法 用自用的联想E480装个黑果 为了方便软件上的互补 双系统优先 网上搜搜转转没发现有E48
  • 代码随想录算法训练营第三天 | 203.移除链表元素、707.设计链表、206.反转链表

    目录 知识点 链表 结点定义 单链表的初始化 判断一个链表是否为空 单链表的销毁 清空单链表 求链表表长 取单链表中第i个元素 按值查找 插入第i个结点 删除第i个结点 移除列表元素 没有采用虚拟头结点的方法 采用虚拟头结点的方法 设计链表
  • PHPExcel导出各种方法总结

    PHPExcel导出 方法一 https blog csdn net u014236259 article details 60601767 public function ExportExcelOrder data name vendor
  • ARM+Linux中断系统详细分析

    ULK第四章里明确讲到 Linux实现了一种没有优先级的中断模型 并且 Linux中断和异常都支持嵌套 这个我不太理解了 这两种说法都与我以前的理解刚好相反 核对了原书 翻译没有错 Linux中断系统到底是否支持优先级 可否嵌套 中断号又是
  • c# json解析(反序列化)、json规范化

    使用 NETFramework3 5 4 0中提供的System Web Script Serialization命名空间下的JavaScriptSerializer类进行对象的序列化与反序列化 很直接 要求当前的工程的TargetFram
  • Two Divisors【GCD数论】

    You are given nn integers a1 a2 ana1 a2 an For each aiai find its two divisors d1 gt 1d1 gt 1 and d2 gt 1d2 gt 1 such th
  • vue实现预览PDF、Excel、Docx、Txt、PPT文件的功能

    目录 一 实现步骤 二 实现效果 代码真实可用 一 实现步骤 1 使用的是vue和elementUI 假设有这些变量 attachment是附件的意思 data return previewDialog false attachmentSr
  • 交换机与路由器技术:静态NAT、动态NAT、PAT和端口镜像

    网络地址转换NAT 1 静态转换 2 动态转换 3 端口多路复用PAT 4 端口映射 服务器映射 目录 一 NAT基本概念 1 目的 2 出现背景 3 转换方式 二 静态NAT 三 动态NAT 三 PAT 总结 五 端口镜像 1 基本概念