DCImanager 6 Knowledge Base

If a server does not boot via TFTP

The operation template is uploaded to the server using the TFTP protocol. For this purpose, the server sends a request to download certain files from the TFTP server of the location. Due to a bug in some network adapters, the file names may be distorted when the request is sent. For example, instead of the pxelinux.0 file, the server might request the file pxelinux.0M-^. As a result, the server will not be able to boot and the operation will not be executed.

To avoid this problem, configure character remapping rules on the location server. If the TFTP server receives a request with a corrupted file name, it will automatically change the name to the correct one.

Diagnostics

If the problem with booting via TFTP is due to distorted file names, the following messages may appear when the server loads:

Examples of error messages


You can view the detailed error output on the location server with the tcpdump utility:

An example of command for the enp1s0 interface
tcpdump -i enp1s0 port '(67 or 68 or 69)' -nn -A

The response should contain a corrupted file name. E.g., lpxelinux.0M-^.

An example of response
07:56:48.433740 IP 192.0.2.93.2070 > 192.0.2.92.69:  34 RRQ "srv1/lpxelinux.0M-^?" octet tsize 0
E..>......k..6[].6[\...E.*.R..srv1/lpxelinux.0..octet.tsize.0.
07:56:48.436957 IP 192.0.2.93.2071 > 192.0.2.92.69:  39 RRQ "srv1/lpxelinux.0M-^?" octet blksize 1456
E..C......k..6[].6[\...E./fq..srv1/lpxelinux.0..octet.blksize.1456.

Solution

  1. Edit the character remapping rules file on the location server:

    vi /opt/ispsystem/etc/tftp/remap.conf
    An example of the file
    rg \\ /
    ri (.*)ÿ$ \1
    ri (.*)M-\^\?$ \1
    ri (lpxelinux\.0).*$ \1
    ri (lpxelinux\.efi).*$ \1
    ri (syslinux\.0).*$ \1
    ri (syslinux\.efi).*$ \1

    The file describes the actions to be performed on the wrong names, using regular expressions . The example shows the most common corrupted file names. You can add your own rules to this file.

  2. Reboot the TFTP server:

    docker restart tftpd
    Note
    Rebooting the TFTP server may interrupt running operations.