动态 ARP 检查 - 是否检查绑定数据库中的端口?

网络工程 思科 转变 安全 arp 端口安全
2021-08-03 10:11:27

提到 DAI 使用 DHCP 绑定数据库检查正确的 IP/MAC 组合。还提到 DAI 是针对整个 VLAN 而不是针对每个端口打开的。

  1. 如果 PCA (macA,ipA) 最初连接到 port1( binding - macA,ipA,port1 )并且 PCA 被重新定位到 port2 及其原始 macA,ipA。

DAI 在检查数据库中的绑定时会考虑端口吗?DAI 现在会阻止 PCA,因为它在端口 2 上 - 但 PCA(macA、ipA 仍然保持不变)?

  1. 当我们可以启用具有端口安全性的 IP 源时,拥有 DAI 有什么意义?

====================

(已编辑)

我使用(例如)添加了一个静态绑定

"ip source binding xxx1.yyy1.zzz1 vlan4 192.168.1.1 interface gi1/0/1"

之后,我的具有静态 ip (192.168.1.1) 的主机开始发送流量(DAI 检查了 DHCP 绑定数据库)。(添加静态绑定前无法发送流量)

一旦流量通过,我将连接的端口从 gi1/0/1 移动到 gi1/0/2(因为它是静态配置),不涉及 dhcp 并且静态绑定没有反映更新的端口(到 gi1 /0/2) 并且它仍然有效。(我还在主机上执行了 arp -d 并ping 新主机,因此它会执行 arp 请求)

q1) 从上面的测试中,我可以得出结论,DAI 只检查 IP/MAC 组合而不检查端口吗?

q2) 我意识到我在 ip 源绑定中的静态条目没有反映在 dhcp snoop 绑定表中,所以我可以说 dhcp snoop 绑定表是 ip 源绑定表的子集吗?(因为 ip 源绑定也包含静态条目)似乎 DAI 也引用了源绑定表(因为我的静态条目在添加它后起作用),源绑定和 dhcp snoop 表之间有什么区别吗?

q3) 最后,我不明白为什么当我们激活 ip source guard + port security 时,需要在 switch 中打开 option82 ?为什么添加“端口安全”需要选项 82 设置??

2个回答

DAI 在检查数据库中的绑定时会考虑端口吗?

由于您没有提到平台或代码版本,一般来说,当主机从 P1 移动到 P2 时,主机仍会处理 DHCP,并且 DHCP 侦听绑定表会更新以反映 P2。因此,即使特定实现确实检查了使用端口,也应该没有问题。

但我无法回答的是,如果您更进一步,在主机和运行 DHCP 侦听/DAI 的托管交换机之间添加一个哑交换机。如果您将连接从哑交换机移动到管理交换机,这通常不会触发主机再次处理 DHCP(即主机的网络连接没有断开/接通)。还没有亲自尝试过,所以不确定会发生什么,但我的猜测是交换机在更新 MAC 地址表时可能会更新 DHCP 侦听绑定表上的端口。如果我有机会在某个时候用我的 Cisco 设备测试这个,我会回来编辑这个。

当我们可以启用具有端口安全性的 IP 源时,拥有 DAI 的意义何在?

IP 源保护可防止与 DHCP 侦听绑定表(或静态条目)不匹配的IP 流量因此,如果流量没有 IP 标头,则不会阻止任何流量。

端口安全通过匹配 MAC 地址来限制访问。如果 MAC 地址匹配,则流量将被允许。

ARP 在 L2 发送(无 IP 标头),因此具有允许其匹配端口安全性的 MAC 地址的主机(无论是否受到损害)仍然可以对 ARP 执行攻击(即 ARP 欺骗、中毒等)。DAI 在这个差距中提供了保护。

从上面的测试中,我可以得出结论,DAI 只检查 IP/MAC 组合而不检查端口吗?

从上面的测试中,您可以得出结论,DAI 仅检查 IP/MAC 组合,而不检查特定平台和软件版本的端口这并不能保证 DAI 在不同平台或不同版本的代码上具有相同的行为。

我意识到我在 ip 源绑定中的静态条目没有反映在 dhcp snoop 绑定表中,所以我可以说 dhcp snoop 绑定表是 ip 源绑定表的子集吗?

对于 Cisco 设备,这样说并非完全不准确,但我不会那样说,因为措辞给人的印象是错误的。正如您所说的那样,听起来好像 IP 源绑定表中的某些条目用于生成 DHCP 侦听绑定表。

可以说DHCP Snooping绑定表是用于生成IP源绑定表的来源之一。

源绑定和 dhcp snoop 表之间有什么区别吗?

正如您所指出的,IP 源绑定表还包括静态条目。

最后,我不明白为什么当我们激活ip source guard + port security时,需要在交换机中打开option82?为什么添加“端口安全”需要选项 82 设置??

当您使用该ip verify source port-security命令将 MAC 地址源过滤添加到 IP 源防护时,客户端 MAC 地址在获得 DHCP 租用之前不会被学习。在此之前,除 DHCP 之外的所有非 IP 流量也将被阻止。

由于交换机在获得租约后才知道客户端的 MAC 地址,这就导致了一个问题,交换机如何知道从服务器到客户端的返回 DHCP 流量从哪里发送?由 DHCP 选项 82 插入的信息将此信息提供给交换机。但是,您确实需要确保您的 DHCP 服务器也支持选项 82。

  1. DAI 所做的是拦截和检查所有 ARP 请求并在不受信任的端口上回复数据包。如果 ARP 回复数据包包含 INVALID 信息/值(无效的 IP_Address-to-MAC_Address,不是无效的交换机端口),它将被丢弃。

    因此,仅启用 DAI 功能后,您可以将主机移动到不同的端口而不会遇到任何问题,因为它具有有效的 IP_Address-to-MAC_Address 绑定。

  2. IP Source Guard 利用 DHCP 侦听数据库和静态 IP 源绑定条目。因此,DHCP 侦听数据库比 IP 源绑定数据库(具有 dhcp 侦听和静态类型条目)“更小”。

    我不会使用这个词subset,因为我这样说不太安全,即使它看起来像 :)。

  3. 当您使用源 IP-MAC 过滤器模式启用 IP 源保护时,必须打开 DHCP 侦听选项 82。

    DHCP 主机 MAC 地址在主机被授予租用之前不会获知,并且 DHCP 侦听在将数据包从服务器转发到主机端口时使用选项 82 数据来识别主机端口。您可以查看此Cisco 文档以获取更多信息。