设为首页收藏本站language→→ 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 1843|回复: 16
收起左侧

[求助] ACL配置中的一些问题

[复制链接]
发表于 2018-12-6 09:18:29 | 显示全部楼层 |阅读模式
5鸿鹄币
拓扑.png 如图所示,我试着配了deny PC2到pc1的,后面也加了条access-list 100 permit icmp any any,然后我是配在了0/1/0下面,用的是 ip access-group 100 in。问题来了,我试着给其他几个配了几个不同号的acl,不通。是因为我配置的哪里出了什么问题吗。还是我那个in应该改成out。从我的问题应该也能看出来我对这个其实了解的不是太透彻,所了希望可以给我讲一下配置过程还有思路,感谢!

最佳答案

查看完整内容

我大概看了一下配置,有如下建议: 一般来说加ACL在一个端口上一般是单向的场景比较多。 数据通信是双向的在一个点的方向上做了策略意味着整个通讯就不通了,特殊应用除外。 有几条ACL的源目写反了。比如阻止A和B通讯,在主机A直接接口的IN方向上如果阻止的话ACL中的目的应该是主机B的IP,OUT方向ACL的源应该是主机B。
发表于 2018-12-6 09:18:30 | 显示全部楼层
言欢啊 发表于 2018-12-8 15:02
access-list 100 permit ip 192.168.1.0 0.0.0.255 host 172.16.10.5
access-list 100 deny ip 192.168. ...

我大概看了一下配置,有如下建议:
一般来说加ACL在一个端口上一般是单向的场景比较多。
数据通信是双向的在一个点的方向上做了策略意味着整个通讯就不通了,特殊应用除外。
有几条ACL的源目写反了。比如阻止A和B通讯,在主机A直接接口的IN方向上如果阻止的话ACL中的目的应该是主机B的IP,OUT方向ACL的源应该是主机B。
沙发 2018-12-6 09:18:30 回复 收起回复
回复

使用道具 举报

发表于 2018-12-6 09:47:51 | 显示全部楼层
1.扩展ACL写法:
[permit|deny] [协议] [源地址主机IP或范围] [目的地址主机IP或范围]
2.接口调用方式:
2.1. in方向:对接口从对端设备收到的数据包进行检查,源地址为接口下联网段IP,目的地址为对端主机IP。
2.2. out方向:对接口向对端设备发出的数据包进行检查,源地址为远端IP,目的地址为接口下联网段IP。
3.举个例子:
3.1. 入方向:
ip access ex 100
per ip host PC1 host PC2  \\源地址匹配PC1,目的地址匹配PC2
interface f0/1/0
ip access-group 100 in  \\检查入向数据包的源目IP是否匹配条件。
效果:fa0/1/0接口仅允许PC1访问PC2。
3.2. out方向:
ip access ex 100
per ip host PC2 host PC2  \\源地址匹配PC2,目的地址匹配PC1
interface f0/1/0
ip access-group 100 out  \\检查出向数据包的源目IP是否匹配条件。
效果:fa0/1/0接口仅允许PC2访问PC1。
4.总结:
4.1. 数据是双向的,访问控制列表干掉一个方向的流量两端通讯就挂了。
4.2. 接口调用列表是站在设备自身的角度来看,出设备的流量叫out,进入设备的流量叫in。
4.3. ACL的源、目IP要注意匹配接口调用的方向。
板凳 2018-12-6 09:47:51 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2018-12-6 09:58:44 | 显示全部楼层
lazyworm 发表于 2018-12-6 09:47
1.扩展ACL写法:
[协议] [源地址主机IP或范围] [目的地址主机IP或范围]
2.接口调用方式:

你说的这我可以理解,照我的拓扑来看的话,每台pc基本上都等于只允许了一台pc访问,所以,我只用把这一条添加上去就可以了是吗。那我之前是添加的拒绝某个地址的命令,为什么会一下子所有的数据都无法通信了呢。
地板 2018-12-6 09:58:44 回复 收起回复
回复

使用道具 举报

发表于 2018-12-6 13:44:54 | 显示全部楼层
弱弱的问一句,你这样的拓扑图能实现吗?
5# 2018-12-6 13:44:54 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2018-12-6 14:29:12 | 显示全部楼层
zhouqing392 发表于 2018-12-6 13:44
弱弱的问一句,你这样的拓扑图能实现吗?

这个嘛,你给提提意见呗,嘿嘿
6# 2018-12-6 14:29:12 回复 收起回复
回复

使用道具 举报

发表于 2018-12-6 15:49:26 | 显示全部楼层
言欢啊 发表于 2018-12-6 14:29
这个嘛,你给提提意见呗,嘿嘿

那你ACL是怎么配的,学习学习!
7# 2018-12-6 15:49:26 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2018-12-6 16:00:33 | 显示全部楼层
zhouqing392 发表于 2018-12-6 15:49
那你ACL是怎么配的,学习学习!

