ACL和NAT

目录

一、ACL

1.ACL概述

2.ACL应用

3.ACL工作原理

4.规则编号

5.通配符

6.ACL的分类与标识

7.ACL的匹配机制

8.ACL的应用原则

9.匹配规则

二、ACL访问控制列表实验

1、基本ACL访问控制列表实验​

(1)给Client1、Client2、Server1和Server2配置ip、网关等​

(2)配置路由

(3)此时全网互通

(4)配置路由拒绝访问命令

(5)验证实验​

2、高级ACL访问控制列表实验

(1)配置Server1中的FtpServer并启动​

(2)进入Client1的FtpClient中,输入要访问的服务器地址,并登录​

(3)对路由器进行配置

(4)验证此时client1中httpclient不能访问server1​

(5)验证但此时client1中ftpclient可以访问server1​

3、ACL(访问控制列表)的应用原则

三、HTTP

四、NAT

五、NAT实验

1、静态NAT实验​

(1)给pc1和pc2配置ip,子网掩码和网关 ​

(2) 路由器配置

(3)此时验证pc1可以ping通200.1.1.2

​2、动态NAT实验

(1)先在企业路由器中将之前的静态NAT删除:

 (2)此时pc1 ping不通200.1.1.2

 (3)接下来我们在这个企业路由器下进行配置,配置如下:

(4)此时验证pc1可以ping通200.1.1.2

3、NAPT(P:端口号)

3.1Easy-IP实验

3.2NAT Server实验

六、总结

1.ACL访问控制列表

2.代码

3.acl

4.NAT地址转换协议工作原理

5.静态NAT

6.动态NAT

7.NAPT


一、ACL

1.ACL概述

  • ACL是由一系列permit或deny语句组成的、有序规则的列表
  • ACL是一个匹配工具,能够对报文进行匹配和区分

2.ACL应用

  • 应用在接口的ACL——过滤数据包(源目ip地址(低级),源目mac,端口 五元组)
  • 应用在路由协议——匹配相应的路由条目
  • NAT、IPSEC VPN、QOS——匹配感兴趣的数据流(匹配上我设置的 数据流的)

3.ACL工作原理

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

4.规则编号

  • 规则编号(Rule ID) : 一个ACL中的每一条规则都有一个相应的编号。
  • 步长(Step) : 步长是系统自动为ACL规则分配编号时,每个相邻规则编号之间的差值,缺省值为5。步长的作用是为了方便后续在旧规则之间,插入新的规则。
  • Rule ID分配规则: 系统为ACL中首条未手工指定编号的规则分配编号时,使用步长值(例如步长=5,首条规则编号为5)作为该规则的起始编号;为后续规则分配编号时,则使用大于当前ACL内最大规则编号且是步长整数倍的最小整数作为规则编号。

5.通配符

  • 通配符是一个32比特长度的数值,用于指示IP地址中,哪些比特位需要严格匹配,哪些比特位无需匹配。
  • 通配符通常采用类似网络掩码的点分十进制形式表示,但是含义却与网络掩码完全不同。

子网掩码

      连续的1 代表网络位 ,连续的0代表主机位 0 1中间不能穿插

反掩码

      连续的0代表网络位,连续的1代表主机位

通配符掩码

      根据参考ip地址,通配符“1”对应位可变 ,”0“对应位不可变 ,中间0 1可以穿插

6.ACL的分类与标识

基于ACL规则定义方式的分类:

分类 编号范围 规则定义描述
基本ACL 2000~2999 仅使用报文的源IP地址、分片信息和生效时间段信息来定义规则。
高级ACL 3000~3999 可使用IPv4报文的源IP地址、目的IP地址、IP协议类型、ICMP类型、TCP源/目的端口号、UDP源/目的端口号、生效时间段等来定义规则。
二层ACL 4000~4999 使用报文的以太网帧头信息来定义规则,如根据源MAC地址、目的MAC地址、二层协议类型等。
用户自定义ACL 5000~5999 使用报文头、偏移位置、字符串掩码和用户自定义字符串来定义规则。
用户ACL 6000~6999 既可使用IPv4报文的源IP地址或源UCL(User Control List)组,也可使用目的IP地址或目的UCL组、IP协议类型、ICMP类型、TCP源端口/目的端口、UDP源端口/目的端口号等来定义规则。

基于ACL标识方法的分类:

分类 规则定义描述
数字型ACL 传统的ACL标识方法。创建ACL时,指定一个唯一的数字标识该ACL。
命名型ACL 通过名称代替编号来标识ACL。

