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

    Dnsmasq bios and uefi

    Scheduled Pinned Locked Moved Solved
    General
    6
    46
    26.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.
    • xutianhongX
      xutianhong
      last edited by

      hi, when saw dnsmasq maillist http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2017q2/011379.html

      3q for https://github.com/openSUSE/kiwi/wiki/Setup-PXE-boot-with-EFI-using-grub2 & https://www.ibm.com/developerworks/community/blogs/a2674a1d-a968-4f17-998f-b8b38497c9f7/entry/uefi-grub2?lang=ru

      the problem may not in dnsmasq, when update to version 2.76. uefi boot can see grub>

      My env is all in VMware Workstation 12 Pro 12.0.0 build-2985596
      NAT mode
      192.168.136.200 to dhcp server centos7.3
      192.168.136.226 to cobbler( tftpserver & dnsmasq ) centos7.3
      dhcp to cobblerctos73(legacy bios)
      dhcp to uefi(efi)

      1. 136.200 install dhcpd
        conf file like blow
      dns-update-style interim;
      
      subnet 192.168.136.0 netmask 255.255.255.0 {
           option routers             192.168.136.2;
           option domain-name-servers 192.168.136.2;
           option subnet-mask         255.255.255.0;
           range dynamic-bootp        192.168.136.240 192.168.136.250;
           default-lease-time         21600;
           max-lease-time             43200;
      }
      
      1. 136.226 install centosbase dnsmasq then upgrade to 2.76 from souce, see
        https://wiki.fogproject.org/wiki/index.php?title=ProxyDHCP_with_dnsmasq#Compiling dnsmasq 2.76 if you need uefi support
      #define HAVE_DBUS
      #define HAVE_IDN
      /*#define HAVE_IDN_STATIC*/??? this line not need? cuz my centos73 not support this when do make
      #define HAVE_CONNTRACK
      #define HAVE_DNSSEC
      

      then dnsmasq conf file like blow

      # 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=/var/lib/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
      
      # Set the boot file name based on the matching tag from the vendor class (above)
      #dhcp-boot=net:BIOS,pxelinux.0,,192.168.136.226
      #dhcp-boot=net:UEFI32,grub/grub-x86.efi,,192.168.136.226
      #dhcp-boot=net:UEFI,BOOTX64.efi,,192.168.136.226
      #dhcp-boot=net:UEFI64,grub/grub-x86_64.efi,,192.168.136.226
      
      # The boot filename, Server name, Server Ip Address
      dhcp-boot=pxelinux.0,,192.168.136.226
      
      # PXE menu.  The first part is the text displayed to the user.  The second is the timeout, in seconds.
      pxe-prompt="Booting UAT Autoinstall Client", 1
      
      dhcp-range=192.168.136.200,proxy
      
      
      #legacy bios options
      pxe-service=X86PC,"Legacy",pxelinux,192.168.136.226
      
      #vmware workstation 12 EFI options
      pxe-service=BC_EFI,"BC_EFI",bootx64.efi,192.168.136.226
      
      1. I find many other doc, all can’t work, till this two, see
        https://github.com/openSUSE/kiwi/wiki/Setup-PXE-boot-with-EFI-using-grub2
        https://www.ibm.com/developerworks/community/blogs/a2674a1d-a968-4f17-998f-b8b38497c9f7/entry/uefi-grub2?lang=ru

      it’s use pxe to boot diskless linux, when finish 1&2, I can see grub>. So ….

      Tftproot is /var/lib/tftpboot

      1. Mkdir tftproot/boot/grub(in cobbler it already have)

      2. Vim tftproot/boot/grub/grub.cfg blow this

      set timeout=5
      menuentry 'Linux diskless' --class os {
           insmod net
           insmod efinet
           insmod tftp
           insmod gzio
           insmod part_gpt
           insmod efi_gop
           insmod efi_uga
           # dhcp, tftp server in my network
           set net_default_server=192.168.136.226
           # auto dhcp setup did not work for me, no idea why
           # net_bootp
           # ok let's assign a static address for now
           net_add_addr eno0 efinet0 192.168.136.246
           echo 'Network status: '
           net_ls_cards
           net_ls_addr
           net_ls_routes
           echo 'Loading Linux ...'
           linux (tftp)/boot/vmlinuz inst.ks=http://192.168.136.226/cblr/svc/op/ks/profile/rhel73-x86_64
           echo 'Loading initial ramdisk ...'
           initrd (tftp)/boot/initrd.img
      }
      
      1. grub2-mkstandalone -d /usr/lib/grub/x86_64-efi/ -O x86_64-efi --fonts=“unicode” -o /var/lib/tftpboot/bootx64.efi boot/grub/grub.cfg
      2. systemctl restart dnsmasq.

      Just power up uefi.

      Dhcpd log blow

      May 20 23:46:05 localhost.localdomain dhcpd[844]: DHCPDISCOVER from 00:0c:29:87:09:d5 via ens33
      May 20 23:46:06 localhost.localdomain dhcpd[844]: DHCPOFFER on 192.168.136.246 to 00:0c:29:87:09:d5 via ens33
      May 20 23:46:08 localhost.localdomain dhcpd[844]: DHCPREQUEST for 192.168.136.246 (192.168.136.200) from 00:0c:29:87:09:d5 via ens33
      May 20 23:46:08 localhost.localdomain dhcpd[844]: DHCPACK on 192.168.136.246 to 00:0c:29:87:09:d5 via ens33
      May 20 23:48:36 localhost.localdomain dhcpd[844]: DHCPDISCOVER from 00:0c:29:87:09:d5 via ens33
      May 20 23:48:37 localhost.localdomain dhcpd[844]: DHCPOFFER on 192.168.136.246 to 00:0c:29:87:09:d5 via ens33
      May 20 23:48:40 localhost.localdomain dhcpd[844]: DHCPREQUEST for 192.168.136.246 (192.168.136.200) from 00:0c:29:87:09:d5 via ens33
      May 20 23:48:40 localhost.localdomain dhcpd[844]: DHCPACK on 192.168.136.246 to 00:0c:29:87:09:d5 via ens33
      May 20 23:50:08 localhost.localdomain dhcpd[844]: DHCPDISCOVER from 00:0c:29:87:09:d5 via ens33
      May 20 23:50:09 localhost.localdomain dhcpd[844]: DHCPOFFER on 192.168.136.246 to 00:0c:29:87:09:d5 via ens33
      May 20 23:50:09 localhost.localdomain dhcpd[844]: DHCPREQUEST for 192.168.136.246 (192.168.136.200) from 00:0c:29:87:09:d5 via ens33
      May 20 23:50:09 localhost.localdomain dhcpd[844]: DHCPACK on 192.168.136.246 to 00:0c:29:87:09:d5 via ens33
      May 20 23:50:26 localhost.localdomain dhcpd[844]: DHCPREQUEST for 192.168.136.246 from 00:0c:29:87:09:d5 via ens33
      May 20 23:50:26 localhost.localdomain dhcpd[844]: DHCPACK on 192.168.136.246 to 00:0c:29:87:09:d5 via ens33
      

      Dnsmasq log blow

      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 available DHCP subnet: 192.168.136.200/255.255.255.0
      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 vendor class: PXEClient:Arch:00009:UNDI:003016
      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 PXE(ens33) 00:0c:29:87:09:d5 proxy
      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 tags: UEFI64, ens33
      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 next server: 192.168.136.226
      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 broadcast response
      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 sent size:  1 option: 53 message-type  2
      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 sent size:  4 option: 54 server-identifier  192.168.136.226
      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
      5月 20 23:46:05 cobbler dnsmasq-dhcp[1499]: 1607759066 sent size: 17 option: 97 client-machine-id  00:56:4d:15:7a:51:36:e6:8f:fd:fe:4d:c4:27...
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1607759066 available DHCP subnet: 192.168.136.200/255.255.255.0
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1607759066 vendor class: PXEClient:Arch:00009:UNDI:003016
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 available DHCP subnet: 192.168.136.200/255.255.255.0
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 vendor class: PXEClient:Arch:00009:UNDI:003016
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 PXE(ens33) 00:0c:29:87:09:d5 proxy
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 tags: UEFI64, ens33
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 bootfile name: bootx64.efi
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 server name: 192.168.136.226
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 next server: 192.168.136.226
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 sent size:  1 option: 53 message-type  5
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 sent size:  4 option: 54 server-identifier  192.168.136.226
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
      5月 20 23:46:08 cobbler dnsmasq-dhcp[1499]: 1726852750 sent size: 17 option: 97 client-machine-id  00:56:4d:15:7a:51:36:e6:8f:fd:fe:4d:c4:27...
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 available DHCP subnet: 192.168.136.200/255.255.255.0
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 vendor class: PXEClient:Arch:00009:UNDI:003016
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 PXE(ens33) 00:0c:29:87:09:d5 proxy
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 tags: UEFI64, ens33
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 next server: 192.168.136.226
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 broadcast response
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 sent size:  1 option: 53 message-type  2
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 sent size:  4 option: 54 server-identifier  192.168.136.226
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
      5月 20 23:48:36 cobbler dnsmasq-dhcp[1499]: 430386701 sent size: 17 option: 97 client-machine-id  00:56:4d:15:7a:51:36:e6:8f:fd:fe:4d:c4:27...
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 430386701 available DHCP subnet: 192.168.136.200/255.255.255.0
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 430386701 vendor class: PXEClient:Arch:00009:UNDI:003016
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 available DHCP subnet: 192.168.136.200/255.255.255.0
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 vendor class: PXEClient:Arch:00009:UNDI:003016
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 PXE(ens33) 00:0c:29:87:09:d5 proxy
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 tags: UEFI64, ens33
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 bootfile name: bootx64.efi
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 server name: 192.168.136.226
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 next server: 192.168.136.226
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 sent size:  1 option: 53 message-type  5
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 sent size:  4 option: 54 server-identifier  192.168.136.226
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
      5月 20 23:48:40 cobbler dnsmasq-dhcp[1499]: 549480385 sent size: 17 option: 97 client-machine-id  00:56:4d:15:7a:51:36:e6:8f:fd:fe:4d:c4:27...
      5月 20 23:50:08 cobbler dnsmasq-dhcp[1499]: 278376755 available DHCP subnet: 192.168.136.200/255.255.255.0
      5月 20 23:50:08 cobbler dnsmasq-dhcp[1499]: 278376755 vendor class: anaconda-Linux 3.10.0-514.el7.x86_64 x86_64
      5月 20 23:50:09 cobbler dnsmasq-dhcp[1499]: 278376755 available DHCP subnet: 192.168.136.200/255.255.255.0
      5月 20 23:50:09 cobbler dnsmasq-dhcp[1499]: 278376755 vendor class: anaconda-Linux 3.10.0-514.el7.x86_64 x86_64
      5月 20 23:50:26 cobbler dnsmasq-dhcp[1499]: 2725144841 available DHCP subnet: 192.168.136.200/255.255.255.0
      5月 20 23:50:26 cobbler dnsmasq-dhcp[1499]: 2725144841 vendor class: anaconda-Linux 3.10.0-514.el7.x86_64 x86_64
      

      Tftp log blow

      5月 20 23:46:09 cobbler in.tftpd[2257]: RRQ from 192.168.136.246 filename bootx64.efi
      5月 20 23:46:09 cobbler in.tftpd[2258]: RRQ from 192.168.136.246 filename bootx64.efi
      5月 20 23:48:41 cobbler in.tftpd[2285]: RRQ from 192.168.136.246 filename bootx64.efi
      5月 20 23:48:41 cobbler in.tftpd[2286]: RRQ from 192.168.136.246 filename bootx64.efi
      5月 20 23:48:58 cobbler in.tftpd[2287]: RRQ from 192.168.136.246 filename /boot/vmlinuz
      5月 20 23:49:04 cobbler in.tftpd[2288]: RRQ from 192.168.136.246 filename /boot/initrd.img
      

      ***Now, the uefi boot is done.
      It’s not perfect.
      Cuz in grub.cfg we need write nextserver ip & host ip,
      And grub2-mkstandalone command write grub.cfg in bootx64.efi, cuz I change boot/grub/grub.cfg it’s. not working.
      So now I working to grub lib, want find way to solve this 3 problem.

      If anybody working with grub/grub2, can give me some idea? thank you very much.***

      3_1495297549248_4.jpg 2_1495297549248_3.jpg 1_1495297549248_2.jpg 0_1495297549247_1.jpg

      Tom ElliottT 1 Reply Last reply Reply Quote 0
      • Tom ElliottT
        Tom Elliott @xutianhong
        last edited by

        @xutianhong of just use refind which is meant to automatically use EFI?

        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! Get in contact with me (chat bubble in the top right corner) if you want to join in.

        Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

        Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

        xutianhongX 1 Reply Last reply Reply Quote 0
        • xutianhongX
          xutianhong @Tom Elliott
          last edited by

          @Tom-Elliott hi, i just google what is rEFInd. dose rEFInd support BIOS/EFI pxeboot?

          Tom ElliottT 1 Reply Last reply Reply Quote 0
          • Tom ElliottT
            Tom Elliott @xutianhong
            last edited by

            @xutianhong I’m not sure I follow. Grub and rEFInd are exit types, to leave pxe and boot to HDD.

            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! Get in contact with me (chat bubble in the top right corner) if you want to join in.

            Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

            Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

            1 Reply Last reply Reply Quote 0
            • Tom ElliottT
              Tom Elliott
              last edited by

              If you’re simply trying to boot an iso, ipxe supports this natively.

              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! Get in contact with me (chat bubble in the top right corner) if you want to join in.

              Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

              Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

              xutianhongX 2 Replies Last reply Reply Quote 0
              • xutianhongX
                xutianhong @Tom Elliott
                last edited by

                @Tom-Elliott very thank you. im try to test rEFInd to make sure is it suit for my env. i will reply later.

                1 Reply Last reply Reply Quote 0
                • xutianhongX
                  xutianhong @Tom Elliott
                  last edited by

                  @Tom-Elliott thank you for ur advice, i found some figure way @ipxe site. now im search way to kindly combine ipxe with cobbler. the uefi ipxe boot install cost me lots of time cuz rhel73 have kernel bug. finally figure out too. 👽

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

                    @xutianhong Can you explain what your trouble is? I read your first post and it was not clear, I think maybe the language translation.

                    Your first post make me think you are telling us what you find not asking for help.

                    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!

                    xutianhongX 2 Replies Last reply Reply Quote 0
                    • xutianhongX
                      xutianhong @george1421
                      last edited by

                      @george1421 ok. i was using cobbler install redhat @ my work env. at first i found all works fine @ legacy bios. but when shift to UEFI. its’ not work good anymore. cobbler+dnsmasq.proxymode, msg freeze at option 47. i search google and found fog.wiki have advice dnsmasq need upgrade to 2.76. i do it. at this time , screen show grub>. then i search @ dnsmasq mail list and other website. find some way to figure this write in my first post. but it’s need write static ip&nextserver info to cfg, make standalone efi file. then Tom Elliott suggest ipxe & rEFInd.

                      george1421G 1 Reply Last reply Reply Quote 0
                      • xutianhongX
                        xutianhong @george1421
                        last edited by

                        @george1421 im sorry make u confuse, cuz my english was not good. maybe can’t describe clearly.

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

                          @xutianhong said in Dnsmasq bios and uefi:

                          need upgrade to 2.76. i do it. at this time , screen show grub>. then i search @ dnsmasq mail list and other website. find some way to figure this write in my first post.

                          What confuses me is you say dnsmasq and then grub. This is the confusion. dnsmasq is used to send the proper boot information to the target computer to get the target to load the FOG iPXE menu. Once the iPXE menu is displayed dnsmasq is no longer needed.

                          Once the iPXE menu is displayed you must make a menu pick within a few seconds or the iPXE menu picks boot from local hard drive to boot.

                          This is where the iPXE menu uses the (default) sanboot process for finding the hard drive on bios (legacy) computers. If your target computer is uefi then you can use grub, but most will use rEFInd to identify the boot partition on the hard drive. If rEFInd can’t find the boot partition you may need to adjust the refind.conf file to search more locations.

                          I want to be clear that if your target computer boots into the FOG iPXE menu then dnsmasq is working correctly.

                          If you are having a problem leaving the iPXE menu and booting from the local hard drive then this is an iPXE problem.

                          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!

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

                            @xutianhong said in Dnsmasq bios and uefi:

                            @george1421 im sorry make u confuse, cuz my english was not good. maybe can’t describe clearly.

                            We can work together to find an answer, so no problem. We will take it slow to understand each other.

                            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
                            • xutianhongX
                              xutianhong @george1421
                              last edited by

                              @george1421 im not sure what happened. it’s looks like grub cant get cfg file?
                              it’s my boot process.
                              dhcp start @ 200
                              tftp & dnsmasq.proxymode start @ 226 only use pxe+grub not ipxe&refind
                              uefi client @ dhcp
                              the tftproot tree blow this

                              [root@cobbler tftpboot]# tree
                              .
                              |-- boot
                              |   `-- grub
                              |       `-- menu.lst
                              |-- etc
                              |-- grub
                              |   |-- 01-00-50-56-2D-85-AB
                              |   |-- 01-00-50-56-36-01-FD
                              |   |-- C0A888FC
                              |   |-- efidefault
                              |   |-- grub-x86_64.efi
                              |   |-- grub-x86.efi
                              |   `-- images -> ../images
                              |-- images
                              |   |-- centos6.0-x86_64
                              |   |   |-- initrd.img
                              |   |   `-- vmlinuz
                              |   |-- centos7.2-x86_64
                              |   |   |-- initrd.img
                              |   |   `-- vmlinuz
                              |   |-- rhel72-x86_64
                              |   |   |-- initrd.img
                              |   |   `-- vmlinuz
                              |   `-- rhel73-x86_64
                              |       |-- initrd.img
                              |       `-- vmlinuz
                              |-- images2
                              |-- memdisk
                              |-- menu.c32
                              |-- ppc
                              |-- pxelinux.0
                              |-- pxelinux.cfg
                              |   |-- 01-00-50-56-2d-85-ab
                              |   |-- 01-00-50-56-36-01-fd
                              |   |-- C0A888FC
                              |   `-- default
                              |-- s390x
                              |   `-- profile_list
                              |-- uefi
                              `-- yaboot
                              

                              the dnsmasq conf blow this

                              # 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=/var/lib/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
                              
                              # The boot filename, Server name, Server Ip Address
                              dhcp-boot=pxelinux.0,,192.168.136.226
                              
                              # PXE menu.  The first part is the text displayed to the user.  The second is the timeout, in seconds.
                              pxe-prompt="Booting UAT Autoinstall Client", 1
                              #legacy bios options
                              #pxe-service=X86PC,"Legacy",undionly.kpxe,192.168.136.226
                              #vmware workstation 12 EFI options
                              pxe-service=BC_EFI,"BC_EFI",grub/grub-x86_64.efi,192.168.136.226
                              
                              dhcp-range=192.168.136.200,proxy
                              

                              when uefi client power up, it’s show grub>
                              0_1495490281367_1.jpg

                              here is dhcp/tftp/dnsmasq log

                              May 23 05:56:08 localhost dhcpd[844]: DHCPDISCOVER from 00:0c:29:87:09:d5 via ens33
                              May 23 05:56:09 localhost dhcpd[844]: DHCPOFFER on 192.168.136.250 to 00:0c:29:87:09:d5 via ens33
                              May 23 05:56:11 localhost dhcpd[844]: DHCPREQUEST for 192.168.136.250 (192.168.136.200) from 00:0c:29:87:09:d5 via ens33
                              May 23 05:56:11 localhost dhcpd[844]: DHCPACK on 192.168.136.250 to 00:0c:29:87:09:d5 via ens33
                              
                              5月 23 05:56:12 cobbler xinetd[981]: START: tftp pid=38640 from=192.168.136.250
                              5月 23 05:56:12 cobbler in.tftpd[38641]: RRQ from 192.168.136.250 filename grub/grub-x86_64.efi
                              5月 23 05:56:12 cobbler in.tftpd[38642]: RRQ from 192.168.136.250 filename grub/grub-x86_64.efi
                              
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 available DHCP subnet: 192.168.136.200/255.255.255.0
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 vendor class: PXEClient:Arch:00009:UNDI:003016
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 PXE(ens33) 00:0c:29:87:09:d5 proxy
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 tags: UEFI64, ens33
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 next server: 192.168.136.226
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 broadcast response
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 sent size:  1 option: 53 message-type  2
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 sent size:  4 option: 54 server-identifier  192.168.136.226
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
                              5月 23 05:56:08 cobbler dnsmasq-dhcp[38636]: 2915677108 sent size: 17 option: 97 client-machine-id  00:56:4d:15:7a:51:36:e6:8f:fd:fe:4d:c4:27...
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 2915677108 available DHCP subnet: 192.168.136.200/255.255.255.0
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 2915677108 vendor class: PXEClient:Arch:00009:UNDI:003016
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 available DHCP subnet: 192.168.136.200/255.255.255.0
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 vendor class: PXEClient:Arch:00009:UNDI:003016
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 PXE(ens33) 00:0c:29:87:09:d5 proxy
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 tags: UEFI64, ens33
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 bootfile name: grub/grub-x86_64.efi
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 server name: 192.168.136.226
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 next server: 192.168.136.226
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 sent size:  1 option: 53 message-type  5
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 sent size:  4 option: 54 server-identifier  192.168.136.226
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 sent size:  9 option: 60 vendor-class  50:58:45:43:6c:69:65:6e:74
                              5月 23 05:56:11 cobbler dnsmasq-dhcp[38636]: 3034770792 sent size: 17 option: 97 client-machine-id  00:56:4d:15:7a:51:36:e6:8f:fd:fe:4d:c4:27...
                              
                              Tom ElliottT 2 Replies Last reply Reply Quote 0
                              • Tom ElliottT
                                Tom Elliott @xutianhong
                                last edited by

                                @xutianhong what does the grub.conf look like?

                                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! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                                Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                xutianhongX 1 Reply Last reply Reply Quote 0
                                • Tom ElliottT
                                  Tom Elliott @xutianhong
                                  last edited by

                                  @xutianhong I say this because it appears from your directory tree there is no grub.cfg file.

                                  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! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                                  Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                  Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

                                  1 Reply Last reply Reply Quote 0
                                  • xutianhongX
                                    xutianhong @Tom Elliott
                                    last edited by

                                    @Tom-Elliott there no grub.cfg, only cobbler gen efidefault. ofcuz i copy efidefault to /grub.cfg & /boot/grub/grub.cfg, not work, same grub> msg.

                                    default=0
                                    timeout=0
                                    
                                    title centos6.0-x86_64
                                        root (nd)
                                        kernel /images/centos6.0-x86_64/vmlinuz  ksdevice=bootif lang=  kssendmac text  ks=http://192.168.136.226/cblr/svc/op/ks/profile/centos6.0-x86_64
                                        initrd /images/centos6.0-x86_64/initrd.img
                                    
                                    title centos7.2-x86_64
                                        root (nd)
                                        kernel /images/centos7.2-x86_64/vmlinuz  ksdevice=bootif lang=  kssendmac text  ks=http://192.168.136.226/cblr/svc/op/ks/profile/centos7.2-x86_64
                                        initrd /images/centos7.2-x86_64/initrd.img
                                    
                                    title rhel72-x86_64
                                        root (nd)
                                        kernel /images/rhel72-x86_64/vmlinuz  ksdevice=bootif lang=  kssendmac text  ks=http://192.168.136.226/cblr/svc/op/ks/profile/rhel72-x86_64
                                        initrd /images/rhel72-x86_64/initrd.img
                                    
                                    title rhel73-x86_64
                                        root (nd)
                                        kernel /images/rhel73-x86_64/vmlinuz  ksdevice=bootif lang=  kssendmac text  ks=http://192.168.136.226/cblr/svc/op/ks/profile/rhel73-x86_64
                                        initrd /images/rhel73-x86_64/initrd.img```
                                    Tom ElliottT george1421G 2 Replies Last reply Reply Quote 0
                                    • Tom ElliottT
                                      Tom Elliott @xutianhong
                                      last edited by

                                      @xutianhong and what does your grub line look like?

                                      I would imagine it needs to look at the config file directly.

                                      I don’t know if it can be done in dnsmasq but possibly:
                                      pxe-service=BC_EFI,"BC_EFI","grub/grub-x86_64.efi --config-file=grub/efidefault",192.168.136.226

                                      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! Get in contact with me (chat bubble in the top right corner) if you want to join in.

                                      Web GUI issue? Please check apache error (debian/ubuntu: /var/log/apache2/error.log, centos/fedora/rhel: /var/log/httpd/error_log) and php-fpm log (/var/log/php*-fpm.log)

                                      Please support FOG if you like it: https://wiki.fogproject.org/wiki/index.php/Support_FOG

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

                                        @xutianhong I have to ask are you using FOG or are you using FOG for pxe only, or are you not using fog and have a question about pxe booting?

                                        I would ask why you do it this way? I would not use grub but the iPXE menu instead.

                                        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!

                                        xutianhongX 1 Reply Last reply Reply Quote 0
                                        • xutianhongX
                                          xutianhong @george1421
                                          last edited by

                                          @george1421 im not using FOG. only question about pxe booting. use this cuz cobbler default env. im not add/del extra file to it. if default can work. i dont want change any thing.😥

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

                                            @xutianhong OK understand, I was confused because I think you use FOG and doing this.

                                            You can still do what you want if you look at it a bit differently. FOG uses a pxe boot loader called iPXE. That is similar to syslinux and grub. But iPXE is very feature rich.

                                            You can do what you are looking for if you know how to program your config menus.

                                            Here is my dnsmasq 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
                                            
                                            # The boot filename, Server name, Server Ip Address
                                            dhcp-boot=undionly.kpxe,,<fog_server_IP>
                                            
                                            # 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,,<fog_server_IP>
                                            dhcp-boot=net:UEFI,ipxe.efi,,<fog_server_IP>
                                            dhcp-boot=net:UEFI64,ipxe.efi,,<fog_server_IP>
                                            
                                            # 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
                                            pxe-service=X86-64_EFI, "Boot to FOG UEFI", ipxe.efi
                                            pxe-service=BC_EFI, "Boot to FOG UEFI PXE-BC", ipxe.efi
                                            
                                            dhcp-range=<fog_server_ip>,proxy
                                            

                                            You replace the <fog_server_ip> with your address of your tftp server.

                                            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
                                            • 2
                                            • 3
                                            • 2 / 3
                                            • First post
                                              Last post

                                            147

                                            Online

                                            12.0k

                                            Users

                                            17.3k

                                            Topics

                                            155.2k

                                            Posts
                                            Copyright © 2012-2024 FOG Project