老哥,我要是真的懂得特别透彻了我也不问了   就是很正常的命令,只是想不通哪里出了问题。
8# 2018-12-6 16:00:33 回复 收起回复
回复

使用道具 举报

发表于 2018-12-7 08:52:40 | 显示全部楼层
言欢啊 发表于 2018-12-6 09:58
你说的这我可以理解,照我的拓扑来看的话,每台pc基本上都等于只允许了一台pc访问,所以,我只用把这一条 ...

配置粘上来看看。
不通有三种情况:
1.放行和拒绝顺序问题。没有注意末尾隐含拒绝所有。
2.没有放行通讯所需要的其他协议。
3.ACL定义的源目地址和调用放行不匹配。
9# 2018-12-7 08:52:40 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2018-12-8 15:02:02 | 显示全部楼层
lazyworm 发表于 2018-12-7 08:52
配置粘上来看看。
不通有三种情况:
1.放行和拒绝顺序问题。没有注意末尾隐含拒绝所有。

access-list 100 permit ip 192.168.1.0 0.0.0.255 host 172.16.10.5
access-list 100 deny ip 192.168.1.0 0.0.0.255 host 10.1.1.5
access-list 100 permit ip any any

f0/2/0 ip access-group 100 in

access-list 101 permit ip 10.1.1.0 0.0.0.15 host 192.168.1.5
access-list 101 deny ip 172.16.10.0 0.0.0.63 host 192.168.1.5
access-list 101 permit ip any any
f0/2/0 ip access-group 100 out



access-list 102 permit ip 172.16.10.5 0.0.0.63 host 10.1.1.5
access-list 102 deny ip 172.16.10.5 0.0.0.63 host 192.168.1.5
access-list 102 permit ip any any

f0/1/0 ip access-group 102 in

access-list 103 permit ip 192.168.1.0 0.0.0.255 host 172.16.10.5
access-list 103 deny ip 10.1.1.0 0.0.0.15 host 172.16.10.5
access-list 103 permit ip any any

f0/1/0 ip access-group 103 out

access-list 104 permit ip 10.1.1.0 0.0.0.15 host 192.168.1.5
access-list 104 deny ip 10.1.1.0 0.0.0.15 host 172.16.10.5
access-list 104 permit ip any any

f0/3/0 ip access-group 104 in

access-list 105 permit ip 172.16.10.0 0.0.0.63 host 10.1.1.5
access-list 105 deny ip 192.168.1.0 0.0.0.255 host 10.1.1.5
access-list 105 permit ip any any

f0/3/0 ip access-group 105 out


这是我配置过的所以命令,我觉得没什么问题啊
10# 2018-12-8 15:02:02 回复 收起回复
回复

使用道具 举报

发表于 2018-12-8 17:22:33 | 显示全部楼层
HI,
先說一下 Router套用 ACL的in跟out觀念
下方這段是您提供的,
access-list 100 permit ip 192.168.1.0 0.0.0.255 host 172.16.10.5
access-list 100 deny ip 192.168.1.0 0.0.0.255 host 10.1.1.5
access-list 100 permit ip any any
f0/2/0 ip access-group 100 in

f0/2/0 ip access-group 100 in
表示當ACL 100 套用在Router Fa 0/2/0  in的方向時,
如果有 packet 從Fa0/2/0 進入Router 的話會用ACL 100進行過濾,
例如我想讓Packet進入Fa0/2/0時ˊ進行ACL過濾,
那我會打Fa0/2/0 ip access-group 100 in
如果我想讓Packet離開Fa0/2/0時進行ACL過濾,
我會打Fa0/2/0 ip access-group 100 out

ACL 100中
access-list 100 permit ip 192.168.1.0 0.0.0.255 host 172.16.10.5
access-list 100 permit ip 來源IP  目的IP
進入Fa0/2/0的IP只會有172.16.10.5,
所以來源IP是172.16.10.5,
目的IP要打10.1.1.5或192.168.1.5
例如:
ACL 200

access-list 200 permit ip host 172.16.10.5 host 10.1.1.5
access-list 200 permit ip host 172.16.10.5 host 192.168.1.5
Fa0/2/0  ip access-group 100 in

依照你Topology的要求
PC1 ping PC2 ->通
PC2 ping PC1 ->不通
PC3 ping PC1 ->不通
....
我的設定如下,供您參考
ip access-list extended F010_IN
permit icmp host 192.168.1.5 host 172.16.10.5 echo
permit icmp host 192.168.1.5 host 10.1.1.5 echo-reply
deny   ip any any
ip access-list extended F020_IN
permit icmp host 172.16.10.5 host 10.1.1.5 echo
permit icmp host 172.16.10.5 host 192.168.1.5 echo-reply
deny   ip any any
ip access-list extended F030_IN
permit icmp host 10.1.1.5 host 192.168.1.5 echo
permit icmp host 10.1.1.5 host 172.16.10.5 echo-reply
deny   ip any any

