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

    dnsmasq ProxyDHCP BIOS and UEFI coexistence

    Scheduled Pinned Locked Moved Solved
    General Problems
    3
    19
    7.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.
    • george1421G
      george1421 Moderator @Pikmin
      last edited by george1421

      @Pikmin Are you still having an issue? You last post seems to offer an answer. Did that resolve your issue?

      What does your ltsp.conf file look like. The tutorial the wiki was based on is here: https://forums.fogproject.org/topic/8725/compiling-dnsmasq-2-76-if-you-need-uefi-support/6 at the end of this post there is an example ltsp.conf file that has been proven to work.

      I also have an other tutorial that may add some value: https://forums.fogproject.org/topic/8726/advanced-dnsmasq-techniques

      You must have at least dnsmasq 2.76 to get uefi / bios auto switching to work.

      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!

      P 1 Reply Last reply Reply Quote 0
      • P
        Pikmin @george1421
        last edited by

        @george1421
        Hello, can you confirm that the following fields are meant to be enough to boot into UEFI, not the basic but advanced option
        Set the boot file name based on the matching tag from the vendor class (above)
        dhcp-boot=net:UEFI32,i386-efi/ipxe.efi,192.168.112.24
        dhcp-boot=net:UEFI,ipxe.efi,192.168.112.24
        dhcp-boot=net:UEFI64,ipxe.efi,192.168.112.24

        They don’t appear to be enough in my case, once again pxe-service is needed but you say in the guide to remove it :
        Adding (a bit more complex) UEFI support to the basic script
        We’ll start with our basic configuration file again. Note: we removed the pxe-serivce entries we added previously.

        This is what my config looks like now, I’ve added a match for HP 210 and have been testing stuff out, BIOS doesn’t work with this model: No configuration methods succeeded (http://ipxe.org/040ee119) I have added a BIOS menu that boots nothing (removed the undionly line) because it fails anyway.

        I have a separate HP210 UEFI menu

        HP210 UEFI Test

        pxe-service=tag:HP210,X86-64_EFI, “HP-210”, ipxe.efi

        when I push F8 I get two options HP-210 and Boot UEFI PXE-64
        Without the pxe-service and only dhcp-boot options, the boot fails

        # 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
        
        # 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
        
        
        dhcp-match=set:HP210,97,00:4e:fc:b7:3e:58:32:11:e5:8b:16:b0:5a:da
        
        
        ##### Without this one I get asked to enter TFTP Address
        dhcp-boot=undionly.kpxe,,192.168.131.149
        
        
        pxe-prompt="Press F8 for boot menu", 10
        
        
        pxe-service=tag:HP210,X86PC, "HP-210 NOT COMPATIBLE WITH BIOS",
        
        # PXEClient:Arch:00000
        pxe-service=X86PC, "Boot BIOS Legacy PXE", undionly ###########.kpxe
        
        # PXEClient:Arch:00007
        pxe-service=BC_EFI, "Boot UEFI PXE-BC", ipxe.efi
        
        # HP210 UEFI Test
        pxe-service=tag:HP210,X86-64_EFI, "HP-210", ipxe.efi
        
        # PXEClient:Arch:00009
        pxe-service=X86-64_EFI, "Boot UEFI PXE-64", ipxe.efi
        
        
        dhcp-range=192.168.131.149,proxy,255.255.0.0
        
        george1421G 2 Replies Last reply Reply Quote 0
        • george1421G
          george1421 Moderator @Pikmin
          last edited by

          @Pikmin We find depending on your network setup (if your real dhcp server sends out some of the boot information) the pxe-service fields are needed.

          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
          • george1421G
            george1421 Moderator @Pikmin
            last edited by george1421

            @Pikmin I just looked at my dev box and I still had this structure in the ltsp.conf file.

            dhcp-match=set:e6230,97,00:44:45:4c:4c:38:00:10:36:80:4e:c4:c0:4f:4a:58:31
            
            dhcp-vendorclass=UEFI,PXEClient:Arch:00007
            
            dhcp-boot=tag:UEFI,tag:e6230, snp.efi, 192.168.112.24, 192.168.112.24
            

            With no pxe-service lines. Note for the dhcp-boot line I had to use tag: to identify both tags and to create the and condition.

            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!

            george1421G P 2 Replies Last reply Reply Quote 0
            • george1421G
              george1421 Moderator @george1421
              last edited by

              It would be interesting to know how well this one works.

              port=0
              
              # Log lots of extra information about DHCP transactions.
              log-dhcp
              
              # Set the root directory for files available via FTP.
              tftp-root=/tftpboot
              
              # 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
              
              dhcp-match=set:HP210,97,00:4e:fc:b7:3e:58:32:11:e5:8b:16:b0:5a:da
              
              # Set the boot file name based on the matching tag from the vendor class (above)
              dhcp-boot=net:UEFI32,i386-efi/ipxe.efi,,192.168.131.149
              dhcp-boot=net:UEFI,ipxe.efi,,192.168.131.149
              dhcp-boot=net:UEFI64,ipxe.efi,,192.168.131.149
              
              # Our test to ensure both the UEFI and e6230 tags are set. 
              dhcp-boot=tag:UEFI,tag:HP210, intel.efi, 192.168.131.149, 192.168.131.149
              
              # The boot filename, Server name, Server Ip Address
              dhcp-boot=undionly.kpxe,,192.168.131.149
              
              # 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
              
              dhcp-range=192.168.131.149,proxy
              

              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!

              P 1 Reply Last reply Reply Quote 0
              • P
                Pikmin @george1421
                last edited by Pikmin

                @george1421

                I’ve tried that but didn’t work for me, it gets to the boot menu but doesn’t seem to know what to boot, so the menu counts down and nothing happens
                EDIT:
                Last message I get is
                PXE-E21: Remote boot cancelled?

                This is what I get in the log

                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 vendor class: PXEClient:Arch:00007:UNDI:003016
                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 PXE(ens160) b0:5a:da:9e:d8:b8 proxy
                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 tags: UEFI, HP210, ens160
                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 bootfile name: snp.efi
                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 next server: 192.168.131.149
                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 broadcast response
                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 sent size:  1 option: 53 message-type  2
                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 sent size:  4 option: 54 server-identifier  192.168.131.149
                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
                Jun 20 10:14:40 ndfog dnsmasq-dhcp[12339]: 2701847451 sent size: 17 option: 97 client-machine-id  00:4e:fc:b7:3e:58:32:11:e5:8b:16:b0:5a:da...
                
                george1421G 3 Replies Last reply Reply Quote 0
                • george1421G
                  george1421 Moderator @Pikmin
                  last edited by

                  @Pikmin said in dnsmasq ProxyDHCP BIOS and UEFI coexistence:

                  it gets to the boot menu but doesn’t seem to know what to boot,

                  Please explain, are you getting to the FOG iPXE boot menu?

                  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
                  • george1421G
                    george1421 Moderator @Pikmin
                    last edited by

                    @Pikmin said in dnsmasq ProxyDHCP BIOS and UEFI coexistence:

                    bootfile name: snp.efi

                    Also looking at your log file snp.efi is being sent. If you used my config file it should have sent intel.efi (right not I’m not saying its right or wrong kernel for that system I’m just looking for the same as I told it).

                    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!

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

                      @Pikmin said in dnsmasq ProxyDHCP BIOS and UEFI coexistence:

                      Last message I get is
                      PXE-E21: Remote boot cancelled?

                      Ah ok then your dhcp server is sending out info too and the client is getting confused. Do you have time to debug this so we can see exactly what’s going on?

                      You will need the pxe-service commands but lets understand what’s going on first.

                      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!

                      P george1421G 2 Replies Last reply Reply Quote 0
                      • P
                        Pikmin @george1421
                        last edited by

                        @george1421 said in dnsmasq ProxyDHCP BIOS and UEFI coexistence:

                        @Pikmin said in dnsmasq ProxyDHCP BIOS and UEFI coexistence:

                        Last message I get is
                        PXE-E21: Remote boot cancelled?

                        Ah ok then your dhcp server is sending out info too and the client is getting confused. Do you have time to debug this so we can see exactly what’s going on?

                        You will need the pxe-service commands but lets understand what’s going on first.
                        The Windows DHCP Server is set to PXE Boot SCCM

                        Also note that without using the netmask in the range directive PXE boot doesn’t work
                        dhcp-range=192.168.131.149,proxy,255.255.0.0

                        I also have ip helper on the switch so I can netboot from other vlans

                        george1421G 2 Replies Last reply Reply Quote 0
                        • george1421G
                          george1421 Moderator @george1421
                          last edited by george1421

                          @george1421 Using the configuration file that created the PXE error 21.

                          Lets grab a pcap of the pxe booting process. This works the best if the FOG server and the target computers are on the same subnet. https://forums.fogproject.org/topic/9673/when-dhcp-pxe-booting-process-goes-bad-and-you-have-no-clue

                          Since you have an IP helper, your fog server may not be on the same subnet. It would be ideal if they were on the same subnet since the filter we will use looks for dhcp, proxydhcp, and tftp communications. If this can’t happen then use wireshark on a computer plugged into the same subnet as the target computer.

                          Understand this is part helping you and part adding to the collective knowledge of the forums. It would also be nice to know what your dhcp server is for background info.

                          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
                          • P
                            Pikmin @george1421
                            last edited by

                            @george1421 said in dnsmasq ProxyDHCP BIOS and UEFI coexistence:

                            @Pikmin said in dnsmasq ProxyDHCP BIOS and UEFI coexistence:

                            bootfile name: snp.efi

                            Also looking at your log file snp.efi is being sent. If you used my config file it should have sent intel.efi (right not I’m not saying its right or wrong kernel for that system I’m just looking for the same as I told it).

                            My bad, I was trying something from your previous post, with the intel.efi setup same thing

                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 vendor class: PXEClient:Arch:00007:UNDI:003016
                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 PXE(ens160) b0:5a:da:9e:d8:b8 proxy
                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 tags: UEFI, HP210, ens160
                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 bootfile name: intel.efi
                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 next server: 192.168.131.149
                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 broadcast response
                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 sent size:  1 option: 53 message-type  2
                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 sent size:  4 option: 54 server-identifier  192.168.131.149
                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
                            Jun 20 10:30:27 ndfog dnsmasq-dhcp[13167]: 1636139832 sent size: 17 option: 97 client-machine-id  00:4e:fc:b7:3e:58:32:11:e5:8b:16:b0:5a:da...
                            
                            george1421G 1 Reply Last reply Reply Quote 0
                            • george1421G
                              george1421 Moderator @Pikmin
                              last edited by

                              @Pikmin said in dnsmasq ProxyDHCP BIOS and UEFI coexistence:

                              I also have ip helper on the switch so I can netboot from other vlans

                              This raises a question if the dnsmasq server is on the same subnet as the pxe booting client computers. If not did you add the dnsmasq server as the last dhcp server in your dhcp helper list? dnsmasq will not supply any dhcp addresses it just needs to be made aware that a dhcp request was places so it can reply with its proxydhcp answer.

                              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
                              • george1421G
                                george1421 Moderator @Pikmin
                                last edited by

                                @Pikmin said in dnsmasq ProxyDHCP BIOS and UEFI coexistence:

                                My bad, I was trying something from your previous post, with the intel.efi setup same thing

                                Great, so now we know the “match” part is working. We just need to get the target computer to believe the proxydhcp response.

                                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
                                • george1421G
                                  george1421 Moderator @Pikmin
                                  last edited by

                                  @Pikmin let try this config file:

                                  # 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
                                  
                                  # 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
                                  
                                  
                                  dhcp-match=set:HP210,97,00:4e:fc:b7:3e:58:32:11:e5:8b:16:b0:5a:da
                                  
                                  ##### Without this one I get asked to enter TFTP Address
                                  dhcp-boot=undionly.kpxe,,192.168.131.149
                                  
                                  pxe-prompt="Press F8 for boot menu", 10
                                  
                                  pxe-service=tag:HP210,X86PC, "HP-210 NOT COMPATIBLE WITH BIOS",
                                  
                                  # PXEClient:Arch:00000
                                  pxe-service=X86PC, "Boot BIOS Legacy PXE", undionly ###########.kpxe
                                  
                                  # PXEClient:Arch:00007
                                  pxe-service=BC_EFI, "Boot UEFI PXE-BC", bipxe.efi
                                  
                                  # HP210 UEFI Test
                                  pxe-service=tag:HP210,tag:X86-64_EFI, "HP-210", tipxe.efi
                                  
                                  # HP210 UEFI Test
                                  pxe-service=tag:HP210,tag:UEFI, "HP-210", gipxe.efi
                                  
                                  # PXEClient:Arch:00009
                                  pxe-service=X86-64_EFI, "Boot UEFI PXE-64", eipxe.efi
                                  
                                  
                                  dhcp-range=192.168.131.149,proxy,255.255.0.0
                                  

                                  Note this one will NOT boot your computer. I’m interested in what was matched. Some is an educated guess so lets see what is matched.

                                  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
                                  • P
                                    Pikmin @george1421
                                    last edited by

                                    @george1421

                                    Thanks for clearing stuff up with me. Appreciate it

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

                                    137

                                    Online

                                    12.1k

                                    Users

                                    17.3k

                                    Topics

                                    155.3k

                                    Posts
                                    Copyright © 2012-2024 FOG Project