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

配置公网和私网用户通过非公网口的IP地址访问内部服务器和Internet示例

组网需求

如配置公网和私网用户通过非公网口的IP地址访问内部服务器和Internet示例所示,某小型企业内网部署了一台路由器、一台FTP服务器和一台Web服务器。路由器作为接入网关,为下挂的内网用户提供上网服务,主要包括浏览网页、使用即时通信工具、观看视频、访问邮箱等。企业内网的FTP/Web服务器对内网和外网用户分别提供FTP服务和WWW服务。该企业有两个公网IP地址,一个1.1.1.1/24部署在网关上行接口,另一个1.1.1.3/24预留给内部FTP/Web服务器使用。企业希望在路由器上配置NAT功能,使内网用户可以访问Internet,同时外网和内网用户都可以通过预留的公网IP地址访问内部FTP/Web服务器。

图1 配置公网和私网用户通过非公网口的IP地址访问内部FTP/Web服务器和Internet

数据准备
表1 数据准备表

项目

数据

说明

路由器上行接口IP地址

GE0/0/1:1.1.1.1/24(公网口)

使用三层接口GE0/0/1连接Internet。

路由器下行接口IP地址

GE0/0/2:192.168.1.1/24

使用三层接口GE0/0/2连接企业内网用户。如果有多个内网用户需要上网,可以在路由器上下挂一个二层交换机来扩展用户个数。

对端运营商接口的IP地址

1.1.1.2/24

对端运营商接口的IP地址用于配置路由信息,否则内网用户上网的报文无法转发到Internet。

FTP服务器的内网IP地址和端口号

Web服务器的内网IP地址和端口号

192.168.1.2/24:21

192.168.1.3/24:80

企业内网分配给FTP/Web服务器的内网IP地址和端口号。本例中,虽然内网用户和FTP/Web服务器都在内网,但是为了防止内部服务器受内网用户的攻击,要求内网用户也通过预留的公网IP地址来访问FTP/Web服务器。

FTP服务器映射后的公网IP地址和端口号

Web服务器映射后的公网IP地址和端口号

1.1.1.3/24:21

1.1.1.3/24:9080

该企业预留了一个公网IP地址1.1.1.3/24给内部FTP/Web服务器使用。因此,可以使用该公网IP地址作为FTP/Web服务器映射后的公网IP地址。同时,需要规划不同的公网端口号21和9080来区分FTP/Web服务器。

内网用户HostA的IP地址

192.168.1.10/24

企业内部分配给用户的内网IP地址,用于验证内网用户访问Internet、FTP和Web服务器是否正常。

外网用户HostC的IP地址

2.2.2.2/24

外部用户的公网IP地址,用于验证外网用户访问内网的FTP/Web服务器是否正常。

配置思路
  1. 配置路由器的接口IP地址、缺省路由,实现内部网络和外部Internet之间三层互通。
  2. 在路由器的上行接口配置Easy IP方式的NAT Outbound,实现内网用户访问Internet功能。
  3. 在路由器的上行接口配置服务器映射NAT Static,实现外网用户访问内部FTP/Web服务器功能。
  4. 在路由器上,开启FTP的NAT ALG功能。FTP协议是一个多通道协议,需要配置NAT ALG功能,否则报文无法穿越NAT,HTTP协议不需要配置NAT ALG功能。
  5. 在路由器的下行接口配置服务器映射NAT Static和Easy IP方式的NAT Outbound,将内部服务器与内网PC之间的流量都引到路由器上进行转发,实现内网用户通过预留的公网IP地址访问FTP/Web服务器功能。

