扩展ACL: 能够同时匹配IP数据包的(源IP 目标IP) 传输层协议
IP-ACL(3层ACL,针对的是3层流量)
扩展ACL匹配流量,更加精确:
确定流量的唯一5元组:
源IP、目标IP、源端口、目标端口、传输层协议。
对数据而言,凡是能够通过“传输层协议+端口号”的方式
进行表示的,则表示该数据是属于“应用层”。
路由器查找路由表时,有一个最长匹配原则,
匹配的越长,表示地址越精确。
实验名称:扩展ACL的原理与应用 实验拓扑:
实验需求: R1可以ping通R4; R1的 loopback 10 无法 telnet R4 ; 实验步骤: 1、确保网络互通 基于拓扑图,配置设备端口地址; 配置静态路由,确保网段互通; &默认路由: 0.0.0.0 0.0.0.0 -> 0.0.0.0/0 ,表示所有网络。
2、配置ACL策略
想要抓取一个流量
必须了解一个流量
配置命令:(R2)
ip access-list extended Deny-telnet
10 deny tcp 10.10.1.0 0.0.0.255 10.10.4.0 0.0.0.255 eq telnet
20 deny tcp 10.10.1.0 0.0.0.255 192.168.34.0 0.0.0.255 eq telnet
30 permit ip any any
! 或者
ip access-list extended Deny-telnet
10 deny tcp 10.10.1.1 0.0.0.0 10.10.4.4 0.0.0.0 eq telnet
20 deny tcp 10.10.1.1 0.0.0.0 192.168.34.4 0.0.0.0 eq telnet
30 permit ip 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
3、调用ACL策略
R2:
interface fas0/1
ip access-group Deny-telnet in
4、验证ACL策略
R2:
show ip access-list
show ip interface fas0/1
R1:
telnet 10.10.4.4 /source-interface loopback 0 -> no
telnet 192.168.34.4 /source-interface loopback 0 -> no
其他所有地址之间的所有类型流量,都是通的。
注意: ACL不会对本地设备发起的流量起作用,仅仅对穿越流量起作用; 实验过程: R1>en R1#conf R1#configure t R1#configure terminal Enter configuration commands, one per line. End with CNTL/Z. R1(config)#int f0/0 R1(config-if)#no shu R1(config-if)#ip add 192. *Dec 11 20:51:01.215: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up *Dec 11 20:51:02.215: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up R1(config-if)#ip add 192.168.12.1 255.255.255.0 R1(config-if)#exit R1(config)#int l R1(config)#int loopback 10 R1(config-if)#ip add 10.10.1.1 255.255.255.0 R1(config-if)#exit R1(config)#ip routing R1(config)#ip route 192.168.23.0 255.255.255.0 192.168.12.2 R1(config)#no ip route 192.168.23.0 255.255.255.0 192.168.12.2 R1(config)#ip route 0.0.0.0 0.0.0.0 192.168.12.2 R1(config)#exit R1#ping 192.168.34.4 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.34.4, timeout is 2 seconds: ...!! Success rate is 40 percent (2/5), round-trip min/avg/max = 88/90/92 ms R1#ping 192.168.34.4
Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 192.168.34.4, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 100/135/192 ms R1# telnet 10.10.4.4 /source-interface loopback 10 Trying 10.10.4.4 ... % Connection timed out; remote host not responding
R2>
R2>en
R2#conf
R2#configure t
R2#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#int f0/1
R2(config-if)#no shu
R2(config-if)#ip add
*Dec 11 20:55:18.379: %LINK-3-UPDOWN: Interface FastEthernet0/1, changed state to up
*Dec 11 20:55:19.379: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up
R2(config-if)#ip add 192.168.12.2 255.255.255.0
R2(config-if)#exit
R2(config)#int f0/0
R2(config-if)#no shu
R2(config-if)#ip add 192.168.23.2 255.255.255.0
R2(config-if)#exit
R2(config)#ip routing
R2(config)#ip route 192.168.34.0 255.255.255.0 192.168.23.3
R2(config)#ip route 10.10.1.0 255.255.255.0 192.168.23.3
R2(config)#ip route 10.10.4.0 255.255.255.0 192.168.23.3
R2(config)#exit
R2#conf
R2#configure t
R2#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#ip access-list extended deny-telnet(设置扩展ACL拒绝远程访问)
R2(config-ext-nacl)#10 deny tcp 10.10.1.1 0.0.0.0 10.10.4.4 0.0.0.0 eq 23 (拒绝 tcp是第7层应用层,源主机 精确位数 目标主机 精确位数 eq是等于 协议telnet或23是知名端口)
R2(config-ext-nacl)#20 deny tcp 10.10.1.1 0.0.0.0 192.168.34.0 0.0.0.255 eq$ 10.10.1.1 0.0.0.0 192.168.34.0 0.0.0.255 eq 23
R2(config-ext-nacl)#30 permit ip any any(允许所有)
R2(config-ext-nacl)#exit
R2(config)#int fas0/1
R2(config-if)#ip acces
R2(config-if)#ip access-group deny-telnet in(对应端口)
R2(config-if)#exit
R2(config)#
R3>en
R3#conf
R3#configure t
R3#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
R3(config)#int f0/1
R3(config-if)#no shu
R3(config-if)#ip add 192.168.23.3 255.255.255.0
R3(config-if)#exit
R3(config)#int f0/0
R3(config-if)#no shu
R3(config-if)#ip add 192.168.34.3 255.255.255.0
R3(config-if)#exit
R3(config)#ip routing
R3(config)#ip route 192.168.12.0 255.255.255.0 192.168.23.2
R3(config)#ip route 10.10.1.0 255.255.255.0 192.168.23.2
R3(config)#ip route 10.10.4.0 255.255.255.0 192.168.34.4
R4>en R4#conf R4#configure t R4#configure terminal Enter configuration commands, one per line. End with CNTL/Z. R4(config)#int f0/0 R4(config-if)#no shu R4(config-if)#ip add 192.168.34.4 255.255.255.0 R4(config-if)#exit R4(config)#int l R4(config)#int loopback 20 (虚拟端口,回环) R4(config-if)#ip add 10.10.4.4 255.255.255.0 R4(config-if)#exit R4(config)#ip routing R4(config)#ip route 0.0.0.0 0.0.0.0 192.168.34.3 R4(config)#ena R4(config)#enable p R4(config)#enable password 123 R4(config)#li R4(config)#line vt R4(config)#line vty 0 4 (设置远程访问) R4(config-line)#pass R4(config-line)#password 123456 R4(config-line)#