加载驱动程序后 SCCM PXE 重新启动 - VM 有 IP 地址,但无法 ping 网关

加载驱动程序后 SCCM PXE 重新启动 - VM 有 IP 地址,但无法 ping 网关

的背景

我正在尝试使用 SCCM 任务序列和 PXE 部署桌面映像。PXE 服务器是 Server 2016 Hyper-V VM。它安装了 SCCM 站点服务器和 DP 角色。它是通过站点到站点 VPN 连接到主站点服务器的远程分支服务器。这是一个新站点(即办公站点,而非 SCCM 站点),不到一个月前才上线。当此 SCCM 服务器首次在站点上设置时 - 虚拟机和物理机的映像工作正常。

主站点服务器 SCCM 版本为 5.00.8692.1000 build 8692。

SCCM DP 位于服务器 VLAN 上,该 VLAN 在核心交换机上有一个 SVI。我尝试映像的客户端是构建 VLAN 上的 Hyper-V VM,它在同一交换机上也有一个 SVI。交换机上没有 ACL。所有流量都可以在两个 VLAN 之间路由,而无需穿越防火墙 - 所以非常基本。站点到站点 VPN 的配置使得整个子网(10.20.0.0/16 和 10.21.0.0/16)在每一侧都被标记为有趣流量,并且 VPN 隧道在这两个子网(以及具有旧式服务器的一些其他子网)之间成功建立。

在 SCCM 构建 VLAN 上,我有 3 个 IP 助手 - 前两个用于两个 DHCP 服务器,第三个 IP 助手指向 PXE 服务器 - SCCM DP。

问题

现在事情变得奇怪了。我有两个用于 Windows 10 的测试虚拟机,一个在两个 Hyper-V 主机之一上。与 PXE 服务器相对的 Hyper-V 主机上的虚拟机没有从 DHCP 获取 IP 地址 - 我们现在先忽略这一点。与 PXE 服务器共享同一 Hyper-V 主机的虚拟机获取 DHCP 并进行 PXE 启动。但是,当 Windows PE 已加载并且显示“正在启动网络连接”或类似内容时,它会重新启动。因此,我可以看到带有自定义背景图像的 Win PE 启动画面,然后在任务序列选择之前重新启动。我设法在此时按 F8,我可以看到它在正确的子网上有一个 IP 地址,具有正确的网关和 DNS 设置。但是,如果我尝试 ping 任何东西,即使只是网关,我只会得到“请求超时”(见图)。此外,交换机无法 ping 虚拟机。

带有 IP 详细信息和 ping 的命令提示符

当我查看 smsts.log 时,我看到错误“无法下载 PXE 变量文件。退出代码 = 14。将重试”,最后是“PxeGetPxeData 失败,错误代码为 0x8004016c”。不幸的是,我无法复制那里的日志,因为我没有任何网络连接,所以我截取了一张屏幕截图在这里分享。

短信日志

我已经镜像了端口并使用 wireshark 捕获了数据包...在一切都失败之后,我在尝试 ping 时得到了以下信息:

    No.     Time           Source                Destination           Protocol Length Info
     52 23.358377      10.21.6.16            10.21.6.1             ICMP     74     Echo (ping) request  id=0x0001, seq=24/6144, ttl=128 (no response found!)

Frame 52: 74 bytes on wire (592 bits), 74 bytes captured (592 bits) on interface 0
    Interface id: 0 (\Device\NPF_{6DE772D9-E6E3-4680-AF4F-E95F725E7CFD})
        Interface name: \Device\NPF_{6DE772D9-E6E3-4680-AF4F-E95F725E7CFD}
        Interface description: Ethernet 3
    Encapsulation type: Ethernet (1)
    Arrival Time: Aug 16, 2019 09:35:16.573093000 GMT Daylight Time
    [Time shift for this packet: 0.000000000 seconds]
    Epoch Time: 1565944516.573093000 seconds
    [Time delta from previous captured frame: 1.300275000 seconds]
    [Time delta from previous displayed frame: 1.300275000 seconds]
    [Time since reference or first frame: 23.358377000 seconds]
    Frame Number: 52
    Frame Length: 74 bytes (592 bits)
    Capture Length: 74 bytes (592 bits)
    [Frame is marked: False]
    [Frame is ignored: False]
    [Protocols in frame: eth:ethertype:ip:icmp:data]
    [Coloring Rule Name: ICMP]
    [Coloring Rule String: icmp || icmpv6]
Ethernet II, Src: Microsof_00:8e:06 (00:15:5d:00:8e:06), Dst: Netgear_c4:65:28 (b0:b9:8a:c4:65:28)
    Destination: Netgear_c4:65:28 (b0:b9:8a:c4:65:28)
        Address: Netgear_c4:65:28 (b0:b9:8a:c4:65:28)
        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
        .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
    Source: Microsof_00:8e:06 (00:15:5d:00:8e:06)
        Address: Microsof_00:8e:06 (00:15:5d:00:8e:06)
        .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)
        .... ...0 .... .... .... .... = IG bit: Individual address (unicast)
    Type: IPv4 (0x0800)
Internet Protocol Version 4, Src: 10.21.6.16, Dst: 10.21.6.1
    0100 .... = Version: 4
    .... 0101 = Header Length: 20 bytes (5)
    Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)
        0000 00.. = Differentiated Services Codepoint: Default (0)
        .... ..00 = Explicit Congestion Notification: Not ECN-Capable Transport (0)
    Total Length: 60
    Identification: 0x7daa (32170)
    Flags: 0x0000
        0... .... .... .... = Reserved bit: Not set
        .0.. .... .... .... = Don't fragment: Not set
        ..0. .... .... .... = More fragments: Not set
        ...0 0000 0000 0000 = Fragment offset: 0
    Time to live: 128
    Protocol: ICMP (1)
    Header checksum: 0x9cdc [validation disabled]
    [Header checksum status: Unverified]
    Source: 10.21.6.16
    Destination: 10.21.6.1
Internet Control Message Protocol
    Type: 8 (Echo (ping) request)
    Code: 0
    Checksum: 0x4d43 [correct]
    [Checksum Status: Good]
    Identifier (BE): 1 (0x0001)
    Identifier (LE): 256 (0x0100)
    Sequence number (BE): 24 (0x0018)
    Sequence number (LE): 6144 (0x1800)
    [No response seen]
        [Expert Info (Warning/Sequence): No response seen to ICMP request]
            [No response seen to ICMP request]
            [Severity level: Warning]
            [Group: Sequence]
    Data (32 bytes)

0000  61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70   abcdefghijklmnop
0010  71 72 73 74 75 76 77 61 62 63 64 65 66 67 68 69   qrstuvwabcdefghi
        Data: 6162636465666768696a6b6c6d6e6f707172737475767761…
        [Length: 32]

我还有更多 wireshark 日志,但不想把它们全部转储到这里。在此先感谢所有能提供帮助的人!

答案1

为了防止其他人遇到这个问题 - 我终于设法解决了它。

有人将我们的 4G 备份路由器修补到 SCCM 构建 VLAN 中,这意味着它在部署过程中通过 DHCP 为客户端分配外部 IP 地址。这不容易发现,因为 A. 它是间歇性的,B. 它不是在启动屏幕上发生的,而是在启动序列的中间,当 PXE 在显示任务序列菜单之前重新加载网络驱动程序时发生的。我实际上是在看到我用来通过 Wireshark 镜像端口的机器实际上获取了其中一个外部 IP 时才发现的。令人沮丧的是,整个问题都是由某人在修补时的粗心大意造成的

相关内容