目录
一.ACL
1.1ACL简述
ACL(访问控制表),用于过滤数据包(源目IP地址),决定是否能通过。
1.2ACL种类
- 编号2000-2999…-基本ACL—依据依据数据包当中的源目IP地址匹配数据(数据时从 哪个IP地址 过来的)
- 编号3000-3999—高级ACL----依据数据包当中源、目的IP,源、目的端口、协议号匹配数据
- 编号4000-4999—二层ACL,MAC、VLAN-id、802.1q
1.3ACL组成
ACL由若干条permit或deny语句组成。每条语句就是该ACL的一条规则,每条语句中的permit或deny就是与这条规则相对应的处理动作。
acl number 2000
//2000表示名字(编号)
rule 5 permit source 1.1.1.0 0.0.0.255
rule5表示 第五条规则 (5为规则编号)
permit 表示动作(只有peimit和deny)
source 1.1.1.0 表示匹配项(用于在ACL中匹配对应规则,此处表示源IP地址)
0.0.0.255 表示通配符掩码 (全0代表单个地址)
匹配规则:从上而下依次匹配,优先选择第一次遇到的规则
比如
192.168.1.1 permit
192.168.1.0 deny
1.1还是允许通过
1.4通配符掩码(了解)
0 表示匹配(不变) 1表示随机分配(有变化)
1)哪些地址属于0.0.254.255?
10.1.1.0 0.0.254.255
10.1.1.4
10.1.2.4
10.1.5.4
10.1.9.0
255 1111 1111 表示全部可变
254 1111 1110 表示除了最后一位,其余位都可以变
不能变的这一位,由IP地址决定
比如10.0.1.0 最后一位就是1(不能变的位)
所以0.0.254.255 表示所有的奇数
2)匹配192.168.1.0~192.168.1.64
192.168.1.63 0.0.0.63
192.168.1.64 0.0.0.0
为什么不是 192.168.1.64 0.0.0.127
因为0.0.0.127的范围过大
3)192.168.1.1~ 192.168.1.3
0.0.0. 0000 0011 — 0.0.0.3
1.6 ACL配置实例
模拟: Client1 能访问 Server2,不能访问Server1,用ACL实现。
拓扑图如下:
1.6.1 基本配置
1)配置Client1 Client2 Server1 Server2的IP地址 子网掩码 网关
2)配置路由器AR1各个端口的IP地址
g0/0/0 192.168.1.254 24
g0/0/1 192.168.2.254 24
g0/0/2 192.168.3.254 24
配置命令:
此时各个设备间互通
1.6.2 配置基本ACL
基本ACL 离目标地址近
在AR1的g0/0/1端口(outbound) 调用ACL而不是在g0/0/0
配置命令:
配置完成后检测连通性
Client1 —>Server2 :通信失败
Client1—>Server3:通信成功
1.6.3 配置高级ACL
高级ACL 离源地址近
在AR1的g0/0/0口调用ACL (inbound)
配置命令如下:
配置完成后检测连通性
Client1 — > Server2 : 不能通信 (配置了ACL)
Client1 —>Server3 :连通
1.5 小结
配置命令:
- 基本ACL
acl 2000 #基本acl 列表
rule 5 deny/permit source IP 地址 0 #默认编号5 拒绝/接收 源IP地址 表示来自源IP地址的流量
0表示匹配此地址(1个地址)
int 端口号 (离目的设备最近的端口)
traffic-filter outbound acl 2000`
//在接口下调用acl 分为两个方向
inbound方向--------当接口收到数据包时执行ACL
outbound方向-------当设备从特定接口向外发送数据时执行ACL
-----------------------
没有被acl匹配数据默认采用permit动作
//
undo traffic-filter outbound //端口模式下 , 清除此端口的(基本)ACL调用
- 高级ACL
//系统视图下
acl number 3000 //高级ACL
rule 5 deny tcp source IP地址 0 destination 目的地址 0 destination-port eq www(80)
//
高级包含 协议+源IP地址 通配符掩码(单个地址为0) + 目的IP地址 通配符掩码 + 目的端口 + eq(常用/ ) + 协议端口
//
int 端口号 // 端口为数据进口(离目的设备近)
traffic-filter inbound acl 3000
二.NAT
2.1简述
nat技术 :地址转换 私网—>公网。
向外发送数据包时,将 源IP地址 ,由私网地址转换成公网地址。
数据包返回时,将 目的地址 ,由公网地址转换成私网地址。
2.2NAT分类
1)静态NAT: 一个私网地址对应一个公网地址 (两个私网就对应两个公网地址) (一 一对应)。
2)动态NAT:设置一个地址池,私网地址从地址池中随机获取公网地址(随机对应)。
3)NAPT (端口映射):将内网服务器的相应端口映射成路由器公网IP地址的相应端口。
4)EASY-IP:将IP地址和端口号一起转发来区分每个数据包 (端口号一般没有 ,会随机分配)。使用列表匹配私网的ip地址,将所有的私网地址映射成路由器当前接口的公网地址
2.3 NAT配置实例
nat是在路由器内部进行
私–>公 在数据出口进行
公—>私 也是在数据出口进行 (回来的数据流)
1)NATPT
拓扑图:
路由器AR1需要配置默认路由
配置命令:
配置完成后,用Client3访问20.0.0.3:80
配置成功
2)Easy -IP
拓扑图:
配置命令:
配置完成后,dis nat session all
查看所有NAT映射表项。
配置成功
2.4 小结
1)NAT的作用
NAT将内部(私有)地址转换成外部(公有)地址。
2)配置命令
- 静态
int 端口号 //要在端口模式下 (数据出口)
nat static enable
nat static global 目的IP地址 inside 源IP地址 //将源地址(内网的地址)和目的地址(外网地址)建立联系
dis nat static //查看静态NAT
- 动态
//192.168.1.0网段为例//
nat address-group 1 200.1.1.10 200.1.1.15 //建立地址池(随机和私网地址对应 自动取出)
acl number 2000
rule 5 permit source 192.168.1.0 0.0.0.255 //给需要地址转换的网段添加规则,以
int 端口号 //端口模式 (数据出口)
nat outbound 2000 address-group 1 no-pat // no-pat表示不加端口号
- NATPT
int 端口号 //要在端口模式下
nat server protocol tcp global current-interface www inside 目的IP地址 端口号 //将当前端口映射到内网的目的端口(IP:端口号)
//nat server --nat 服务器
protocol tcp --tcp协议
global -- 全局模式
current-interface www -- 当前端口+端口号
inside 192.168.1.100 www -- 目的IP地址+端口号
//
- EASY-IP
//以192.168.1.0网段为例//
acl 2000 //基本ACL
rule permit source 192.168.1.0 0.0.0.255 //允许1.0网段通过
int 端口号 //接口模式 (数据出口)
nat outbound 2000 //关键命令
display nat session all //查看所有NAT映射表项