NAT端口映射,实现外网访问内网服务器

目录

  • 前言
  • 一、搭建网络拓扑
    • 1.1 配置server和pc
      • 1.1.1 配置server0
      • 1.1.2 配置server1
      • 1.1.3 配置pc0
    • 1.2 配置客户路由器
      • 1.2.1 配置路由器IP
      • 1.2.2 配置静态路由
    • 1.3 配置ISP路由器
  • 二、配置端口映射
    • 2.1 在客户路由器配置端口映射
    • 2.2 测试公网计算机访问私网服务器
      • 2.2.1 PC0向server0发送HTTP请求
      • 2.2.1 PC0向server1发送HTTP请求
  • 总结

前言

本篇文章利用Cisco Packet Tracer网络模拟进行NAT端口映射,实现外网访问内网服务器。

一、搭建网络拓扑

在这里插入图片描述

网络拓扑图

1.1 配置server和pc

机器名IP地址网关IP子网掩码
Server0192.168.1.2192.168.1.1255.255.255.0
Server1192.168.1.3192.168.1.1255.255.255.0
PC0114.25.63.24114.25.63.1255.255.255.0

1.1.1 配置server0

在这里插入图片描述

1.1.2 配置server1

在这里插入图片描述

1.1.3 配置pc0

在这里插入图片描述

1.2 配置客户路由器

1.2.1 配置路由器IP

接口名称IP地址子网掩码
fa0/0192.168.1.1255.255.255.0
fa0/166.1.1.1255.255.255.0

配置信息如下:

1. 配置fa0/0接口
Router>enable
Router#
Router#configure
Router(config)#
Router(config)#interface fa0/0
Router(config-if)#ip address 192.168.1.1 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#2. 配置fa0/1接口
Router(config)#interface fa0/1
Router(config-if)#ip address 66.1.1.1 255.255.255.0
Router(config-if)#no shutdown

1.2.2 配置静态路由

为客户路由器配置默认路由,让客户路由器可以达到114.25.63.0/24网络。

命令:ip route 目标网段 目标网段掩码 下一跳路由的IP
这里设置默认路由
下一跳路由IP的意思是通过其可以到达目标网段
Router(config)#ip route 0.0.0.0 0.0.0.0 66.1.1.254或者可以设置静态路由
Router(config)#ip route 114.25.63.0 255.255.255.0 66.1.1.254以上两种配置的其中一种,均可以到达114.25.63.0/24网络

1.3 配置ISP路由器

接口名称IP地址子网掩码
fa0/066.1.1.254255.255.255.0
fa0/1114.25.63.1255.255.255.0

配置信息如下:

1. 配置fa0/0接口
Router>enable
Router#
Router#configure
Router(config)#
Router(config)#interface fa0/0
Router(config-if)#ip address 66.1.1.254 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#2. 配置fa0/1接口
Router(config)#interface fa0/1
Router(config-if)#ip address 114.25.63.1 255.255.255.0
Router(config-if)#no shutdown

以上配置完成后,测试各个主机的连通性,这里不再介绍。

二、配置端口映射

2.1 在客户路由器配置端口映射

由于这里使用HTTP服务,则应该对应两个服务器的80端口进行映射

端口映射表
私网IP私网机器端口公网IP公网机器端口
192.168.1.28066.1.1.26666
192.168.1.38066.1.1.28888

配置信息如下:

Router>enable
Router#
Router#configure
Router(config)#
1. 配置接口fa0/0为内网口
Router(config)#interface fa0/0
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#
2. 配置接口fa0/1为外网口
Router(config)#interface fa0/1
Router(config-if)#ip nat outside
Router(config-if)#exit
Router(config)#3. 私网IP 端口->公网IP 端口
命令:ip nat inside source static 协议(udp或tcp) 私网ip 端口 公网ip 端口
Router(config)#ip nat inside source static tcp 192.168.1.2 80 66.1.1.2 6666
Router(config)#ip nat inside source static tcp 192.168.1.3 80 66.1.1.2 8888

2.2 测试公网计算机访问私网服务器

2.2.1 PC0向server0发送HTTP请求

如果映射成功,则可以通过66.1.1.2:6666访问server0(192.168.1.2)

在这里插入图片描述
这里,可以去修改server0的index.html的内容

在这里插入图片描述

2.2.1 PC0向server1发送HTTP请求

如果映射成功,则可以通过66.1.1.2:8888访问server1(192.168.1.3)

在这里插入图片描述

总结

nat还有一种静态配置,即一个公网IP映射一个私网IP。
nat端口映射可以实现一个公网IP映射多个私网IP,只需要控制端口号的选择。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/341714.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kafka消费者api编写教程

1.基本属性配置 输入new Properties().var 回车 //创建属性Properties properties new Properties();//连接集群properties.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG,"node1:9092,node2:9092");//反序列化properties.put(ConsumerConfig.KEY_DESERIALIZER_CL…

web刷题记录(3)

[NISACTF 2022]checkin 简单的get传参,好久没做过这么简单的题了 王德发?????!,看了源代码以后,本来以为是js脚本的问题,但是禁用js脚本没用,看了大佬的wp以后…

ThinkPHP5发送邮件如何配置?有哪些技巧?

ThinkPHP5发送邮件的性能怎么优化?批量发信的方法? 邮件发送功能是许多应用程序的关键组成部分,尤其是在用户注册、密码重置和通知等功能中尤为重要。AokSend将详细介绍如何在thinkphp5中配置和使用邮件发送功能,并确保你可以轻松…

我们如何利用 0 美元营销将 UX/UI 产品发展到 320k 用户

