虚拟接口上的 ACL 被忽略

网络工程 思科 路由器 ACL
2021-08-04 15:54:10

晚上好!

最近我在配置 cisco 路由器(IOS 12.x)时遇到了一些问题。有一个 vlan 的虚拟接口:

interface GigabitEthernet0/1.203
 description Department XXX
 encapsulation dot1Q 203
 ip address 10.0.0.193 255.255.255.192
 ip helper-address 192.168.0.3
 ip access-group v203in in
 no ip proxy-arp
 ip flow ingress
 ip flow egress
 ip virtual-reassembly
end

并且有一个扩展的访问列表:

ip access-list extended v203in
 deny ip any any log

一切都很精彩。通过 cisco 交换机连接到某个 trunc 端口的计算机无法从 dhcp 服务器获取它的 IP 地址,也无法访问网络。

现在我们将做一些魔术:

no ip access-list extended v203in
ip access-list extended v203in
 permit udp any any eq 67
 permit udp any any eq 68
 deny ip any any log

哦,太好了,我们的计算机已经获得了它的 IP 地址……但是……等等,到底是什么?!
(对不起,西里尔文输出,理解起来很简单):

C:\>ping ya.ru
Обмен пакетами с ya.ru [93.158.134.3] с 32 байтами данных:
Ответ от 93.158.134.3: число байт=32 время=2мс TTL=55     
Ответ от 93.158.134.3: число байт=32 время=2мс TTL=55    

tracert ya.rureply from 10.0.0.193: host is unreachable

请任何人向我解释这种“魔法”或数据包如何通过 ACL 流动?


工作站的ip是10.0.0.194/26,网关是10.0.0.193。

2个回答

您的 ACL 仅允许 DHCP(端口 67 和 68)。ping 使用的 ICMP 不在第 4 层运行,因此它没有端口号。Traceroute 使用 30,000 范围内的端口(我忘记了确切数字)。您拥有的 ACL 语句阻止了除端口 67 和 68 之外的所有端口。希望这会有所帮助。

这是 iOS 12.4 中的一个错误。其他带有 15.x 的设备没有这个问题。