操作步骤
  1. 配置Router的接口IP地址、缺省路由,实现内部网络和外部Internet之间三层互通。
    1. 配置上行接口和下行接口的IP地址。

      <Huawei> system-view
      [Huawei] sysname Router
      [Router] interface gigabitethernet 0/0/1 
      [Router-GigabitEthernet0/0/1] undo portswitch       //有些二层接口需要切换成三层接口后,才可以配置IP地址
      [Router-GigabitEthernet0/0/1] ip address 1.1.1.1 24  
      [Router-GigabitEthernet0/0/1] quit       
      [Router] interface gigabitethernet 0/0/2         //下行接口如果不是三层接口,这里可以使用VLANIF接口代替
      [Router-GigabitEthernet0/0/2] undo portswitch
      [Router-GigabitEthernet0/0/2] ip address 192.168.1.1 24  
      [Router-GigabitEthernet0/0/2] quit

    2. 配置缺省路由,下一跳为对端运营商接口的IP地址,保证内网用户上网的报文可以到达Internet。

      [Router] ip route-static 0.0.0.0 0.0.0.0 1.1.1.2

  2. 在Router的上行接口配置Easy IP方式的NAT Outbound,使内网用户可以访问Internet。

    [Router] acl 3000
    [Router-acl-adv-3000] rule 5 permit ip source 192.168.1.0 0.0.0.255 //只允许192.168.1.0网段的用户访问Internet
    [Router-acl-adv-3000] quit
    [Router] interface gigabitethernet 0/0/1
    [Router-GigabitEthernet0/0/1] nat outbound 3000 
    [Router-GigabitEthernet0/0/1] quit

  3. 在Router的上行接口配置服务器映射NAT Static,实现外网用户通过预留的公网IP地址访问内部FTP/Web服务器功能。

    [Router] interface gigabitethernet 0/0/1
    [Router-GigabitEthernet0/0/1] nat static protocol tcp global 1.1.1.3 21 inside 192.168.1.2 21  //使用预留的IP地址进行NAT转换,供外网用户访问
    [Router-GigabitEthernet0/0/1] nat static protocol tcp global 1.1.1.3 9080 inside 192.168.1.3 80   //对于知名端口号,可以配置成80,也可以配置成它代表的应用www 
    [Router-GigabitEthernet0/0/1] quit

  4. 在Router上开启FTP的NAT ALG功能。

    [Router] nat alg ftp enable

  5. 在Router的下行接口配置Easy IP方式的NAT Outbound,将内部服务器与内网PC之间的流量都引到路由器上进行转发。

    [Router] acl 3001
    [Router-acl-adv-3001] rule 5 permit ip source 192.168.1.0 0.0.0.255 destination 1.1.1.3 0   //只有内部主机使用公网IP地址访问服务器的流量,才会引到Router上进行NAT转换 
    [Router-acl-adv-3001] quit
    [Router] interface gigabitethernet 0/0/2
    [Router-GigabitEthernet0/0/2] nat outbound 3001 
    [Router-GigabitEthernet0/0/2] quit

  6. 在Router的下行接口配置服务器映射NAT Static,实现内网用户通过预留的公网IP地址访问内部FTP/Web服务器功能。

    [Router] interface gigabitethernet 0/0/2
    [Router-GigabitEthernet0/0/2] nat static protocol tcp global 1.1.1.3 21 inside 192.168.1.2 21   //使用预留的IP地址进行NAT转换,供内网用户访问
    [Router-GigabitEthernet0/0/2] nat static protocol tcp global 1.1.1.3 9080 inside 192.168.1.3 80
    [Router-GigabitEthernet0/0/2] quit
    [Router] quit

  7. 验证配置结果。
    1. 在Router上执行命令display nat outbound,查看动态NAT地址池配置。

      <Router> display nat outboundNAT Outbound Information:                                                      --------------------------------------------------------------------------     Interface                     Acl     Address-group/IP/Interface      Type     --------------------------------------------------------------------------     GigabitEthernet0/0/1         3000                        1.1.1.1    easyip     GigabitEthernet0/0/2         3001                    192.168.1.1    easyip     --------------------------------------------------------------------------     Total : 2                                                                  

    2. 在Router上执行命令display nat static,查看静态NAT地址映射关系。

      <Router> display nat staticStatic Nat Information:                                                       Interface  : GigabitEthernet0/0/1                                             Global IP/Port     : 1.1.1.3/21(ftp)                                        Inside IP/Port     : 192.168.1.2/21(ftp)                                    Protocol : 6(tcp)                                                           VPN instance-name  : ----                                                   Acl number         : ----                                                   Vrrp id            : ----                                                   Netmask  : 255.255.255.255                                                  Description : ----                                                          Global IP/Port     : 1.1.1.3/9080                                           Inside IP/Port     : 192.168.1.3/80(www)                                    Protocol : 6(tcp)                                                           VPN instance-name  : ----                                                   Acl number         : ----                                                   Vrrp id            : ----                                                   Netmask  : 255.255.255.255                                                  Description : ----                                                          Interface  : GigabitEthernet0/0/2                                             Global IP/Port     : 1.1.1.3/21(ftp)                                        Inside IP/Port     : 192.168.1.2/21(ftp)                                    Protocol : 6(tcp)                                                           VPN instance-name  : ----                                                   Acl number         : ----                                                   Vrrp id            : ----                                                   Netmask  : 255.255.255.255                                                  Description : ----                                                          Global IP/Port     : 1.1.1.3/9080                                           Inside IP/Port     : 192.168.1.3/80(www)                                    Protocol : 6(tcp)                                                           VPN instance-name  : ----                                                   Acl number         : ----                                                   Vrrp id            : ----                                                   Netmask  : 255.255.255.255                                                  Description : ----                                                          Total :    4 

    3. 在内网主机HostA上执行命令ping 1.1.1.2,模拟内网主机访问Internet,流量能Ping通,同时在Router上执行命令display nat session all可以查看到地址转换结果。

    4. 在内网主机HostA上执行命令ftp 1.1.1.3 21,模拟内网主机访问内部FTP服务器,FTP能正常访问,同时在Router上执行命令display nat session all可以查看到地址转换结果。

    5. 在外网主机HostC上执行命令ftp 1.1.1.3 21,模拟外网主机访问内部FTP服务器,FTP能正常访问,同时在Router上执行命令display nat session all可以查看到地址转换结果。

