ACL与NAT

目录

一、ACL

(一)ACL基本理论

(二)ACL的类型

1.基本ACL

2.高级ACL

3.二层ACL

(三)基本原理

(四)项目实验

通配符掩码

二、NAT

(一)基本理论

(二)工作原理

(三)静态NAT与动态NAT

1.静态NAT

2.动态NAT

3.NATPT(端口映射)

4.Easy-IP


一、ACL

(一)ACL基本理论

ACL(Access Control List)访问控制列表是一种网络安全机制,用于过滤和控制网络中的数据流量。它可以根据源IP地址、目的IP地址、端口号、协议类型等信息,来允许或拒绝数据包的传输。普通ACL

(二)ACL的类型

1.基本ACL

ACL 2000-2999 只能限制源IP地址

2.高级ACL

ACL 3000-3999 依据数据包当中的源、目IP地址和源、目的端口、协议,匹配数据

3.二层ACL

ACL4000-4999 MAC、VLAN-ID、802.1q

(三)基本原理

1.规则定义

在创建ACL时,需要定义一系列的规则,每个规则都包含一个匹配条件和一个操作。

2.匹配条件

匹配条件可以是源IP地址、目的IP地址、源端口号、目的端口号、协议类型等信息。

3.操作

操作可以是允许(permit)或者拒绝(deny)。如果数据包与某个规则的匹配条件相符,那么就会执行该规则所指定的操作。

4.顺序执行

ACL中的规则是按照一定的顺序执行的。当数据包进入网络时,会依次检查每个规则,直到找到第一个匹配的规则为止。

5.应用范围

ACL可以应用于路由器、交换机、防火墙等设备,以及操作系统和应用程序中。

6.灵活配置

ACL支持灵活的配置方式,可以根据不同的需求来定义各种复杂的规则。

7.安全保护

通过使用ACL,可以有效地防止非法访问、攻击和病毒传播,提高网络的安全性

(四)项目实验

配置完相关地址后,在没有任何操作的情况下,都是可以联通的

下面开始制定ACL规则,使client1不能访问server1,可以访问server2

配置路由器

复制代码
<Huawei>u t m 
Info: Current terminal monitor is off.
#关闭提示信息
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
#进入系统模式
[Huawei]sys R2
#更改名字
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip add 192.168.1.254 24
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip add 192.168.2.254 24
[R2-GigabitEthernet0/0/1]int g0/0/2
[R2-GigabitEthernet0/0/2]ip add 192.168.3.254 24

#配置IP地址

[R2-GigabitEthernet0/0/2]q
[R2]acl 2000	#基本acl 列表    
[R2-acl-basic-2000]rule (规则编号) deny source 192.168.1.1 0

#拒绝该地址访问  规则编号可加可不加,不加默认为5,规则执行由上到下,如果想先执行其它规则,再此编辑规则时在该位置添加1-4的编号

[R2-acl-basic-2000]q
[R2]int g0/0/1
[R2-GigabitEthernet0/0/1]traffic-filter outbound acl 2000
#数据流向    把该规则作用在靠近目标地址的出口

通配符掩码

  • 0:表示这个位置上的IP地址位必须严格匹配。
  • 1:表示这个位置上的IP地址位可以任意取值。

例如,一个常见的通配符地址是 0.0.0.255,它对应的子网掩码是 255.255.255.0。这意味着:

  • IP地址的前三个字节(八位)是固定不变的。
  • 第四个字节(八位)的最后一位可以任意取值。

此时使用ping测试server1和2的联通性

高级ACL可以访问服务

在服务器里有http服务和ftp服务,随便选一个文件夹启动

client1用户现在是可以访问http服务和ftp服务的

现在设置client1用户无法访问http服务,这要使用到高级ACL

复制代码
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]undo traffic-filter outbound

#删除普通acl配置

[R2-GigabitEthernet0/0/1]acl 3000
	
[R2-acl-adv-3000]rule deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 de
stination-port eq 80

#这条命令的意思是:不让192.168.1.1 访问192。168.2.1 的tcp 80端口

[R2-acl-adv-3000]q
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]traffic-filter inbound acl 3000
将该规则配置在进口,防止数据在路由器打转浪费资源

再去访问的话就会显示连接失败

二、NAT

(一)基本理论

NAT(Network Address Translation)网络地址转换是一种将私有IP地址转换为公有IP地址的技术,以实现多个设备共享一个公网IP地址,并能够访问互联网。NAT通常用于企业、家庭等内部网络与外部网络之间的通信。

