![Windows Server 2008 NLB 不响应 ARP 请求](https://linux22.com/image/663915/Windows%20Server%202008%20NLB%20%E4%B8%8D%E5%93%8D%E5%BA%94%20ARP%20%E8%AF%B7%E6%B1%82.png)
我在 Hyper-V VM 中运行两个 Windows Server 2008 实例。这两个实例配置在多播 NLB 中。我可以从另一个子网 ping 任一节点,但 ping NLB 名称时出现超时。
如果我在一个节点上停止 NLB 并在剩余节点上进行网络跟踪,我会看到针对 NLB IP 地址的 ARP 请求到达 VM......但 VM 从不发送 ARP 回复。
有人能提出原因和解决方案吗?关于路由器不将 ARP 请求转发到 NLB 节点的文章有很多,但这似乎不是问题所在,因为 NLB 节点确实收到了 ARP 请求;它们只是没有响应。
编辑:Hyper-V 管理器中的两个节点上都启用了 MAC 地址欺骗。
答案1
如果您在 Hyper-V 客户机上使用 NLB,则需要在每个客户机的 vNIC 的高级功能中启用 MAC 地址欺骗。
答案2
https://technet.microsoft.com/en-us/library/ff849728.aspx#ClusterMode
“在多播群集操作模式下,当源 MAC 地址被屏蔽时,来自 NLB 主机的 ARP 响应在以太网帧中包含替代源 MAC 地址,但在 ARP 标头中包含正确的 NLB 群集 MAC 地址。某些第 3 层交换机和路由器会对此响应感到困惑,无法自动执行 ARP 映射。在这种情况下,请在受影响的交换机/路由器上创建一个静态 ARP 条目,将 NLB 虚拟 IP 地址映射到 NLB 群集 MAC 地址。”