7156 Uefi pxe DHCP error
-
@george1421 ok I’m waiting on my machine to boot.
-
make[1]: Entering directory '/home/dureal99d/dnsmasq-2.76/src' make[1]: 'dnsmasq' is up to date. make[1]: Leaving directory '/home/dureal99d/dnsmasq-2.76/src' install -d /usr/sbin -d /usr/share/man/man8 install -m 644 man/dnsmasq.8 /usr/share/man/man8 install -m 755 src/dnsmasq /usr/sbin
-
@dureal99d Yes, that is expected. It says the binary you complied is up to date and just recopied the files to their destination location. So
dnsmasq -v
should show that 2.76 is installed (hope). -
the result of running command ps aux|grep dnsmasq
nobody 1467 0.0 0.0 47864 3728 ? S 07:51 0:00 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid --listen-address=127.0.1.1 --cache-size=0 --conf-file=/dev/null --proxy-dnssec --enable-dbus=org.freedesktop.NetworkManager.dnsmasq --conf-dir=/etc/NetworkManager/dnsmasq.d dureal9+ 5503 0.0 0.0 14224 972 pts/5 S+ 08:00 0:00 grep --color=auto dnsmasq
-
@george1421 yes the command shows
Dnsmasq version 2.76 Copyright (c) 2000-2016 Simon Kelley Compile time options: IPv6 GNU-getopt DBus no-i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth DNSSEC loop-detect inotify This software comes with ABSOLUTELY NO WARRANTY. Dnsmasq is free software, and you are welcome to redistribute it under the terms of the GNU General Public License, version 2 or 3.```
-
@george1421 to edit this file what do I type
-
@dureal99d OK then issue the network manager restart that is below. Then (at least on my Pi) inspect the /var/log/syslog file way at the bottom. You should see the startup of the dnsmasq service. Confirm the version number there is showing 2.76. If that is the case then you have successfully updated your dnsmasq to 2.76.
-
@dureal99d said in 7156 Uefi pxe DHCP error:
@george1421 to edit this file what do I type
?? File you need to edit ??
-
@george1421 I just thought I would have to edit this, dnsmasq file.
-
@dureal99d Ah ok to add uefi support? I am working on another tutorial that covers that. https://forums.fogproject.org/topic/8726/advanced-dnsmasq-techniques
I think the bits you need are on the third post. Below is that config file. The 192.168.112.24 is MY FOG/dnsmaq server. This is the simple way to add uefi support. I’m working on a more complex way that opens up new options. But if you want to get uefi/bios working this should get you going.
# 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 # The boot filename, Server name, Server Ip Address dhcp-boot=undionly.kpxe,,192.168.112.24 # 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, ARM_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. # PXEClient:Arch:00000 pxe-service=X86PC, "Boot BIOS PXE", undionly.kpxe # PXEClient:Arch:00007 pxe-service=BC_EFI, "Boot UEFI PXE-BC", ipxe.efi # PXEClient:Arch:00009 pxe-service=X86-64_EFI, "Boot UEFI PXE-64", ipxe.efi dhcp-range=192.168.112.24,proxy
-
@george1421 cool. and I see a whole bunch of data popped into the syslog once I ran that network command
sudo systemctl restart NetworkManager
. -
@george1421 I still need the command to edit ltsb.conf file
-
@george1421 ok, let me try this another way. is this ltsb file one I should crate myself? and if so where do I place it after I’m done?
-
@dureal99d Yes it is a file you create. Typically we call this ltsp.conf and it goes in /etc/dnsmasq.d directory. You will need to use your favorite text editor. I use vi (because I’m old). You need to be sure to launch your text editor either as administrator if doing via the gui or as sudo if launching it by command line. If you use vi then the command would be
sudo vi /etc/dnsmasq.d/ltsp.conf
If you have never used vi before, don’t! All of the text editor commands are cryptic and will drive you nuts to learn. -
@george1421 said in 7156 Uefi pxe DHCP error:
LOL, no vi for me then. good ol gedit it is.
-
@george1421 said in 7156 Uefi pxe DHCP error:
@dureal99d Ah ok to add uefi support? I am working on another tutorial that covers that. https://forums.fogproject.org/topic/8726/advanced-dnsmasq-techniques
I think the bits you need are on the third post. Below is that config file. The 192.168.112.24 is MY FOG/dnsmaq server. This is the simple way to add uefi support. I’m working on a more complex way that opens up new options. But if you want to get uefi/bios working this should get you going.
# 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 # The boot filename, Server name, Server Ip Address dhcp-boot=undionly.kpxe,,192.168.112.24 # 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, ARM_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. # PXEClient:Arch:00000 pxe-service=X86PC, "Boot BIOS PXE", undionly.kpxe # PXEClient:Arch:00007 pxe-service=BC_EFI, "Boot UEFI PXE-BC", ipxe.efi # PXEClient:Arch:00009 pxe-service=X86-64_EFI, "Boot UEFI PXE-64", ipxe.efi dhcp-range=192.168.112.24,proxy
so how do you get this file to interact with the router?
-
@dureal99d I believe the proper term is IT voodoo.
Well once you update that file and restart dnsmasq, dnsmasq will listen for a dhcp broadcast and reply as if it is a dhcp server but will only offer specific dhcp fields.
I’m all for education so I suggest you learn and understand what is going on here. I suggest that you install wireshark on a Windows computer or if you have to your fog server and use the following filter “port = 67 or port = 68 or port = 69 or port = 4011” This will instruct wireshark to only listen for this communication. Now pxe boot the target computer. Now if you using wireshark on a windows computer it will only be able to hear broadcast bits of dhcp (this will be enough to understand what is going on.) If you install it on the FOG server then you can see the entire pxe booting process.
-
@george1421 Another option is to install tcpdump on your FOG/DNSMasq server then use the following filter:
sudo tcpdump -w output.pcap port 67 or port 68 or port 69 or port 4011
Then perform the pxe boot. The tcpdump program is much lighter then wireshark, but doesn’t allow viewing of the captured data. Once your pxe device boots to completion or error then ctrl-c out of the tcpdump program. You can transfer this file to a windows computer using putty and review it with wireshark. This is the exact process I used when debugging dnsmasq for one of my tutorials. This way you can see what changes to the ltsp.conf file have on the output when viewed from wireshark.
-
@george1421 I guess what I was asking it should I disable DNS masq on my DD wrt router
-
@george1421 but I should also educate myself on the recommended