因此,问题在于我们有一个设备或主机需要在特定 VLAN 上进行通信。这个 VLAN 不是新的,它在我们的整个环境中运行并且运行良好。但是最近在有问题的交换机(Cisco 3750)上配置了该 VLAN。DHCP 服务器正在毫无问题地分发该 VLAN 上的地址。
我已经验证了主机和交换机之间的电缆,并尝试了多个主机,但它们都无法通信或获取地址。我将笔记本电脑插入一个分配了不同 VLAN 的空端口,并立即获得了 DHCP 地址。当我将该端口更改为我遇到问题的同一 VLAN 时,我遇到了同样的问题。笔记本电脑只是坐在那里,试图 DHCP 地址,但什么也没发生。
我仔细检查了核心及其第 3 层 VLAN 配置,也没有问题。另外,我认为问题不在于它们,因为 VLAN 在其他地方都运行正常。
因此我能想到的唯一其他问题就是交换机,但交换机上存在 VLAN,并且似乎配置正确。中继似乎也配置得很好。
有人有什么想法吗?我对这个很困惑。
答案1
诸如此类的问题会耗费大量时间。
(我注意到,写完这篇文章后,我假设您在单独的子网上有一个 DHCP 服务器,因此 DHCP 请求会通过路由器转发。如果 DHCP 服务器直接位于新 VLAN 上,则故障排除将更简单。)
我首先想到的从最有可能到最不可能的顺序是:
- 通过交换网络标记不正确
- 连接相关 VLAN 的路由器在新 VLAN 上没有 IP 接口和/或未配置为在它们之间路由数据包
- DHCP 服务器和 DHCP 客户端之间的路由器没有正确设置“ip helper-address”或“udp-helper”参数,因此 DHCP 请求永远不会到达 DHCP 服务器
- DHCP 服务器没有返回充当相关 VLAN 网关的路由器的路由,可能是因为 DHCP 服务器的默认网关不知道如何到达网关
- DHCP 服务器的配置文件已更新以服务新的 VLAN,但 DHCP 服务器尚未重新启动(如果您有 ISC(即 Linux)dhcpd)
- 新 VLAN 上的 DHCP 服务器和客户端之间的某个部分有 ACL,这阻碍了连接
对于你的情况,我会回顾以下几个步骤:
- 列出所有交换机上应参与此新 VLAN 的所有端口的详细列表。它们可能主要是交换机到交换机的中继端口。现在检查每个 VLAN 的关联和状态(标记、默认 VLAN(如果适用))。是的,我知道它们都没错,但请顺便逗我一下。
- dhcp 服务器日志中有什么有趣的内容吗?
- 在新的 VLAN 上插入一台具有静态 IP 地址的计算机。它能 ping 通路由器吗?它能 ping 通 dhcp 服务器吗?(如果不能 —— dhcp 服务器是否设置了防火墙以丢弃 icmp 数据包?)
- 在新的 VLAN 上插入一台 dhcp 计算机。监听流量(wireshark 或 equiv)。dhcp 对话是什么样的?您是否看到来自 dhcp 服务器的任何回复?
- 监听 dhcp 服务器上的流量。对话是什么样的?
希望您在处理这样的列表时能够发现真正的错误。
答案2
如果您使用 VTP 来配置 VLAN 配置,请确保新交换机的修订号不高于 VTP 服务器,因为如果服务器的修订号较高,它将忽略来自服务器的 VTP 更新。
如果交换机来自相同的生产环境并使用相同的域和密码,则可能存在这种情况,并且您可能已经浏览了与 VTP 服务器使用的配置之间的细微差别。