7.ACL的匹配机制

从上而下,一次匹配,一旦匹配,立即执行,不再匹配

小范围写在上面,大范围写在下面。

8.ACL的应用原则

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

9.匹配规则

  • 一个接口的同一个方向,只能调用一个acl
  • 一个acl里面可以有多个rule规则,按照规则ID从小到大排序,从上往下依次执行
  • 数据包一旦被某rule匹配,就不再继续向下匹配
  • 用来做数据包访问控制时,默认隐含放过所有(华为设备)

二、ACL访问控制列表实验

步骤:1.建立规则 2.进入接口 调用规则

1、基本ACL访问控制列表实验ACL和NAT_第1张图片

(1)给Client1、Client2、Server1和Server2配置ip、网关等ACL和NAT_第2张图片

ACL和NAT_第3张图片

(2)配置路由

u t m                                         #关闭华为的信息提示
sys                                           #进入系统视图
[Huawei]sys r1                                        #改名为r1
[r1]int g0/0/0                                        #进入0/0/0接口
[r1-GigabitEthernet0/0/0]ip add 192.168.1.254 24      #配置IP 
[r1-GigabitEthernet0/0/0]int g0/0/1                   #进入0/0/1接口
[r1-GigabitEthernet0/0/1]ip add 192.168.2.254 24      #配置IP
[r1-GigabitEthernet0/0/1]int g0/0/2                   #进入0/0/2接口
[r1-GigabitEthernet0/0/2]ip add 192.168.3.254 24      #配置IP
[r1-GigabitEthernet0/0/2]q                            #退出接口模式

(3)此时全网互通

ACL和NAT_第4张图片

ACL和NAT_第5张图片ACL和NAT_第6张图片

(4)配置路由拒绝访问命令

[r1]acl number 2000                                           #建立acl 2000规则
[r1-acl-basic-2000]rule 5 deny source 192.168.1.1 0           #默认编号5 拒绝来自192.168.1.1的流量
[r1-acl-basic-2000]q                                          #退出acl 2000规则
[r1]int g0/0/1                                                #进入g0/0/1接口
[r1-GigabitEthernet0/0/1]traffic-filter outbound acl 2000     #当设备从特定接口向外发送数据时执行ACL
[r1-GigabitEthernet0/0/1]q                                    #退出

(5)验证实验ACL和NAT_第7张图片

ACL和NAT_第8张图片

在server1中配置服务器信息并启动:ACL和NAT_第9张图片

此时client2可以访问server1:ACL和NAT_第10张图片

此时client1不能访问server1:ACL和NAT_第11张图片

在路由器中输入以下配置:

[r1]int g0/0/1                                          #进入g0/0/1
[r1-GigabitEthernet0/0/1]undo traffic-filter outbound   #删除对于出口的限制

此时client1可以访问server1:ACL和NAT_第12张图片

2、高级ACL访问控制列表实验

在实验2的基础上实行

高级acl规则是从3000开始,可以根据端口的不同精确控制

(1)配置Server1中的FtpServer并启动ACL和NAT_第13张图片

(2)进入Client1的FtpClient中,输入要访问的服务器地址,并登录ACL和NAT_第14张图片

(3)对路由器进行配置