配置文件

Router配置文件

#sysname Router
#
acl number 3000                                                                 rule 5 permit ip source 192.168.1.0 0.0.0.255                                  
acl number 3001                                                                 rule 5 permit ip source 192.168.1.0 0.0.0.255 destination 1.1.1.3 0            
#
nat alg ftp enable
#
interface GigabitEthernet0/0/1undo portswitch                                                                ip address 1.1.1.1 255.255.255.0                                               nat static protocol tcp global 1.1.1.3 ftp inside 192.168.1.2 ftp netmask 255.255.255.255                                                                      nat static protocol tcp global 1.1.1.3 9080 inside 192.168.1.3 www netmask 255.255.255.255                                                                     nat outbound 3000
#
interface GigabitEthernet0/0/2undo portswitch                                                                ip address 192.168.1.1 255.255.255.0                                           nat static protocol tcp global 1.1.1.3 ftp inside 192.168.1.2 ftp netmask 255.255.255.255                                                                      nat static protocol tcp global 1.1.1.3 9080 inside 192.168.1.3 www netmask 255.255.255.255                                                                     nat outbound 3001
#
ip route-static 0.0.0.0 0.0.0.0 1.1.1.2
#
return

相关文章:

配置公网和私网用户通过非公网口的IP地址访问内部服务器和Internet示例

组网需求 如配置公网和私网用户通过非公网口的IP地址访问内部服务器和Internet示例所示&#xff0c;某小型企业内网部署了一台路由器、一台FTP服务器和一台Web服务器。路由器作为接入网关&#xff0c;为下挂的内网用户提供上网服务&#xff0c;主要包括浏览网页、使用即时通信…...

相机镜头选择与机器视觉控制

相机镜头选择与机器视觉控制 在机器视觉领域&#xff0c;除了图像处理和算法&#xff0c;还需要关注硬件方面的选型和控制。相机镜头的选择是其中重要的一部分&#xff0c;需要考虑像素大小、镜头焦距等因素以满足项目需求。此外&#xff0c;编程技能也包括相机的调用和使用&a…...

Git 为文件添加执行权限

背景 当你是一台Linux&#xff0c;想要给文件加权限很简单&#xff0c;只需要执行以下命令 chmod x filename就可以给文件添加执行权限&#xff0c;但是如果你是Windows那就很麻烦了 解决方案 假设这里有一个名为 file.sh 的文件&#xff0c;内容如下&#xff1a; #!/bin/…...

问题记录:GPU显卡提高后,代码总体运行效率没有提高

