虚拟网卡MAC与IP强制绑定是多租户云环境的安全基线,须在虚拟交换层统一强制执行,涵盖端口安全、ARP抑制、DHCP Snooping、ENI生命周期联动、实时校验及可观测性,以阻断ARP欺骗等攻击并规避CVE-2024-27291类漏洞。

多租户云环境里,虚拟网卡的 MAC 与 IP 强制绑定不是可选项,而是安全基线。它直接堵住 ARP 欺骗、IP 冒用、DHCP 耗尽等攻击入口,同时保障租户间网络隔离不被绕过。
在虚拟交换层统一实施绑定策略
不能依赖租户自行配置,必须由云平台在虚拟交换机(如 OVS、VPP 或厂商 vSwitch)层面强制执行。关键动作包括:
- 为每个租户虚拟端口(vPort)启用 port security,限制允许的 MAC 地址数量为 1,并绑定唯一 MAC + IP 对
- 启用 ARP 抑制(ARP suppression):虚拟交换机截获并响应本子网内的 ARP 请求,不泛洪;只对已知绑定条目返回应答,未知请求直接丢弃
- 集成 DHCP Snooping,仅信任上联口的 DHCP OFFER,动态学习并固化租户首次获取的 IP-MAC 绑定关系
结合弹性网卡(ENI)生命周期自动绑定
当租户创建/绑定辅助弹性网卡时,绑定动作必须触发底层自动注册:
- ENI 创建即生成唯一 MAC,平台同步为其分配私网 IP(或接受租户指定),并将该 (ENI ID, MAC, IP, 子网) 四元组写入分布式绑定表
- ENI 热解绑时,立即从所有转发节点清除对应流表项与 ARP 缓存,防止残留条目被复用
- 主私网 IP 和辅助私网 IP 均需独立绑定,不可共用同一 MAC 的多个 IP(除非显式开启代理 ARP 并受控)
运行时持续验证与阻断
静态绑定只是起点,必须叠加实时检测能力:
- 在宿主机内核或智能网卡(DPU)上部署 eBPF 或硬件 ACL,对进出包做源 MAC/IP 校验;不匹配则标记为 spoofed 并丢弃
- 定期扫描租户子网 ARP 表,比对是否出现未登记的 MAC-IP 组合;发现即告警并自动隔离对应 vPort
- 将绑定状态暴露为可观测指标(如
eni_ip_mac_binding_status{tenant_id, eni_id}),接入统一安全运营中心
规避 CVE-2024-27291 类漏洞的关键点
该漏洞本质是容器网络插件在 host-local 分配后未校验 MAC 合法性,导致伪造 MAC 可绕过绑定。加固需做到:
- 禁用纯 host-local 分配模式,改用支持 MAC 校验的 CNI 插件(如 Calico v3.27+ 或 Cilium v1.15+ 的 strict-mode)
- 在 Pod 创建时,由 admission webhook 校验其 requested MAC 是否与调度器预分配一致,不一致则拒绝启动
- 对已运行容器,通过 runtime hook 监控 /sys/class/net/*/address 文件变更,异常修改立即 kill 进程并上报

















