设备 |
接口 |
IP 地址 |
子网掩码 |
R1 |
S0/0/0 |
10.1.1.1 |
255.255.255.252 |
Fa0/0 |
192.168.10.1 |
255.255.255.0 |
|
Fa0/1 |
192.168.11.1 |
255.255.255.0 |
|
R2 |
S0/0/0 |
10.1.1.2 |
255.255.255.252 |
S0/0/1 |
10.2.2.2 |
255.255.255.252 |
|
S0/1/0 |
209.165.200.225 |
255.255.255.224 |
|
Fa0/0 |
192.168.20.1 |
255.255.255.0 |
|
R3 |
S0/0/1 |
10.2.2.1 |
255.255.255.252 |
Fa0/0 |
192.168.30.1 |
255.255.255.0 |
|
ISP |
S0/0/1 |
209.165.200.226 |
255.255.255.224 |
Fa0/0 |
209.165.201.1 |
255.255.255.224 |
|
Fa0/1 |
209.165.202.129 |
255.255.255.224 |
|
PC1 |
网卡 |
192.168.10.10 |
255.255.255.0 |
PC2 |
网卡 |
192.168.11.10 |
255.255.255.0 |
PC3 |
网卡 |
192.168.30.10 |
255.255.255.0 |
PC4 |
网卡 |
192.168.30.128 |
255.255.255.0 |
WEB/TFTP |
网卡 |
192.168.20.254 |
255.255.255.0 |
WEB Server |
网卡 |
209.165.201.30 |
255.255.255.224 |
Outside |
网卡 |
209.165.202.158 |
255.255.255.224 |
扩展 ACL 是一种路由器配置脚本,根据源地址、目的地址,以及协议或端口来控制路由器应该允许还是应该拒绝数据包。扩展 ACL 比标准 ACL 更加灵活而且精度更高。本练习的主要内容是定义过滤标准、配置扩展 ACL、将 ACL 应用于路由器接口并检验和测试 ACL 实施。路由器已经过配置,包括 IP 地址和 EIGRP 路由。用户执行口令是 cisco,特权执行口令是 class。
步骤 1. 查看路由器的运行配置。
逐一在三台路由器的特权执行模式下使用 show running-config 命令查看运行配置。请注意,接口和路由已配置完整。将 IP 地址配置与上面的地址表相比较。此时,路由器上应该尚未配置任何 ACL。
本练习不需要配置 ISP 路由器。假设 ISP 路由器不属于您的管理范畴,而是由 ISP 管理员配置和维护。
步骤 2. 确认所有设备均可访问所有其它位置。
将任何 ACL 应用于网络中之前,都必须确认网络完全连通。如果应用 ACL 之前不测试网络连通性,排查故障会非常困难。
要确保整个网络连通,请在不同的网络设备之间使用 ping 命令和tracert 命令检验连接。
步骤 1. 评估 R1 LAN 的策略。
步骤 2. 为 R1 LAN 规划 ACL 实施。
步骤 3. 评估 R3 LAN 的策略。
步骤 4. 为 R3 LAN 规划 ACL 实施。
本步骤需要在 R3 上配置一个 ACL 并应用于 FastEthernet 0/0 接口的入站流量。
步骤 5. 评估通过 ISP 进入的 Internet 流量的策略。
步骤 6. 为通过 ISP 进入的 Internet 流量规划 ACL 实施。
本步骤需要在 R2 上配置一个 ACL 并应用于 Serial 0/1/0 接口的入站流量。
步骤 1. 确定通配符掩码。
在 R1 上实施访问控制策略需要两个 ACL。这两个 ACL 将用于拒绝整个 C 类网络。您需要配置一个通配符掩码,匹配这些 C 类网络中每个网络的所有主机。
例如,要匹配整个 192.168.10.0/24 子网,通配符掩码就应为 0.0.0.255。此掩码可以理解为“检查、检查、检查、忽略”,实质上能匹配整个 192.168.10.0/24 网络。
步骤 2. 为 R1 配置第一个扩展 ACL。
在全局配置模式下,使用编号 110 配置第一个 ACL。首先需要阻止 192.168.10.0/24 网络中的所有 IP 地址 telnet 至任何位置。
编写语句时,请确定您目前处于全局配置模式下。
R1(config)#access-list 110 deny tcp 192.168.10.0 0.0.0.255 any eq telnet
接下来要阻止 192.168.10.0/24 网络中的所有 IP 地址通过 TFTP 访问地址为 192.168.20.254 的主机。
R1(config)#access-list 110 deny udp 192.168.10.0 0.0.0.255 host 192.168.20.254 eq tftp
最后要允许所有其它流量。
R1(config)#access-list 110 permit ip any any
步骤 3. 为 R1 配置第二个扩展 ACL。
用编号 111 配置第二个 ACL。允许 192.168.11.0/24 网络中的任何 IP 地址通过 WWW 访问地址为 192.168.20.254 的主机。
R1(config)#access-list 111 permit tcp 192.168.11.0 0.0.0.255 host 192.168.20.254 eq www
然后,允许 192.168.11.0/24 网络中的任何 IP 地址通过 TFTP 访问地址为 192.168.20.254 的主机。
R1(config)#access-list 111 permit udp 192.168.11.0 0.0.0.255 host 192.168.20.254 eq tftp
阻止从 192.168.11.0/24 网络发往 192.168.20.0/24 网络的所有其它流量。
R1(config)#access-list 111 permit udp 192.168.11.0 0.0.0.255 host 192.168.20.254 eq tftp
最后,允许任何其它流量。此语句用于确保不会阻止来自其它网络的流量。
R1(config)#access-list 111 permit udp 192.168.11.0 0.0.0.255 host 192.168.20.254 eq tftp
步骤 4. 检验 ACL 配置。
在 R1 上发出 show access-lists 命令,确认您的配置。输出应类似下例:
R1#show access-lists
正在上传…重新上传取消
步骤 5. 将语句应用到接口。
要将 ACL 应用到某个接口,请进入该接口的接口配置模式。配置ip access-group access-list-number {in | out} 命令,将相应 ACL 应用于该接口
每个 ACL 都用于过滤入站流量。将 ACL 110 应用于 FastEthernet 0/0 接口,ACL 111 应用于 FastEthernet 0/1 接口。
R1(config)#int f0/0
R1(config-if)#ip access-group 110 in
R1(config)#int f0/1
R1(config-if)#ip access-group 111 in
确认这两个 ACL 显示于 R1 的运行配置中而且已应用到正确的接口。
步骤 6. 测试 R1 上配置的 ACL。
配置和应用 ACL 后,必须测试是否能按照预期阻止或允许流量。
根据您掌握的 ACL 知识,尝试从 PC1 和 PC2 执行一些其它的连通性测试。
步骤 7. 检查结果。
Packet Tracer 不支持测试 TFTP 访问,因此您无法检验该策略。不过,完成比例应为 50%。如果并非如此,请单击 Check Results(检查结果)查看尚未完成哪些必要部分。
步骤 1. 确定通配符掩码
192.168.30.0/24 网络中前一半 IP 地址的访问策略有如下要求:
对 192.168.30.0/24 网络中的后一半 IP 地址有如下限制:
要确定通配符掩码,应考虑 ACL 在匹配 IP 地址 0–127(前一半)或 128–255(后一半)时需要检查哪些位。
我们学过,确定通配符掩码的方法之一是从 255.255.255.255 中减去标准网络掩码。对 C 类地址而言,IP 地址 0–127 和 128–255 的标准掩码是 255.255.255.128。用减法可得出正确的通配符掩码:
255.255.255.255
– 255.255.255.128
------------------
0. 0. 0.127
步骤 2. 在 R3 上配置扩展 ACL。
在 R3 上,进入全局配置模式并以 130 作为访问列表编号配置 ACL。
第一条语句用于阻止 192.168.30.0/24 访问 192.168.20.0/24 网络中的所有地址。
R3(config)#access-list 130 deny ip 192.168.30.0 0.0.0.255 192.168.20.0 0.0.0.255
第二条语句用于允许 192.168.30.0/24 网络的前一半地址访问任何其它目的地址。
R3(config)#access-list 130 permit ip 192.168.30.0 0.0.0.127 any
其余的语句则明确允许 192.168.30.0/24 网络的后一半地址访问网络策略允许的网络和服务。
R3(config)#access-list 130 permit ip 192.168.30.128 0.0.0.127 192.168.10.0 0.0.0.255
R3(config)#access-list 130 permit ip 192.168.30.128 0.0.0.127 192.168.11.0 0.0.0.255
R3(config)#access-list 130 permit tcp 192.168.30.128 0.0.0.127 any eq www
R3(config)#access-list 130 permit icmp 192.168.30.128 0.0.0.127 any
R3(config)#access-list 130 deny ip any any
步骤 3. 将语句应用到接口。
要将 ACL 应用到某个接口,请进入该接口的接口配置模式。配置ip access-group access-list-number {in | out} 命令,将相应 ACL 应用于该接口。
R3(config)#interface fa0/0
R3(config-if)#ip access-group 130 in
步骤 4. 检验和测试 ACL。
配置和应用 ACL 后,必须测试是否能按照预期阻止或允许流量。
经过测试并得出正确结果后,在 R3 上使用 show access-lists 特权执行命令检查 ACL 语句是否存在匹配。
根据您掌握的 ACL 知识执行其它测试,检查每条语句匹配的流量是否正确。
步骤 5. 检查结果。
完成比例应为 75%。如果并非如此,请单击 Check Results(检查结果)查看尚未完成哪些必要部分。
步骤 1. 在 R2 上配置命名扩展 ACL。
前面讲过,R2 上配置的策略将用于过滤 Internet 流量。由于 R2 连接到 ISP ,因此它是配置 ACL 的最佳位置
在 R2 上使用 ip access-list extendedname 命令配置名为 FIREWALL 的命名 ACL。此命令使路由器进入扩展命名 ACL 配置模式。请留意路由器提示符已更改。
R2(config)#ip access-list extended FIREWALL
R2(config-ext-nacl)#
在 ACL 配置模式下添加语句,按照策略中所述的要求过滤流量:
R2(config-ext-nacl)#permit tcp any host 192.168.20.254 eq www
R2(config-ext-nacl)#permit tcp any any established
R2(config-ext-nacl)#permit icmp any any echo-reply
R2(config-ext-nacl)#deny ip any any
在 R2 上配置了 ACL 后,使用 show access-lists 命令确认该 ACL 语句正确。
步骤 2. 将 ACL 应用到接口。
使用 ip access-group name {in | out} 命令,将 ACL 应用于 ISP 的入站流量,面向 R2 的接口。
R3(config)#interface s0/1/0
R2(config-if)#ip access-group FIREWALL in
步骤 3. 检验和测试 ACL。
执行下列测试,确保 ACL 能达到预期效果:
经过测试并得出正确结果后,在 R2 上使用 show access-lists 特权执行命令检查 ACL 语句是否存在匹配。
根据您掌握的 ACL 知识执行其它测试,检查每条语句匹配的流量是否正确。
步骤 4. 检查结果。
完成比例应为 100%。如果并非如此,请单击 Check Results(检查结果)查看尚未完成哪些必要部分。