[r1]acl 3000                                    #建立acl 3000规则
[r1-acl-adv-3000]rule 5 deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 
destination-port eq www                         
#deny tcp:阻止tcp协议  192.168.1.1:源地址    0:单个地址   destination-port:目标端口   eq:等于    www:也可以写端口80
​
[r1-acl-adv-3000]q                              #退出acl规则
[r1]int g0/0/0                                  #进入g0/0/0端口
[r1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000    #当接口收到数据包时执行acl

(4)验证此时client1中httpclient不能访问server1ACL和NAT_第15张图片

(5)验证但此时client1中ftpclient可以访问server1ACL和NAT_第16张图片

3、ACL(访问控制列表)的应用原则

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

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

三、HTTP

使用浏览器访问页面

  • 当我们在浏览器中输入URL (Uniform Resource Locator,统一资源定位符)时,浏览器就可以从某处获取内容,并将页面内容显示在浏览器中。

  • HTTP (Hypertext Transfer Protocol,超文本传输协议)﹔客户端浏览器或其他程序与Web服务器之间的应用层通信协议。

  • HTTP是典型的C/S构架应用,作为应用层协议使用TCP进行传输。

四、NAT

公有地址:由专门的机构管理、分配,可以在Internet上直接通信的IP地址。

私有地址:组织和个人可以任意使用,无法在Internet上直接通信,只能在内网使用的IP地址。

NAT:出去的时候将内网地址转换成外网地址;回来的时候,将外网地址转成内网地址

静态NAT:一个内网地址对应一个外网地址

当我192.168.1.1 去访问外网地址200.1.1.2 通过静态NAT技术

修改原始报文,sip:192.168.1.1 ——改成你设置好的公网ip(200.1.1.3);

dip :200.1.1.2——目标ip 不变

回包的时候, 源ip:200.1.1.2;目的ip:设置好公司ip(200.1.1.3)

通过NAT技术,将母的ip 200.1.1.3 改成 192.168.1.1 源ip不变

五、NAT实验

1、静态NAT实验ACL和NAT_第17张图片

(1)给pc1和pc2配置ip,子网掩码和网关 ACL和NAT_第18张图片

(2) 路由器配置

企业路由器配置:

u t m                                       #关闭华为的信息提示
sys                                         #进入系统视图
[Huawei]sys r1                                      #改名为r1
[r1]int g0/0/0                                      #进入g0/0/0接口               
[r1-GigabitEthernet0/0/0]ip add 192.168.1.254 24    #配置ip地址
[r1-GigabitEthernet0/0/0]int g0/0/1                 #进入g0/0/1接口
[r1-GigabitEthernet0/0/1]ip add 200.1.1.1 24        #配置ip地址 
[r1-GigabitEthernet0/0/1]nat static enable          #开启静态地址
[r1-GigabitEthernet0/0/1]nat static global 200.1.1.100 inside 192.168.1.1
 #将公网地址200.1.1.100和私网地址192.168.1.1做对应关系(出去时将192.168.1.1转换成200.1.1.100 (不能直接使用200.1.1.1)
[r1-GigabitEthernet0/0/1]q                          #退出端口

运营商-移动路由器配置:

u t m                                  #关闭华为的信息提示
sys                                    #进入系统视图
[Huawei]sys r2                                 #改名为r2
[r2]int g0/0/0                                 #进入g0/0/0接口
[r2-GigabitEthernet0/0/0]ip add 200.1.1.2 24   #配置ip地址
[r2-GigabitEthernet0/0/0]q                     #退出端口

(3)此时验证pc1可以ping通200.1.1.2

ACL和NAT_第19张图片2、动态NAT实验

在上个实验的基础上,此时企业路由器目前的配置有:ACL和NAT_第20张图片

(1)先在企业路由器中将之前的静态NAT删除:

[r1]int g0/0/1                   #进入g0/0/1接口
[r1-GigabitEthernet0/0/1]undo nat static global 200.1.1.100 inside 192.168.1.1 n
etmask 255.255.255.255           #删除静态NAT配置命令
[r1-GigabitEthernet0/0/1]undo nat static enable 

 (2)此时pc1 ping不通200.1.1.2

ACL和NAT_第21张图片

 (3)接下来我们在这个企业路由器下进行配置,配置如下:

[r1]nat address-group 1 200.1.1.10 200.1.1.15        #建立地址池(从200.1.1.10 到 200.1.1.15 共六个地址)

[r1]acl number 2000                                  #建立acl 2000规则
[r1-acl-basic-2000]rule 5 permit source 192.168.1.0 0.0.0.255   #从0到255都允许通过
[r1-acl-basic-2000]q                                 #退出acl 2000规则
[r1]int g0/0/1                                       #进入g0/0/1接口
[r1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1 no-pat   #调用group 1中的地址  
                                                       (no-pat 指定不进行端口转换)

(4)此时验证pc1可以ping通200.1.1.2

ACL和NAT_第22张图片

3、NAPT(P:端口号)

主要原理:ACL和NAT_第23张图片

 有两种一种叫Easy-IP,另一种叫NAT Server。

3.1Easy-IP实验

  1. 使用列表匹配私网的ip地址
  2. 将所有的私网地址映射成路由器当前接口的公网地址

主要路由器配置如下:

acl 2000                                      #建立acl 2000规则
rule permit source 192.168.1.0 0.0.0.255      #允许这个范围内的地址可以通过
int g0/0/1                                    #进入g0/0/1这个端口
undo nat static global 200.1.1.100 inside 192.168.1.1 netmask 255.255.255.255
                                              #删除之前的静态NAT的配置

nat outbound 2000                             #主要配置
display nat session all

在上个实验的基础上,此时企业路由器目前的配置有:

ACL和NAT_第24张图片(1)先在企业路由器中将之前的动态NAT删除:

[r1]int g0/0/1                   #进入g0/0/1接口
[r1-GigabitEthernet0/0/1]undo nat outbound 2000 address-group 1 no-pat       #删除动态NAT配置命令

 (2)此时pc1 ping不通200.1.1.2

ACL和NAT_第25张图片

 (3)接下来我们在这个企业路由器下进行配置,配置如下:

[r1]acl number 2000                                  #建立acl 2000规则	
[r1-acl-basic-2000]rule 5 permit source 192.168.1.0 0.0.0.255   #允许这个地址范围内的地址通过
[r1-acl-basic-2000]q                                 #退出规则配置
[r1]int g0/0/1                                       #进入g0/0/1端口
[r1-GigabitEthernet0/0/1]nat outbound 2000           #调用2000这个规则
[r1-GigabitEthernet0/0/1]q                           #退出端口
[r1]display nat session all                          #查看nat所有的会话

(4)此时验证pc1可以ping通200.1.1.2

ACL和NAT_第26张图片

 3.2NAT Server实验

  • 内网服务器对外提供服务,针对目的ip和目的端口映射
  • 内网服务器的相应端口映射成路由器公网ip地址的相应端口

ACL和NAT_第27张图片 在之前实验的基础上添加了一个server和client

(1)给client添加ip和网关

ACL和NAT_第28张图片

(2) 给运营商-移动路由器配置端口g0/0/1的ip地址

[r2]int g0/0/1                                    #进入接口
[r2-GigabitEthernet0/0/1]ip add 202.1.1.2 24      #配置ip地址

(3)给企业路由器配置默认路由

[r1]ip route-static 0.0.0.0 0 200.1.1.2      #配置默认路由

(4)此时client可以ping通200.1.1.1

ACL和NAT_第29张图片

(5)配置server的ip和网关,并且将server的80端口开启

ACL和NAT_第30张图片

ACL和NAT_第31张图片

(6)此时client无法访问200.1.1.1

ACL和NAT_第32张图片

 (7)将192.168.1.100的80端口和200.1.1.1的80端口做上对应关系

 企业路由器配置:

u t m                                 #关闭华为提示信息
sy                                    #进入系统视图
[r1]int g0/0/1                            #进入g0/0/1端口
[r1-GigabitEthernet0/0/1]undo nat outbound 2000      #删除上次实验的配置
[r1-GigabitEthernet0/0/1]nat server protocol tcp global current-interface www in
side 192.168.1.100 www                    #把tcp协议用在当前接口80对应192.168.1.100上的80
(详细介绍:  nat server protocol           #使用natserver
            tcp                           #代表协议是tcp
            global current-interface 80   #代表当前端口地址的80
            inside 192.168.1.100 80       #内网地址的80   )

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

 (8)此时验证client可以ping通200.1.1.1

ACL和NAT_第33张图片

六、总结

1.ACL访问控制列表

  • 基本2000-2999   通过源ip地址控制,A和B发报文 ,报文中包含源地址 ,基本ACL比较模糊,尽量放在离目的地址近的地方 ​
  • 高级3000-3999   五元组来控制,五元组中包含源mac、目的mac、源ip、目的ip、端口和tcp协议,所以高级ACL比较精确,尽量放在离源地址近的地方

2.代码

  • acl 2000
  • rule 5   deny/permit   source 地址  通配符掩码
  • 进入接口自行判断是要inboud outbound   调用acl 2000规则
  • acl 3000
  • rule 5 deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 destination-port eq www (80)

写好规则后,要进入接口调用 规则表2000

3.acl

  1. 建立规则
  2. 进入调用规则

4.NAT地址转换协议工作原理

  • 数据从内网去往外网会将源内网地址转换成外网地址
  • 数据从外网回来会将外网目的地址转换成内网地址

5.静态NAT

一个外网地址对应一个内网地址

6.动态NAT

建立一个外网地址池,当多台内网去访问外网时,从池子里获取一个未被使用的地址;在池子里已经被使用的地址,会被打上已使用标签,不会再次分配给其他主机。

7.NAPT

(1)NAT Server:将内网服务的端口映射成外网服务的端口

(2)Easy-IP:将端口和地址一起转换

你可能感兴趣的:(网络,网络协议,tcp/ip)