问题&#xff1a;GPU显卡提高后&#xff0c;代码总体运行效率没有提高 原先显卡NIVIDA T400换成NVIDIA RTX A4000&#xff0c;CUDA核心&#xff08;物理GPU线程单位&#xff09;从三百多提升到了六千多&#xff0c;但是程序总体运行的时间没有变化。 原因分析 显卡没用上或者…...

Reparameterization trick(重参数化技巧)

“Reparameterization trick”&#xff08;重参数化技巧&#xff09;是一种在训练生成模型中处理随机性潜在变量的方法&#xff0c;特别常见于变分自动编码器&#xff08;VAE&#xff09;等模型中。这个技巧的目的是使模型可微分&#xff08;differentiable&#xff09;&#x…...

Kotlin中的可空类型

在 Kotlin 中&#xff0c;可空类型是一项重要的特性&#xff0c;它允许我们声明变量可以为空。在本篇博客中&#xff0c;我们将介绍 Kotlin 中的可空类型&#xff0c;并提供示例代码演示如何处理可空变量、使用安全调用操作符&#xff08;?.&#xff09;、Elvis 运算符&#x…...

数学建模——最大流问题(配合例子说明)

目录 一、最大流有关的概念 例1 1、容量网络的定义 2、符号设置 3、建立模型 3.1 每条边的容量限制 3.2 平衡条件 3.3 网络的总流量 4、网络最大流数学模型 5、计算 二、最小费用流 例2 【符号说明】 【建立模型】 &#xff08;1&#xff09;各条边的流量限制 &a…...

AAOS CarMediaService 服务框架

文章目录 前言MediaSessionCarMediaService作用是什么&#xff1f;提供了哪些接口&#xff1f;如何使用&#xff1f;CarMediaService的实现总结 前言 CarMediaService 是AAOS中统一管理媒体播放控制、信息显示和用户交互等功能的服务。这一服务依赖于android MediaSession框架…...

gRPC之gRPC转换HTTP

1、gRPC转换HTTP 我们通常把RPC用作内部通信&#xff0c;而使用Restful Api进行外部通信。为了避免写两套应用&#xff0c;我们使用grpc- gateway 把gRPC转成HTTP。服务接收到HTTP请求后&#xff0c;grpc-gateway把它转成gRPC进行处理&#xff0c;然后以JSON 形式返回数据。…...

【十四】记一次MySQL宕机恢复过程,MySQL INNODB 损坏恢复

记一次MySQL宕机恢复过程 简介&#xff1a;一个业务数据库疏于运维管理&#xff0c;突然在今天崩溃宕机了&#xff0c;真是让人抓狂&#xff0c;上面也不知道积累了多久的数据&#xff0c;平时也没有定期做好备份&#xff0c;这下岂不是瞎了啊&#xff0c;经过不断的收集信息和…...

从0开始在Vscode中搭建Vue2/3项目详细步骤

1.安装node.js:Node.js下载安装及环境配置教程【超详细】_nodejs下载_WHF__的博客-CSDN博客 node.js自带npm&#xff0c;无需单独安装。 验证&#xff1a; node -v npm -v 2.先简单创建一个空文件夹&#xff0c;vscode进入该文件夹&#xff0c;并打开终端。 3.安装cnpm&…...

JavaScript ES6类的定义与继承

文章目录 一、class方式定义类1.认识class定义类2.类和构造函数的异同3.类的构造函数4.类的实例方法5.类的访问器方法6.类的静态方法 二、继承1.extends实现继承2.super关键字3.继承内置类4.类的混入mixin 三、ES6转ES51.class转换2.extends转换 四、多态 一、class方式定义类 …...

中科芯与IAR共建生态合作,IAR集成开发环境全面支持CKS32系列MCU

中国上海–2023年10月18日–嵌入式开发软件和服务的全球领导者IAR今日宣布&#xff0c;与中科芯集成电路有限公司&#xff08;以下简称中科芯&#xff09;达成生态合作&#xff0c;IAR已全面支持CKS32系列MCU的应用开发。这一合作将进一步推动嵌入式系统的发展&#xff0c;并为…...

