ACL

ACL 两种作用:

1.用来对数据做访问控制(丢弃或放行)

2.结合其他协议,用来匹配范围

ACL工作原理:

当数据包从接口经过时,由于接口启用了acl,此时路由器会对报文进行检查,然后做出相应的处理。

访问控制列表接口应用方向

访问控制列表(ACL)&网路地址转换(NAT)_ip地址

出口:已经经过路由器的处理,正在离开路由器接口的包

入口:已经到达路由器接口的包,将被路由器处理

ACL的种类:

基本acl(2000-2999):    只能匹配源ip地址。

高级acl(3000-3999):    可以匹配源ip、目标ip、源端口、目标端口等三层和四层的字段协议。

二层ACL(4000-4999):     根据数据包的源MAc地址、目的MAC地址、802.1q优先级、二                                         层协议类型等二层信息制定规则。(仅作了解即可)


ACL《访问控制列表)的网用原则:

基本ACL:尽量用在靠近目的点

高级ACL:尽量用在靠近源的地方(可以保护带宽和其他资源)


应用规则:

1.一个接口的国一个方向,只能调用一个acl

2.一个acl里面可以有多个rule规则,按照规则ID从小到大排序,从上往下依次执行

3.数据包一旦被某rule匹配,就不再继续问下匹配

4.用来做数据包访问控制时,默认隐含放过所有(华为设备)



反掩码:

若表示一台固定的主机 255.255.255.255,反掩码就是0.0.0.0

常用C类网段24掩码表示为255.255.255.0,反掩码就是0.0.0.255

反掩码就是一个掩码用点分十进制表示后,用255减去每一段的值就是反掩码的值

例如:255.255.255.240,反掩码就是0.0.0.15


基础ACL配置(2000~2999)拒绝某一台主机访问

[Huawei]acl number 2000     #创建acl序列号,用于指定其类型

[ Huawei-acl-basic-2000 ]rule 5 deny source 192.168.1.1 0   

 #拒绝源地址为192.168.1.1的流量,0代表仅此一台,5是这条规则的序号(可不加)

[ Huawei]interface GigabitEthernet 0/0/1     #进入接口

[Huawei-GigabitEthernet0/0/1]ip address 192.168.2.254 24    #配置这个接口的IP地址

[Huawei-GigabitEthernet0/0/1]traffic-filter outbound acl 2000    #接口出方向调用acl

2000,outbound代表出方向,inbound代表进入方向

[ Huawei-GigabitEtherneto/0/1]undo sh      #开启接口

设置仅允许某一网段访问,拒绝其它所有

[ Huawei]acl number 2001       #进入acl 2001 列表

[ Huawei-acl-basic-2001]rule permit source 192.168.1.0 0.0.0.255 

#permit代表允许,source代表来源,掩码部分为反掩码

[Huawei-acl-basic-2001]rule deny source any   

#拒绝所有访问,any代表所有0.o.o.0 255.255.255.255

[Huawei]interface GigabitEthernet 0/0/1    #进入出口接口

[Huawei-GigabitEthernet0/0/1]ip address 192.168.2.254 24    #为接口配上ip地址

[Huawei-GigabitEthernet0/0/1]traffic-filter outbound acl 2001


高级ACL(3000~3999)

[ Huawei]acl nmuber 3000         #拒绝tcp为高级控制,所以3000起

[ Huawei-acl-adv-3000]rule deny icmp source 192.168.1.0 0.0.0.255 destination 192.168.3.1 0      #拒绝ping

[Huawei-acl-adv-3000]rule permit tcp source 192.168.1.3 0 destination 192.168.3.1 0 destination-port eq 80

#destination代表目的地地址,destination-port代表目的端口号,80可用www代替

[Huawei-acl-adv-3000]rule deny tcp source any destination 192.168.3.1 0 destination-port eq 80


[Huawei-acl-adv-3000]rule deny tcp source 192.168.10.0 0.0.0.255 destination 12.0.0.2 destination-port eq 21

#拒绝源地址:192.168.10.0网段访问FTP服务器12.0.0.2

[Huawei-acl-adv-3000]dis this      #查看当前ACL配置是否配置成功

配置好后:

[Huawei]interface  g0/0/0    #进入接口

[Huawei-GigabitEthernet0/0/1]ip address 192.168.2.254 24   #为接口配置上ip

[Huawei-GigabitEthernet0/0/0]traffic-filter inbound acl 3000  #在接口入方向应用acl

[Huawei-GigabitEtherneto/0/1]undo traffic-filter inbound      #在接口上取消acl的应用


补充:

[Huawei] display acl 3000           #显示acl配置

[Huawei-acl-adv-3000]dis this    #查看规则序号

[Huawei-acl-adv-3000]undo rule 5    #删除一条acl语句

