TFTP file transfer fails



  • I have clonedeploy 1.4.0 running on a Windows 2019 server, the server's firewall is disabled.
    When trying to PXE boot (ipxe), the clients get an IP through DCHP, and are able to connect to the TFTP server, but then transfer times out:

    TFTP.
    PXE-E35
    PXE-E39
    

    This has worked before Corona, and i am a bit rusty on what may have changed since. I have updated my computer BIOS/UEFI, but that is not the issue I think as i am getting the same when PXE-booting another machine that i have not touched. Both booting through Intel NICs and a QLogic fails, same symptoms and log (see below). I have updated the pfsense version (separate box running DHCP server), but i don't see how that could affect things? I have been trying to use ipxe_efi64 instead of ipxe, switched back again and recreated boot files. But i guess that doesn't explain the sudden failure either.

    Client and server are on the same subnet, with only a (definitely not overloaded) switch in between.

    When running a tftp client on the booted computer, i can download pxeboot.0 just fine.
    This is the tftpd32 log of a failed boot attempt:

    Connection received from 10.0.1.76 on port 2070 [21/08 09:20:14.219]
    Read request for file <pxeboot.0>. Mode octet [21/08 09:20:14.219]
    OACK: <tsize=67641,> [21/08 09:20:14.219]
    Using local port 60476 [21/08 09:20:14.219]
    Peer returns ERROR <TFTP Aborted> -> aborting transfer [21/08 09:20:14.219]
    Connection received from 10.0.1.76 on port 2071 [21/08 09:20:14.219]
    Read request for file <pxeboot.0>. Mode octet [21/08 09:20:14.219]
    OACK: <blksize=1456,> [21/08 09:20:14.219]
    Using local port 60477 [21/08 09:20:14.219]
    Ack block 1 ignored (received twice) [21/08 09:20:16.235]
    TIMEOUT waiting for Ack block #2  [21/08 09:20:34.279]
    

    and here a log from a successful transfer using a tftp client when booted into Windows (also works with default blocksize, which removed that from the OACK):

    Connection received from 10.0.1.36 on port 59131 [21/08 10:19:54.213]
    Read request for file <pxeboot.0>. Mode octet [21/08 10:19:54.213]
    OACK: <blksize=1024,tsize=67641,> [21/08 10:19:54.213]
    Using local port 49403 [21/08 10:19:54.213]
    <pxeboot.0>: sent 67 blks, 67641 bytes in 0 s. 0 blk resent [21/08 10:19:54.213]
    

    I have tried changing the settings of tftpd32 (tried all combinations of "option negotiation" and "PXE Compatibility" on and off, doesn't fix the problem.

    What could i try to fix this?



  • FWIW, I was able to also rule out this being the server, when installing tftpd32 on a different machine (newest version), i had the same trouble. I switched to OpenTFTPServer, which is working fine.