• Recent
    • Unsolved
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    File Not Found Resolution

    Scheduled Pinned Locked Moved
    Hardware Compatibility
    2
    2
    306
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jmcooper
      last edited by

      This was perhaps a bit of an obscure case, but just in case this helps anyone…

      I had an old thin-client terminal (not sure how old, but probably circa 2005). I was getting so frustrated because I couldn’t get it to successfully PXE network boot. It kept giving the error File not found. I tried many different tftpboot files (ipxe.pxe, undionly.pxe, etc.). It wasn’t until I started live monitoring tftp traffic that I found the problem.

      By running this command in a terminal on the Fog Server: tcpdump port 69, I was able to detect that for some reason the client was requesting a filename that was missing the last character. For example, if my DHCP config was set to request filename ipxe.pxe, the problem client would actually end up requestiong ipxe.px (missing the e on the end). It’s so odd because only one client was doing this and another client was working fine. To get this client to work I had to add an extra character on the end in the DHCP config (for example, ipxe.pxez).

      george1421G 1 Reply Last reply Reply Quote 0
      • george1421G
        george1421 Moderator @jmcooper
        last edited by

        @jmcooper The fault probably exists with the PXE boot rom on the device.

        The answer is probably a bit complicated to explain so I’ll try to keep it simple.

        PXE booting can use one of the two protocols bootp or dhcp. Its up to the hardware manufacturer to decide which set of fields it looks at for the pxe boot information.

        The second part is kind of a dhcp server / pxe rom issue. On each dhcp/or bootp fields there is a byte counter that tells the pxe rom how many characters are in the field name. Common convention also marks the end of a text string with a null (0x00) character. Its up to the dhcp server and pxe rom programmer to decide which method to use (I’m sure there is an RFC document that describes this). I have personally seen this in which someone was not using a mainstream dhcp server, where it only populated the byte counter field and then never terminated the string with a null character. In this case the pxe rom used the null character as end of string and the name requested from the target computer was ipxe.kpxe<with extra characters at the end until a null byte was found>

        While I can explain it, it still sucks that the pxe rom firmware is doing this to you.

        Please help us build the FOG community with everyone involved. It's not just about coding - way more we need people to test things, update documentation and most importantly work on uniting the community of people enjoying and working on FOG!

        1 Reply Last reply Reply Quote 0
        • 1 / 1
        • First post
          Last post

        210

        Online

        12.0k

        Users

        17.3k

        Topics

        155.2k

        Posts
        Copyright © 2012-2024 FOG Project