[Huawei]undo acl number 3000        #删除整个acl



网路地址转换(NAT)


NAT (Network Address Translation)又称为网络地址转换,用于实现私有网络和公有网络之间的互访。


私有网络地址和公有网络地址

公有网络地址(以下简称公网地址)是指在互联网上全球唯一的IP地址。2019年11月26日,是人类互联网时代值得纪念的一天,全球近43亿个IPv4地己正式耗尽。

私有网络地址是指内部网络或主机的IP地址,IANA(互联网数字分配机构)规定将下列的IP地址保留用作私网地址,不在Enternet上被分配,可在一个单位或公司内部使用。RFC1918中规定私有地址如下:

A类私有地址:10.0.0.0~10.255.255.255

B类私有地址:172.16.0.0~172.31.255.255

C类私有地址:192.168.0.0~192.168.255.255


NAT的工作原理:

1.NAT用来将内网地址和端口号转换成合法的公网地址和端口号,建立一个会话,与公网主机进行通信

2.NAT外部的主机无法主动跟位于NAT内部的主机通信,NAT内部主机想要通信,必须主动和公网的一个IP通信,路由器负责建立一个映射关系,从而实现数据的转发。


NAT转换表


访问控制列表(ACL)&网路地址转换(NAT)_数据_02


数据包从内网到外网时,会转换源P地址。由私网地址转换成公网地址。

数据包从外网到内同时,会转换目的IP地址,由公网地址转换成私网地址。


NAT功能:

NAT不仅能解决了IP地址不足的问题,而且还能够有效地避免来自网络外部的rq,隐藏并保护网络内部的计算机。

1.宽带分享: 这是NAT主机的最大功能。

2.安全防护: NAT之内的PC联机到Internet 上面时,他所显示的IP是NAT主机的公网IP,所以Client端的PC就具有一定程度的安全了,外界在进行portscan(端口扫描)的时候,就侦测不到源Client端的PC 。


优点: 节省公有合法IP地址、处理地址重叠、增强灵活性、安全性

缺点: 延迟增大、配置和维护的复杂性



静态NAT

静态NAT实现私网地址和公网地址的一对一转换。有多少个私网地址就需要配置多少个公网地址。静态NAT不能节约公网地址,但可以起到隐藏内部网络的作用。

内部网络向外部网络发送报文时,静态NAT将报文的源IP地址替换为对应的公网地址;

外部网络向内部网络发送响应报文时,静态NAT将报文的目的地址替换为相应的私网地址。


配置

第一种方法:

在全局模式下设置静态NAT

[R1]nat static global 8.8.8.8 inside 192.168.10.10

[R1]int go/0/1    #外网口

[R1-GigabitEthernet0/0/1]nat static enable    #在网口上启动nat static enable 功能

访问控制列表(ACL)&网路地址转换(NAT)_外网_03



R1的配置:

<Huawei>sys

[Huawei]sys R1

[R1]un in en

[R1]user-interface console 0  

[R1-ui-console0]idle-timeout 0 0

[R1-ui-console0]q

[R1]int g0/0/0

[R1-GigabitEthernet0/0/0]ip add 192.168.1.1 24

[R1-GigabitEthernet0/0/0]un sh

[R1-GigabitEthernet0/0/0]dis th

[V200R003C00]

#

interface GigabitEthernet0/0/0

ip address 192.168.1.1 255.255.255.0  

#

return

[R1-GigabitEthernet0/0/0]int g0/0/1

[R1-GigabitEthernet0/0/1]ip add 12.0.0.1 24

[R1-GigabitEthernet0/0/1]un sh

[R1-GigabitEthernet0/0/1]dis th

[V200R003C00]

#

interface GigabitEthernet0/0/1

ip address 12.0.0.1 255.255.255.0  

#

return

[R1-GigabitEthernet0/0/1]q  

[R1]nat static global 20.0.0.1 inside 192.168.1.10

[R1]int g0/0/1

[R1-GigabitEthernet0/0/1]nat static enable  

[R1-GigabitEthernet0/0/1]q  

[R1]




第二种:

直接在接口上声明nat static 

[Rl ]int g0/0/1      #外网口

[R1-GigabitEthernet0/0/1]nat static global 8.8.8.8 inside 192.168.10.10


[R1]dis nat static     #查看NAT静态配置信息



动态NAT

动态NAT:多个私网IP地址对应多个公网IP地址,基于地址池一对一映射

1.配置外部网口和内部网口的IP地址

2.定义合法IP地址池

[R1]nat address-group 1 212.0.0.100 212.0.0.200    #新建一个名为1的nat地址池

3.定义访问控制列表

[R1]acl 2000   #创建ACL,允许源地址为192.168.20.0/24网段和11.0.0.0/24的数据通过