(二)工作原理

NAT的工作原理如下:

1.内部网络

在内部网络中,设备使用的是私有IP地址,这些地址不会被路由到公共互联网上。

2.路由器上的NAT配置

路由器上需要启用NAT功能,并配置至少一个公网IP地址作为出口地址。

3.数据包发送

当内部网络中的设备向外部网络发送数据包时,路由器会将数据包的源IP地址和端口号替换为自己的公网IP地址和一个新的端口号。

4.建立映射表

路由器会创建一个映射表,记录下每个内部IP地址及其对应的公网IP地址和端口号。

5.响应数据包接收

当外部网络返回的数据包到达路由器时,路由器会根据映射表找到对应的内部IP地址,并将数据包转发给该设备

6.映射表维护

如果长时间没有数据包经过某个映射关系,路由器可能会删除这个映射,以释放资源。

(三)静态NAT与动态NAT

1.静态NAT

工程手动将一个私有地址和一个公网地址进行关联,一 一对应

按图片信息将IP地址配置好

PC去ping 200.0.0.1是可以通的。200.0.0.2不能通

输入:nat static enable 开启静态NAT

输入:nat static global 200.0.0.10 inside 192.168.1.1

路由器收到来自私网地址192.168.1.1的数据包,自动将该地址转化为公网地址200.0.0.10

再去ping就可以联通了

如果想让PC也可以联通的话,需要一个新的公网地址做关联

2.动态NAT

首先undo掉之前的静态NAT

复制代码
[QY]nat address-group 1 200.0.0.20 200.0.0.50

#建立地址池

[QY]acl 2000

[QY-acl-basic-2000]rule permit source 192.168.1.0   0.0.0.255

#允许这个网段的IP通过

[QY-acl-basic-2000]q
[QY]int g0/0/1

[QY-GigabitEthernet0/0/1]nat outbound 2000 address-group 1 no-pat(不带端口号)

#配置到outbound 

这个时候PC1和PC2都可以ping通了

输入display nat session all查看一下详细信息,从这里可以看出,将地址转成之前建立的地址池的范围内

3.NATPT(端口映射)

内网服务器对外提供服务,可以让用户访问内网服务器

将这三个地址配好

在企业出口做默认路由

ping 200.0.0.1测试一下

这个时候查看http服务显示失败,因为路由器不提供七层服务,通过将服务器与路由器做关联之后就可以访问成功了

复制代码
[QY]int g0/0/01
[QY-GigabitEthernet0/0/1]dis th
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 200.0.0.1 255.255.255.0 
 nat outbound 2000 address-group 1 
#
return
[QY-GigabitEthernet0/0/1]undo nat outbound 2000 address-group 1

#将这条静态nat取消掉

[QY-GigabitEthernet0/0/1]nat server protocol tcp global current-interface www in
side 192.168.1.100 www

#current-interface:当前接口
global:公网
WWW :80
当前接口的公网地址 200.0.0.1 80 与192.168.1.100 80 做关联

Warning:The port 80 is well-known port. If you continue it may cause function fa
ilure.

Are you sure to continue?[Y/N]:y

4.Easy-IP

①使用列表匹配私网的ip地址

②将所有的私网地址映射成路由器当前接口的公网地址

QY-GigabitEthernet0/0/1\]undo nat server protocol tcp global current-interface w ww inside 192.168.1.100 www \[QY-GigabitEthernet0/0/1\]nat outbound 2000 现在这个网络环境里都可以联通了 ![](https://file.jishuzhan.net/article/1737605774735052801/a4018c5fbf6dcb5c2d5149ee34d51b91.webp) 查看一下信息可以发现,私网地址都换成了公网地址200.0.0.1 ,每个数据携带的端口号也不一样 ![](https://file.jishuzhan.net/article/1737605774735052801/b69f70c247a6d38aeb30cff43d4fb7b9.webp)

相关推荐
七夜zippoe7 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
盟接之桥7 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
会员源码网8 小时前
理财源码开发:单语言深耕还是多语言融合?看完这篇不踩坑
网络·个人开发
米羊1218 小时前
已有安全措施确认(上)
大数据·网络
Fcy6488 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满8 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠9 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
主机哥哥9 小时前
阿里云OpenClaw部署全攻略,五种方案助你快速部署!
服务器·阿里云·负载均衡
Harvey9039 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
ManThink Technology9 小时前
如何使用EBHelper 简化EdgeBus的代码编写?
java·前端·网络