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

华为nat配置实验:内网能够访问外网,内网服务器80端口映射出去

一 需求分析

1.1 需求

公司A在北京,公司B在上海,本次实验仅仅模拟局域网内出口路由器的配置,公司A业务流量较大,并且预算有限。公司B模拟外网的一个小型局域网,要求公司B的主机能够访问公司A的web服务器。

1.2 分析

采用napt和NAT server的nat方式

  • NAPT:使用不同的端口来映射多个内网 IP 地址到一个指定的外网 IP 地址,多对一。NAPT 采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部 IP 地址实现对 Internet 的访问,从而可以最大限度地节约 IP 地址资源。同时,又可隐藏网络内部的所有主机,有效避免来自 Internet 的攻击。因此,目前网络中应用最多的就是端口多路复用方式。

  • NATServer:NATServer可以实现静态NAT转换,且可以控制只允许某些外网端口可以连接内网服务器,通过Easy IP,NATServer实现内网访问外网的同时,外网通过另一个公网地址可以访问到内网的http,ftp,telnet等服务。

二 实验拓扑

三 IP地址规划

设备

接口

IP地址

PC1

192.168.1.1/24

server1

192.168.1.2/24

PC2

172.25.250.1/24

AR1

G0/0/0

192.168.1.254/24

G0/0/1

12.1.1.1/24

ISP

G0/0/0

12.1.1.2/24

G0/0/1

23.1.1.2/24

R3

G0/0/0

23.1.1.3/24

G0/0/1

172.25.250.254/24

ENSP的ip地址配置实例:

[r1]int g0/0/0  
[r1-GigabitEthernet0/0/0]ip address 23.1.1.3 24

四 实验配置

pc1:

server1:

pc2:

client1:

AR1:

配置默认路由:

为什么配置默认路由呢?因为经过nat地址转换后,不知去外网的下一跳如何走,所以此时需要默认路由指路

[R1]ip route-static 0.0.0.0 0.0.0.0 12.1.1.2

napt配置:

[R1]acl number 2000 
[R1-acl-basic-2000]rule 5 permit source 192.168.1.0 0.0.0.255
[R1]nat address-group 1 12.1.1.3 12.1.1.3//将192.168.1.0/24网段的地址转会为12.1.1.3:端口的方式在公网上传
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1

nat server配置:

[R1]int g0/0/1
[R1-GigabitEthernet0/0/1] nat server protocol tcp global 12.1.1.4 www inside 192.168.1.254 www

ISP:

为模拟实验效果,ISP为运营商网络,我们仅仅配置两条静态即可

[ISP]ip route-static 192.168.1.0 255.255.255.0 23.1.1.3
[ISP]ip route-static 172.25.250.0 255.255.255.0 23.1.1.3

R3:

配置默认路由:

[R3]ip route-static 0.0.0.0 0.0.0.0 23.1.1.2

napt配置:

[R3acl number 2000 
[R3-acl-basic-2000]rule 5 permit source 172.25.250.0 0.0.0.255
[R3]nat address-group 1 23.1.1.4 23.1.1.4//将172.25.250.0/24网段的地址转会为23.1.1.4:端口的方式在公网上传
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]nat outbound 2000 address-group 1

实验检验:

pc2能ping通pc1,说明nat做的没问题,公司A和公司B都能访问外网

client能得到对端服务器server1的80端口发布的文件,说明外网能访问内网的80端口

实验完成


http://www.kler.cn/a/1094.html

相关文章:

  • 【集成学习】Bagging、Boosting、Stacking算法详解
  • SpringBoot日常:集成Kafka
  • HarmonyOS鸿蒙开发 弹窗及加载中指示器HUD功能实现
  • 【Notepad++】Notepad++如何删除包含某个字符串所在的行
  • Django 4.0文档学习(一)
  • 移动端适配
  • openstack
  • Kaggle实战入门:泰坦尼克号生生还预测
  • 小黑子—多媒体技术与运用基础知识:一
  • VSCode 开发配置,一文搞定(持续更新中...)
  • SparkSQL-SparkOneHive
  • 使用busybox构建根文件系统
  • python 正则表达式
  • Springboot 整合dom4j 解析xml 字符串 转JSONObject
  • Android开发 Layout布局 ScrollView
  • linux操作系统lVM扩容
  • VI的常用命令
  • get table meta failed, please check whether the table xxx exists
  • Nuxt.js项目开发过程遇到的问题以及对Nuxt.js的学习与总结
  • WEB前端第三次作业——CSS样式案例
  • 记录一次es的性能调优
  • 统计软件与数据分析—Lesson2
  • 行业洞察丨PDF图纸为什么影响生产企业的生产质量?订单交期?
  • 最适合游戏开发的语言是什么?