Need help for a test setup
-
Hello everyone,
First time here so be gentle.
I did 2 setup for FOG. First setup was at my job and it worked somewhat ok. I used the DHCP option 66 and 67 for the PXE boot and it worked…somewhat. It made Hyper-V and VirtualBox crash if I tried to restore an image or inventory but at least I got the PXE booting.
Due to COVID getting very bad here, we are stuck at home and I tried to continue my test. I have been unable to get FOG working again.
Here is my setup:
A macmini with ubuntu 20.04 live server
A intel NUC running HYPER-V with a virtual machine hosting my DHCP.
2 Physical Pc serving as client
One switch connecting everything without internet access…My personal router / switch is able to provide DHCP and I didn’t want to mess something up so I tried to do it on a small LAN without internet access.
I am able to get the clients running and see them in my FOG server Dashboard. However, no luck with the PXE.
The DHCP don,t seem to send an IP address if I’m not in windows, Linux or MAC.
Using IPXE ISO as a USB key I have been able to get an IP address but then… I get no boot filename available… which is weird because I’m pretty sure I entered it in the Windows DHCP correctly.The client PC are a mix of old and new. All of them have legacy and UEFI support.
Should I host the DHCP on the FOG server? Would it help in my case?
Help a newb out please.
-
@init32 what are you running for DHCP?
-
As Junkhacker said, what device is your dhcp server? Also what mode is your pxe booting computer in (bios,uefi)?
If this is a home lab / soho setup and you are using your ISP router or network switch for dhcp services then install dnsmasq on your FOG server to supply the pxe boot info only. Home / soho routers don’t do a real good job sending pxe boot information out. This is where dnsmasq will help. Your main dhcp server will provide everything except pxe booting info. So when your fog server is not running there are no impacts to your network.
https://forums.fogproject.org/topic/12796/installing-dnsmasq-on-your-fog-server
-
I run it on a Windows server 2019. It is a virtual machine within hyper-v. I tried both option for bios and UEFI so undionly.kpxe and uefi .
-
for virtualbox, i recall having better luck if i set up the vm OS version as being “windows 7”
since you’re able to get the furthest with that, maybe give that a try
-
Will do and supply details and what was wrong when I find it!
-
@init32 If you get to a point where you just can’t figure it out follow this tutorial to run tcpdump on your FOG server to generate a pcap file. Either upload the pcap to this forum or upload it to a file share site (like google drive) and share it as public and post the link here. We’ll take a look at the pcap and tell you what is missing in your setup.
https://forums.fogproject.org/topic/9673/when-dhcp-pxe-booting-process-goes-bad-and-you-have-no-clue
-
@george1421 Hello again!
To force my LAN to give an IP while they are in UEFI or BIOS, if I install dnsmasq and force it to listen to my FOG server…would it work?
If my fog server is on let’s say 192.168.2.5, do I define my dnsmasq config like this?
listen-address=::1,127.0.0.1,192.168.2.5
Also I do NOT have ANY DNS in this setup… do I need one?
Total newb as you can see.
-
@init32 said in Need help for a test setup:
If my fog server is on let’s say 192.168.2.5, do I define my dnsmasq config like this?
To be technically correct dnsmasq puts the network adapter in promiscuous mode and then listens for a dhcp DISCOVER packet and then dnsmasq will respond to that.
If you want to go the dnsmasq route (not a bad decision) use this configuration file exactly: https://forums.fogproject.org/topic/12796/installing-dnsmasq-on-your-fog-server
Make sure you add the ip address of your fog server in the rights spots.
This configuration file will supplement your dhcp server and provide only pxe boot information.
-
allright… soo I got more details but it’s weird.
The good news, Wireshark seems to confirm that my client does indeed get an IP address from my router. Bad news is it doesn’t see my server:
Frame 10: 342 bytes on wire (2736 bits), 342 bytes captured (2736 bits)
Ethernet II, Src: ASUSTekC_bf:9c:80 (1c:87:2c:bf:9c:80), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
Internet Protocol Version 4, Src: 192.168.1.1, Dst: 255.255.255.255
User Datagram Protocol, Src Port: 67, Dst Port: 68
Dynamic Host Configuration Protocol (Offer)
Message type: Boot Reply (2)
Hardware type: Ethernet (0x01)
Hardware address length: 6
Hops: 0
Transaction ID: 0x410dbe0f
Seconds elapsed: 28
Bootp flags: 0x8000, Broadcast flag (Broadcast)
Client IP address: 0.0.0.0
Your (client) IP address: 192.168.1.229
Next server IP address: 192.168.1.1
Relay agent IP address: 0.0.0.0
Client MAC address: EliteGro_68:4f:35 (1c:69:7a:68:4f:35)
Client hardware address padding: 00000000000000000000
Server host name not given
Boot file name not given
Magic cookie: DHCP
Option: (53) DHCP Message Type (Offer)
Option: (54) DHCP Server Identifier (192.168.1.1)
Option: (51) IP Address Lease Time
Option: (58) Renewal Time Value
Option: (59) Rebinding Time Value
Option: (1) Subnet Mask (255.255.255.0)
Option: (28) Broadcast Address (192.168.1.255)
Option: (6) Domain Name Server
Option: (3) Router
Option: (255) End
Padding: 0000000000000000I changed my server to another network and the ip is 192.168.1.224
-
WORKS!
DNSmasq did the trick!
Thanks a lot guys!
-
@init32 said in Need help for a test setup:
Your (client) IP address: 192.168.1.229
****Next server IP address: 192.168.1.1
Relay agent IP address: 0.0.0.0Above is the problem with soho routers they put themselves as the pxe boot server. This is where we use dnsmasq to override this poor behavior.
Well done getting it setup!