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

    PXE Client tries to find wrong file

    Scheduled Pinned Locked Moved Solved
    FOG Problems
    3
    5
    1.0k
    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.
    • B
      Beyondlimitation
      last edited by

      Hi, thanks for reading.
      I’m noob and have 0 exp about PXE world.

      Today i installed FOG server and run it, and tried to pxe-boot client vm.
      However, something not work.
      My ESXi guest vm found where the pxe server is and tries to boot, but it said “file not found”.
      I checked everything, but nothing helped me…

      So i captured packet and see what’s going on.
      When client request ip, my client vm got ip and file name called “undionly.kpxe.0”.

      This is weird, because i didn’t set my /etc/dnsmasq.d/ltsp.conf to find “undionly.kpxe.0”. It should find “undionly.0”.

      Why fog server give the file name “undionly.kpxe.0”, not “undionly.0”?
      This is my /etc/dnsmasq.d/ltsp.conf.

      
      # Don't function as a DNS server:
      port=0
      
      # Log lots of extra information about DHCP transactions.
      log-dhcp
      
      # Set the root directory for files available via FTP.
      tftp-root=/tftpboot
      
      # The boot filename, Server name, Server Ip Address
      dhcp-boot=undionly.0,,10.0.0.182
      
      # Disable re-use of the DHCP servername and filename fields as extra
      # option space. That's to avoid confusing some old or broken DHCP clients.
      dhcp-no-override
      
      # inspect the vendor class string and match the text to set the tag
      dhcp-vendorclass=BIOS,PXEClient:Arch:00000
      dhcp-vendorclass=UEFI32,PXEClient:Arch:00006
      dhcp-vendorclass=UEFI,PXEClient:Arch:00007
      dhcp-vendorclass=UEFI64,PXEClient:Arch:00009
      
      # Set the boot file name based on the matching tag from the vendor class (above)
      dhcp-boot=net:UEFI32,i386-efi/ipxe.efi,,10.0.0.182
      dhcp-boot=net:UEFI,ipxe.efi,,10.0.0.182
      dhcp-boot=net:UEFI64,ipxe.efi,,10.0.0.182
      
      # PXE menu.  The first part is the text displayed to the user.  The second is the timeout, in seconds.
      pxe-prompt="Booting FOG Client", 1
      
      # The known types are x86PC, PC98, IA64_EFI, Alpha, Arc_x86,
      # Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI
      # This option is first and will be the default if there is no input from the user.
      pxe-service=X86PC, "Boot to FOG", undionly.kpxe, 10.0.0.182
      pxe-service=X86-64_EFI, "Boot to FOG UEFI", ipxe.efi, 10.0.0.182
      pxe-service=BC_EFI, "Boot to FOG UEFI PXE-BC", ipxe.efi, 10.0.0.182
      
      dhcp-range=10.0.0.182,proxy,255.255.255.0
      

      I exactly followed this --> https://wiki.fogproject.org/wiki/index.php?title=ProxyDHCP_with_dnsmasq
      TFTP working, DNS and DHCP server working…

      By the way, if i copy “undionly.kpxe”, paste it in directory “/tftpboot” and rename it to “undionly.kpxe.0”
      pxe boot successfully works.

      How this weird fog server behavior happens? No clue…

      JunkhackerJ 1 Reply Last reply Reply Quote 0
      • JunkhackerJ
        Junkhacker Developer @Beyondlimitation
        last edited by Junkhacker

        @Beyondlimitation the version of dnsmasq you’re running is old. old versions only allowed .0 to be on the tail end of a file name

        https://serverfault.com/questions/882554/when-configuring-dnsmasq-for-pxe-booting-why-do-i-need-to-change-undionly-kpxe/882697#882697

        signature:
        Junkhacker
        We are here to help you. If you are unresponsive to our questions, don't expect us to be responsive to yours.

        B 2 Replies Last reply Reply Quote 1
        • B
          Beyondlimitation @Junkhacker
          last edited by

          @Junkhacker
          Thank you. It worked.
          But now i have a new question.
          When i switched to UEFI, it didn’t worked.

          What should i do? And i want to learn more about pxe-boot. Can you advise me? Tutorial, Official document or something that helps.

          1 Reply Last reply Reply Quote 0
          • B
            Beyondlimitation @Junkhacker
            last edited by

            @Junkhacker
            I just found what’s wrong.
            I mis-typed file name. : O
            Type the right file name and re-try. It worked…

            Your answer is really great!

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

              @Beyondlimitation said in PXE Client tries to find wrong file:

              By the way, if i copy “undionly.kpxe”, paste it in directory “/tftpboot” and rename it to “undionly.kpxe.0”
              pxe boot successfully works

              While I see you have it sorted out, requiring the boot file to end in a “.0” was a requirement of DNSMASQ before 2.76 (as well as syslinux). With 2.76 and later its just the file name. The “.0” requirement was removed since that is a bios related thing. What version of dnsmasq are you running (i.e. dnsmasq -v)

              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

              219

              Online

              12.0k

              Users

              17.3k

              Topics

              155.2k

              Posts
              Copyright © 2012-2024 FOG Project