interface Fa0/1/0
ip address 192.168.1.1 255.255.255.0
ip access-group F010_IN in
!
interface Fa0/2/0
ip address 172.16.10.1 255.255.255.0
ip access-group F020_IN in
!
interface Fa0/3/0
ip address 10.1.1.1 255.255.255.0
ip access-group F030_IN in

icmp echo 表示ping 過去的方向
icmp echo-replay 表示ping回來的方向
因為ping是雙向的
ping 過去 (echo)
對方會回應我(echo-replay)

11# 2018-12-8 17:22:33 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2018-12-8 19:14:00 | 显示全部楼层
iop2222 发表于 2018-12-8 17:22
HI,
先說一下 Router套用 ACL的in跟out觀念
下方這段是您提供的,

我之前是在模拟上面做的,上面有些功能不是很全。下面是我在模拟器上做的。
access-list 102 permit ip host-source 192.168.1.5 host-destination 172.16.10.5
access-list 102 deny ip host-source 192.168.1.0 host-destination 10.1.1.5
access-list 102 permit ip host-source 192.168.1.5 any-destination
access-list 103 permit ip host-source 172.16.10.5 host-destination 10.1.1.5
access-list 103 deny ip host-source 172.16.10.0 host-destination 192.168.1.5
access-list 103 permit ip host-source 172.16.10.5 any-destination
access-list 104 permit ip host-source 10.1.1.5 host-destination 192.168.1.5
access-list 104 deny ip host-source 10.1.1.0 host-destination 172.16.10.5
access-list 104 permit ip host-source 10.1.1.5 any-destination

这些命令使我到了80的效果,跟上面拓扑图一样。现在
pc1ping通pc2
pc1ping不通pc3
pc2ping不通pc1
pc2ping通pc3
接下来就出现了点问题
原先应该是
pc3ping通pc1
pc3ping不通pc2刚好反了过来,
现在pc2和pc3互通
pc1和pc3不通,就很尴尬。这是哪里出现了问题吗
12# 2018-12-8 19:14:00 回复 收起回复
回复

使用道具 举报

发表于 2018-12-8 19:47:15 | 显示全部楼层
ACL 102、103、104套用的介面是?
方向是in 還是 out?


access-list 102 permit ip host-source 192.168.1.5 host-destination 172.16.10.5
access-list 102 deny ip host-source 192.168.1.0 host-destination 10.1.1.5
access-list 102 permit ip host-source 192.168.1.5 any-destination
access-list 103 permit ip host-source 172.16.10.5 host-destination 10.1.1.5
access-list 103 deny ip host-source 172.16.10.0 host-destination 192.168.1.5
access-list 103 permit ip host-source 172.16.10.5 any-destination
access-list 104 permit ip host-source 10.1.1.5 host-destination 192.168.1.5
access-list 104 deny ip host-source 10.1.1.0 host-destination 172.16.10.5
access-list 104 permit ip host-source 10.1.1.5 any-destination

黃色螢光筆處是有錯誤地方
host-source表示單一來源位置、單一 IP address
因為你的Topology上並沒有192.168.1.0、172.16.10.0、10.1.1.0 這三個Host IP
如果是想表示網段的話可用
access-list 102 deny ip 192.168.1.0   0.0.0.255 host-destination 10.1.1.5
access-list 103 deny ip 172.16.10.0  0.0.0.255host-destination 192.168.1.5
access-list 104 deny ip 10.1.1.0 0.0.0.255host-destination 172.16.10.5

0.0.0.255 的位置是Wildcard,
用來表示網段範圍


13# 2018-12-8 19:47:15 回复 收起回复
回复

使用道具 举报

发表于 2018-12-11 10:22:33 | 显示全部楼层
1、ACL group末尾隐藏deny any any
2、ACL匹配原则,group的第一条开始往下匹配,所以你前两条一个permit 一个deny完之后,加入permit ip any any是没意义的,匹配成功之后包就直接过去了,所以你可以尝试把每个group的最后一条permit ip any any no掉
3、而且最主要的是你看你配了什么东西?一个接口的进出两个方向,你把出去的包放行了,回来的包丢掉了,你玩什么球球?
14# 2018-12-11 10:22:33 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2018-12-11 15:43:45 | 显示全部楼层
lazyworm 发表于 2018-12-10 13:12
我大概看了一下配置,有如下建议:
一般来说加ACL在一个端口上一般是单向的场景比较多。
数据通信是双 ...

上面那些命令也是我在摸索中配置的,其实从图里还是能看出来整个访问过程相当于是一个单向访问,我问了一下别人,说这需要配置一个回程的,或者是qos做策略,只不过我不太懂,之前在模拟器里面做,不支持配置,后来用真机,可能版本不一样也没能成。虽然我现在还是没有思路,但是还是很感谢您的指教。
15# 2018-12-11 15:43:45 回复 收起回复
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2024-4-17 07:55 , Processed in 0.073934 second(s), 10 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

快速回复 返回顶部 返回列表