我正在尝试验证 cisco IOS ACL Extendend 的两个命令。
他们是:
access-list 101 deny any 192.168.0.0/23 any
access-list 101 permit udp 192.168.1.1 any
为此,我使用位于以下位置的互联网上的语法检查器http://techie.devnull.cz/aclcheck
但是当我执行软件进行检查时,它在第 1 行显示错误,提示“目标指定?”。我在网上阅读了许多有关 ACL 语法的指南,但我就是搞不懂,我就是找不到这个错误。目标是在 any 关键字中指定的。
这些命令中是否有错误?或者是否有更可靠的方法来验证 cisco IOS 命令?
问候
编辑:新命令是
access-list 101 deny ip 192.168.0.0/23 any
access-list 101 permit udp host 192.168.1.1 any
同样的错误。
注意我故意保留了 /23 符号,请查看评论。我会尝试你们的建议,但如果这是正确的符号,它会破坏我的翻译工作,呵呵
答案1
在第一行中,错误来自
- /23,您不能这样写这个 ACL,您应该使用通配符掩码
- 任何在拒绝之后,这是协议字段,任何都是无效的
第二行中,IP 地址之前缺少主机
正确的语法是:
access-list 101 deny ip 192.168.0.0 0.0.1.255 any
access-list 101 permit udp host 192.168.1.1 any
如果可能的话,我建议您使用命名访问列表,像您这样编写 ACL 有点过时,难以管理,而且对错误更敏感。更好的方法是:
ip access-list extended SOMETHING
deny ip 192.168.0.0 0.0.1.255 any
permit udp host 192.168.1.1 any
答案2
访问列表 101 拒绝 ip 任何 192.168.0.0 0.0.1.255 任何
访问列表 101 允许 udp 主机 192.168.1.1 任何
您在这里遇到了一些问题。首先,您必须指定协议,即使该协议只是 IP。第二个问题,您必须使用通配符掩码来指定子网。第三个问题,您必须指定通配符掩码、任意掩码或在主机 IP 地址前面加上单词 host。希望这能有所帮助。
我不太确定语法检查器。我的键盘上的 ? 键已经磨损了。