嘿 👋 我是 Paul,FlowMapp 的联合创始人。 现在,我们是一个由7人(少数兼职成员)组成的团队,试图将产品扩展到$ 1M ARR。 希望这些对您有所帮助,并祝您未来的产品好运! 我决定与…

17K star,一款开源免费的手机电脑无缝同屏软件

导读:白茶清欢无别事,我在等风也等你。 作为程序员,在我们的工作中经常需要把手机投票到电脑进行调试工作,选择一款功能强大的投屏软件是一件很必要的事情。今天给大家介绍一款开源且免费的投屏软件,极限投屏&#xff…

jmeter多用户登录并退出教程

有时候为了模拟更真实的场景,在项目中需要多用户登录并退出操作,大致参考如下 多用户登录前面已经实现:参考博文 多用户登录并退出jmx文件:百度网盘 提取码:0000 一、多用户退出操作 添加一个setUp线程组&#xff0…

FPGA-ARM架构与分类

ARM架构,曾称进阶精简指令集机器(Advanced RISC Machine)更早称作Acorn RISC Machine,是一个32位精简指令集(RISC)处理器架构。 主要是根据FPGA zynq-7000的芯片编写的知识思维导图总结,废话不多说自取吧 …

三十七、openlayers官网示例Earthquakes Heatmap解析——在地图上加载热力图

官网demo地址: Earthquakes Heatmap 这篇主要介绍了热力图HeatmapLayer HeatmapLayer 是一个用于在地图上显示热力图的图层类型,通常用于表示地理数据中的密度或强度。例如,它可以用来显示地震、人口密度或其他空间数据的热点区域。在这个示…

排序(前篇)

1.排序的概念及其运用 2.插入排序的概念及实现 3.希尔排序的概念及实现 4.选择排序概念及实现 总代码(对比各个排序在大量的数据情况排序所化的时间): 1.排序的概念及其运用 1.1排序的概念 排序:所谓排序,就是使…

纯血鸿蒙开发教程:如何实现运动饮食卡片效果

开发背景 人们对健康的要求越来越高,从单纯的健康饮食到健康运动,再到两者的结合。但是,饮食和运动之间的平衡一般人很难掌握,而我们这款 APP 将饮食、运动、以及自身身体状况(如体脂、体重、内脂等)有机结…

保护关键业务资产的四个步骤

提到 “关键资产 ”,相信大家并不陌生,它是企业 IT 基础设施中对组织运作至关重要的技术资产。如果这些资产(如应用服务器、数据库或特权身份)出现问题,势必会对企业安全态势造成严重影响。 但每项技术资产都被视为关…

2024年大屏幕互动源码+动态背景图和配乐素材+搭建教程

2024年大屏幕互动源码动态背景图和配乐素材搭建教程 php宝塔搭建部署活动现场大屏幕互动系统php源码 运行环境:PHPMYSQL 下载源码地址:极速云

[AI资讯·0605] GLM-4系列开源模型,OpenAI安全疑云,ARM推出终端计算子系统,猿辅导大模型备案……

AI资讯 1毛钱1百万token,写2遍红楼梦!国产大模型下一步还想卷什么?AI「末日」突然来临,公司同事集体变蠢!只因四大聊天机器人同时宕机OpenAI员工们开始反抗了!AI手机PC大爆发,Arm从软硬件到生态…

React + Taro 项目 实际书写 感受

之前我总结了部分react 基础 根据官网的内容 以及Taro 框架的内容 今天我试着开始写了一下页面和开发 说一下我的感受 我之前写的是vue3 今天是第一次真正根据需求做页面开发 和逻辑功能 代码的书写 主体就是开发了这个页面 虽说这个页面 很简单 但是如果你要是第一次写 难说…

【设计模式】结构型-组合模式

前言 在软件开发中,设计模式是一种被广泛应用的解决问题的方法论。其中,结构性设计模式是一类特别重要的模式,它们用于处理类或对象之间的组合关系,其中之一就是组合模式。组合模式允许客户端统一对待单个对象和对象的组合&#…

使用cesiumLab使shp转为3dtlies

过程不做赘述,网上大把,说下注意事项。 1. 存储3DTiles 选项 若是打开则输出的文件为glb格式文件,因为glb文件好储存易传输跨平台。cesium可以使用但无法处理,例如改变颜色,改着色器等。若是不打开则输出的文件为bm3d格式文件,此…

二叉树—堆(C语言实现)

一、树的概念及结构 1.树的概念 树是一种非线性的数据结构,它是有n(n > 0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一颗倒挂的树,也就是说它是根朝上,而叶朝下。 ● 有一个特殊的结点…

C++设计模式-单例模式,反汇编

文章目录 25. 单例模式25.1. 饿汉式单例模式25.2. 懒汉式单例模式25.2.1. 解决方案125.2.2. 解决方案2 (推荐写法) 运行在VS2022,x86,Debug下。 25. 单例模式 单例即该类只能有一个实例。 应用:如在游戏开发中&#x…

搭建大型分布式服务(三十九)SpringBoot 整合多个kafka数据源-支持Aware模式

系列文章目录 文章目录 系列文章目录前言一、本文要点二、开发环境三、原项目四、修改项目五、测试一下五、小结 前言 本插件稳定运行上百个kafka项目&#xff0c;每天处理上亿级的数据的精简小插件&#xff0c;快速上手。 <dependency><groupId>io.github.vipjo…

算法第三天力扣第69题:X的平方根

69. x 的平方根 (可点击下面链接或复制网址进行做题) https://leetcode.cn/problems/sqrtx/https://leetcode.cn/problems/sqrtx/ 给你一个非负整数 x &#xff0c;计算并返回 x 的 算术平方根 。 由于返回类型是整数&#xff0c;结果只保留 整数部分 &#xff0c;小数部分将被…