[R1-acl-basic-2000]rule permit source 192.168.20.0 0.0.0.255

[R1-acl-basic-2000]rule permit source 11.0.0.0 0.0.0.255

4.在外网口上设置动态IP地址转换

[R1-acl-basic-2000]int g0/0/1       #外网口

[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1 no-pat

#将ACL2000匹配的数据转换为改接口的IP地址作为源地址(no pat不做端口转换,只做IP地址转换,默认为pat)


[R1]dis nat outbound    #查看NAT Outbound的信息


PAT端口多路复用

PAT又称NAPT (Network Address Port Translation) ,它实现一个公网地址和多个私网地址之间的映射,因此可以节约公网地址。PAT的基本原理是将不同私网地址的报文的源IP地址转换为同一个公网地址,但他们被转换为该地址的不同端口号,因而仍然能共享同一地址。

PAT的类型

1.动态PAT,包括NAPT和EASY IP  2. 静态PAT,包括NAT Server


PAT的作用

1.改变数据包的IP地址和端口号    2.能够大量节约公网IP地址。


NAPT

多个私网IP地址对应固定外网IP地址(比如200.1.1.10),配置方法与动态NAT类似

1.配置外部网口和内部网口的IP地址

2.定义合法IP地址池

[R1]nat address-group 1 200.1.1.10  200.1.1.10使用一个固定IP

3.定义访问控制列表

[R1]acl 2000

[R1-acl-adv-2000]rule permit source 192.168.30.0 0.0.0.255

#允许源地址:为192.168.30.0/24网段的数据通过

4.在外网口上设置IP地址转换

[R1-acl-basic-2000]int g0/0/1         #外网口

[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1


EASYIP

多个私网IP地址对应路由器外网接口公网IP地址(比如12.0.0.1)

1.配置外部网口和内部网口的IP地址

2.定义合法IP地址池

由于直接实验外网口IP地址所以不用再定义IP地址池


3.定义访问控制列表

[R1]acl 3000      #允许源地址为192.168.30.o/24网4段的数据通过

[Rl-acl-adv-3000]rule permit ip source 192.168.30.0 0.0.0.255

4.在外网口上设置Ip地址转换

[R1]int g0/0/1       #外网口

[R1-GigabitEtherneto/0/1]nat outbound 3000

#当acl 3000匹配的源IP数据到达此接口时,转换为该接口的IP地址做为源地址


[R1]display nat session all      查看NAT的流表信息


NAT Server

端口映射,将私网地址端口映射到公网地址,实现内网服务器供外网用户访问

[R1]int g0/0/1 

[R1-GigabitEthernet0/0/1]nat server protocol tcp global 9.9.9.9 www inside 192.168.10.100 www

#在连接公网的接口上将私网服务器地址和公网地址做一对NAT映射绑定


[R1-GigabitEthernet0/0/1]nat server protocol tcp global current-interface 8080 inside 10.1.1.1 www

#在连接公网的接口上将私网服务器地址和外网接口做一对NAT映射绑定

[R1-GigabitBthernet0/0/1]nat server protocol tcp global current-interface 2121 inside 10.1.1.2 ftp

#端口为21可以直接使用关键字”ftp“代替


配置


访问控制列表(ACL)&网路地址转换(NAT)_ip地址_04



[R1]user-interface console 0

[R1-ui-console0]idle-timeout 0 0

[R1-ui-console0]q

[R1]int g0/0/0

[R1-GigabitEthernet0/0/0]ip add 192.168.1.1 24

[R1-GigabitEthernet0/0/0]un sh

[R1-GigabitEthernet0/0/0]dis th

[V200R003C00]

#

interface GigabitEthernet0/0/0

ip address 192.168.1.1 255.255.255.0  

#

return

[R1-GigabitEthernet0/0/0]int g0/0/1

[R1-GigabitEthernet0/0/1]ip add 12.0.0.1 24

[R1-GigabitEthernet0/0/1]un sh

[R1-GigabitEthernet0/0/1]dis th

[V200R003C00]

#

interface GigabitEthernet0/0/1

ip address 12.0.0.1 255.255.255.0  

#

return

[R1-GigabitEthernet0/0/1]q

[R1]nat address-group 1 20.0.0.100 20.0.0.200

[R1]acl 2000  

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

[R1-acl-basic-2000]dis th

[V200R003C00]

#

acl number 2000  

rule 5 permit source 192.168.1.0 0.0.0.255  

#

return

[R1-acl-basic-2000]q

[R1]int g0/0/1  

[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1 no-pat  

[R1-GigabitEthernet0/0/1]q

[R1]





------以上就是访问控制列表&网路地址转换基本理论与配置,谢谢!