设计模式:外观模式(C#、JAVA、JavaScript、C++、Python、Go、PHP)

大家好&#xff01;本节主要介绍设计模式中的外观模式。 简介&#xff1a; 外观模式&#xff0c;它是一种设计模式&#xff0c;它为子系统中的一组接口提供一个统一的、简单的接口。这种模式主张按照描述和判断资料来评价课程&#xff0c;关键活动是在课程实施的全过程中进行…...

Leetcode—34.在排序数组中查找元素的第一个和最后一个位置【中等】

2023每日刷题&#xff08;六&#xff09; Leetcode—34.在排序数组中查找元素的第一个和最后一个位置 实现代码 /*** Note: The returned array must be malloced, assume caller calls free().*/ int lower_bound(int *arr, int numsSize, int target) {// 左闭右开区间[lef…...

Java 8 新特性 Ⅱ

方法引用 举例: Integer :: compare 理解: 可以看作是基于lambda表达式的进一步简化 当需要提供一个函数式接口的实例时, 可以使用lambda表达式提供实例 当满足一定条件下, 可以使用方法引用or构造器引用替换lambda表达式 实质: 方法引用作为函数式接口的实例 (注: 需要熟悉…...

C语言学习书籍推荐

C语言学习书籍推荐如下&#xff1a; 《C程序设计语言》&#xff08;The C Programming language&#xff09;&#xff1a;这本书由C语言创始人Brian W. Kernighan和Dennis M. Ritchie所写&#xff0c;是介绍标准C语言及其程序设计方法的权威性经典著作。《C陷阱与缺陷》&#…...

IntelliJ IDEA Maven加载超时问题

IDEA创建Maven项目遇到如下错误&#xff1a; Could not transfer artifact org.apache.maven.plugins:maven-compiler-plugin:pom:3.10.1 from/to central (Central Repository:): Connect to repo.maven.apache.org:443 [repo.maven.apache.org/146.75.112.215] failed: conn…...

Spring中事务失效的几种场景及解决办法

未抛出异常&#xff1a;如果在一个带有事务的方法中没有抛出异常&#xff0c;Spring无法检测到事务失败&#xff0c;从而无法回滚。解决方法是确保在事务中遇到错误时抛出异常。 异常被捕获&#xff1a;如果在一个带有事务的方法中抛出异常&#xff0c;但被捕获并处理了&#…...

第五届太原理工大学程序设计竞赛新生赛(初赛)题解

第五届太原理工大学程序设计竞赛新生赛&#xff08;初赛&#xff09;题解 时隔半年重做一次&#xff0c;还是有几道不会&#xff0c;&#xff0c;&#xff0c;&#xff0c;&#xff0c; ⭐️A.饿饿饭饭 题目&#xff1a; &#x1f31f;题解&#xff1a; 很简单&#xff0c;签…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具&#xff0c;可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下&#xff1a; ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜&#xff1a; ffmpeg…...

【决胜公务员考试】求职OMG——见面课测验1

2025最新版&#xff01;&#xff01;&#xff01;6.8截至答题&#xff0c;大家注意呀&#xff01; 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:&#xff08; B &#xff09; A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式&#xff1a;dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一&#xff0c;腐蚀跟膨胀属于反向操作&#xff0c;膨胀是把图像图像变大&#xff0c;而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

IP如何挑?2025年海外专线IP如何购买?

你花了时间和预算买了IP&#xff0c;结果IP质量不佳&#xff0c;项目效率低下不说&#xff0c;还可能带来莫名的网络问题&#xff0c;是不是太闹心了&#xff1f;尤其是在面对海外专线IP时&#xff0c;到底怎么才能买到适合自己的呢&#xff1f;所以&#xff0c;挑IP绝对是个技…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill

视觉语言模型&#xff08;Vision-Language Models, VLMs&#xff09;&#xff0c;为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展&#xff0c;机器人仍难以胜任复杂的长时程任务&#xff08;如家具装配&#xff09;&#xff0c;主要受限于人…...

c++第七天 继承与派生2

这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分&#xff1a;派生类构造函数与析构函数 当创建一个派生类对象时&#xff0c;基类成员是如何初始化的&#xff1f; 1.当派生类对象创建的时候&#xff0c;基类成员的初始化顺序 …...

给网站添加live2d看板娘

给网站添加live2d看板娘 参考文献&#xff1a; stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下&#xff0c;文章也主…...