dhcp snooping
2026-03-25DHCP Snooping 是部署在二层交换机上的核心 DHCP 安全机制,核心作用是拦截非法 DHCP 服务器、防止 DHCP 欺骗、生成 IP-MAC - 端口绑定表,是企业内网防私接路由、防中间人攻击的基础防线。
一、核心作用
防御非法 DHCP 服务器(Rogue DHCP)
阻止私接家用路由、误开热点、恶意设备冒充 DHCP 服务器,避免终端拿到错误网关 / DNS 导致断网或被劫持。
生成并维护 DHCP 绑定表(Binding Table)
记录:IP、MAC、VLAN、端口、租约时间。
为 DAI(动态 ARP 检测)、IPSG(IP 源防护) 提供合法性依据,实现 ARP 防欺骗、IP 流量控制。
报文校验与过滤
校验 DHCP 请求报文的源 MAC 与 CHADDR 字段一致性,防止伪造请求。
过滤畸形、恶意 DHCP 报文。
二、工作原理(信任端口机制)
1. 端口分类(核心)
信任端口(Trusted)
连接合法 DHCP 服务器 / 汇聚交换机的端口。
允许转发所有 DHCP 报文(Discover、Offer、Request、ACK 等)。
非信任端口(Untrusted)
连接普通终端 / 用户的端口(默认所有端口均为 Untrusted)。
只允许客户端请求报文(Discover/Request)通过;直接丢弃所有服务器响应报文(Offer/ACK/NAK)。
2. 工作流程(DORA 交互)
终端发 DHCP Discover → 交换机(Untrusted 口)放行 → 转发至 Trusted 口 → 合法服务器收到。
服务器回 DHCP Offer/ACK → 仅从 Trusted 口进入 → 交换机记录绑定表 → 转发给终端。
非法服务器从 Untrusted 口发 Offer/ACK → 交换机直接丢弃,不转发、不学习。
三、关键概念:DHCP 绑定表
动态生成:从信任端口收到的 DHCP ACK中提取信息生成。
表项内容:MAC地址 + IP地址 + VLAN ID + 端口号 + 租约到期时间。
用途:
定位 IP 对应的物理端口(排查 IP 冲突、私接设备)。
配合 DAI:仅允许绑定表内的 ARP 报文通过,防 ARP 欺骗。
配合 IPSG:仅允许绑定表内的 IP-MAC 组合通信,防 IP 伪造。
四、典型配置示例(华为 / H3C/Cisco 通用逻辑)
1. 全局启用 DHCP Snooping
plaintext
# 华为/H3C
dhcp snooping enable
dhcp snooping enable vlan 10 20 # 对指定VLAN生效 阅读全文...
ing和in'
2026-03-25后缀为ing的单词在书面上见到的写法不是ing,而是in',请问什么时候可以这么写,有什么区别? 阅读全文...
k8s批量删除Evicted Pods
2026-03-25k8s批量删除Evicted Pods
[root@k8s_master ]# kubectl -n crm get pods | grep Evicted |awk '{print $1}'|xargs kubectl -n kube-system delete pods
kubectl -n crm get pods | grep Error |awk '{print $1}' | xargs kubectl delete pods -crm crm
PS: kubectl -n kube-system get pods #指定pod所在的命名空间
执行完成后,成功删除全部Evicted状态的Pods 阅读全文...
人生开悟
2026-03-12美国名校芝加哥大学的一位教授到访北大时曾提到:“芝加哥大学对学生的基本要求是——做困难的事,因为一个人要想有所成就,就必须做那些困难的事。” 阅读全文...
骑行有什么好处
2026-03-05骑摩托车确实对大脑健康有积极影响,多项研究和科学资料表明其具有“健脑”作用。以下是主要依据: 阅读全文...
lvm2_member disk partition
2026-03-04系统崩溃,用live盘挂载时候发现分区是lvm2_member 阅读全文...
openstack task_state
2026-02-041、nova reset-state instance-id --active 阅读全文...
gitlab 18.8 data_dirs
2026-01-27[root@gitlab ~]# vim /etc/gitlab/gitlab.rb
# 把注释取消然后指定新的仓库存储位置
git_data_dirs({ "default" => { "path" => "/home/gitlab-data" } }) 阅读全文...
gitlab-ce升级步骤
2026-01-2116.3.9 => 16.7.10 => 16.11.10 => 17.1.8 => 17.3.7 => 17.5.5 => 17.8.7 => 17.11.6 阅读全文...
gitlab重置密码
2026-01-21gitlab-rake "gitlab:password:reset[root]" 阅读全文...
rocky9 install gitlab
2026-01-14gitlab有两个版本,gitlab-ce和gitlab-ee,分别是社区版和企业版,企业版收费,社区版开源,通常社区版就够了。 阅读全文...
Sphinx
2025-12-24Sphinx is a documentation generator or a tool that translates a set of plain text source files into various output formats, automatically producing cross-references, indices, etc. That is, if you have a directory containing a bunch of reStructuredText or Markdown documents, Sphinx can generate a series of HTML files, a PDF file (via LaTeX), man pages and much more. 阅读全文...
k8s pause
2025-12-18查看 Kubernetes 的官方文档或源代码仓库,可以找到推荐的 pause 镜像版本。例如,你可以查看 Kubernetes GitHub 仓库中的 Dockerfile 或相关配置文件来获取最新或特定版本的 pause 镜像信息。 阅读全文...
k8s containerd
2025-12-18Kubernetes (K8s) 与 containerd 之间存在紧密的集成关系,containerd 作为 Kubernetes 的默认容器运行时,负责管理容器的生命周期。以下从镜像存储、命令操作、与 Kubernetes 的关系等方面进行说明。 阅读全文...
wintool.zip密码
2025-11-27wintool.zip密码 阅读全文...