It’s a good precaution either way!
Yes, I’m able to boot into the iPXE menu on the 10.0.0.1 network. We only have the one network so we’re good there.
Installed Ubuntu Server 20.04 with the dev branch. I still got an error with starting the dhcp though. Digging through the forums I found it was my /8 mask that was causing it to fail. I changed it to /24 and everything installed flawlessly and I’m able to get to the ipxe menu.
I’ve always had it stuck in my head that a 10.0.0.0 network was a 255.0.0.0 mask and forgot what that actually meant. I do not need 16 million hosts.
That is indeed what broke the install, there was a thread here that helped me figure it out.
@george1421 Thank you for the information George.
So if I want to run Ubuntu Server 20.04, that would require the dev branch? Good to know, I was going to use that but wasn’t sure of compatibility so I went with 18.04.
So far the steps you’ve described are what I’ve done. I have the FOG server set up with 2 interfaces, I set up a 10.0.0.0/8 network on the Ethernet interface.
The USB interface on our business LAN I used DHCP, I can’t assign a static without contacting our MSP.
When I installed FOG I changed the interface and issued it a 10.0.0.1 address. But here’s where I ran into trouble. I don’t know what I was doing wrong but whenever I told it to use FOG for DHCP the install would fail at “Setting up and starting DCHP Server”. It would create the dhcpd.conf file though.
Looking back now, would a DNS setting, or lack of, fail the DCHP install? I didn’t realize that 127.0.0.53 was Ubuntu’s default DNS and I think I changed that to the FOG IP on those installs. It wasn’t until I was messing with dnsmasq that I figured that out.
So anyway, that is how I got into using dnsmasq instead of the isc-dhcp server. I can try another install this way and see how I fair.
I apologize if this is confusing, I tend to make things more complicated than they need to be, that’s why I reached out for help. It was getting to be too much. Let me try to sum up what I have and what I want to do.
I built what was basically a test run of FOG in a VM a few years ago, my former boss ended up putting this into production on our network and added in the DHCP options. I normally do on-site data erasure so I’m not in the office, but that has slowed so I’ve focused on updating FOG. We use it for imaging and also to boot Parted Magic to test machines and get specs. The problems I’m having is that our network isn’t the best for this. It’s pieced together with random equipment (we’re an ITAD company). The VM is Ubuntu Server 16.04 and it’s running FOG 1.5.4. It’s also got over 20 useless images on it. It’s been very neglected over the last couple years.
So I just wanted to start fresh. Give the sales team their own box to image on so they wouldn’t have to worry about the network going down or the MSP messing with the VM itself (they’ve shut it down a few times).
I’ll stop here and ask your advice on the best way to achieve this. We do not have SCCM or WDS. Right now FOG is the only thing that would be using for PXE booting and that is currently set up on our Windows Server. I can continue to use that if it’s the best option.
@Sebastian-Roth I am using the USB Ethernet adapter on our cooperate network for internet access. I have the Ethernet port on the machine set to the PXE network with that connected to an 8 port dumb switch. I’d like them to be able to plug into the switch, PXE boot and image, then be able to access the internet through that switch on the private network still. The Ubuntu Server has 2 NIC’s configured, both bridged, one private and one on the network.
What I’m thinking I can do with dnsmasq is when a machine PXE boots, dnsmasq will step in and hand out the information, but when a machine boots normally it will get it’s DHCP from our network. Is that correct and does that make sense?
We have Windows Server 2012 I believe, but I can’t alter it easily. We outsourced our IT and I had a hard time explaining to them what a FOG server was and why it was issuing IP’s. So I’d like to eliminate it from our infrastructure so I can manage it locally.
I’ve setup dnsmasq in Ubuntu 18.04 Server on a Windows machine in VirtualBox. I have dnsmasq running as the DHCP server. This works perfectly, I’m able to boot legacy and UEFI. I have the ethernet port on a 10.0.0.0 network where FOG is 10.0.0.1 and a USB to ethernet adapter that is connected to our production network that I used for the install and to log in remotely.
My goal was to create an isolated box off of our network for our sales prep team to image machines with Windows and not have to worry about our network. We recently outsourced IT support and they’ve wrecked a few things. So I just wanted to create a machine and a switch they can connect to at their own station. But we activate Windows before we ship it to the customer, so I just realized yesterday that they would have to connect back to our network to activate it. I need a way to PXE boot without our network, and then connect to our network after, if that makes sense.
I just went into the weeds with dnsmasq and I think I can still do this, but wanted some reassurance on how to proceed.
So my long intro to a question is should I use dnsmasq, via proxy, on our network for PXE boot? And if so, would it be possible to have the imaged Windows machine then boot up using our production network?
Or is there a way better way to do this? Basically I’d like to PXE boot offline, but the Windows machines we activate would need to connect to the network after. This is probably a can of worms but is there a better way to activate Windows? I’ll just leave that there and probably open a new thread on that one if you guys say yes.
Thanks in advance! It’s late and I apologize if this didn’t make any sense, just let me know any other information you need.
@george1421 Sorry for not getting back to you earlier, thanks for the response again. This sounds like exactly what I would want to do. Although it leaves me a bit worried about the drivers installing and Windows activating after it’s left our shop. But I guess if I can test it and it works it wouldn’t be any worse than what we’re doing now.
I did get your driver scripts, and drivers for a Dell E6430, loaded last night and after the deployment it did find the drivers on the server. It didn’t load them because I did’t have the setupcomplete.cmd set up yet. I did make that file on the imaged 6430 and ran it and it did install the drivers (minus one fingerprint reader), so they were there in the C:\drivers. There was one unsigned driver that I had to give permission to install.
This is the same as Windows 10 hangs at “Just a moment…” on Dell Latitude 5500 because I then put the setupcomplete in C:\Windows\Setup\Scripts (which I created; right or wrong) on my golden image. I deployed that today and it still found the drivers, but after finding the drivers it eventually just hung at the “just a moment” screen. This was after about a half hour and I had to leave work, with this machine, so I just unplugged it. After seeing the previously mentioned thread I booted it up and it went to the OOBE, I went into audit mode and indeed all the drivers were installed, but now missing 2 fingerprint reader drivers instead of one previously. So maybe that was the other unsigned driver which caused the hang. I can do more testing tomorrow.
With that setup does it install drivers after the deployment while it’s booting up Windows?
But back on task, it sounds like I’ll need to use the unattend file for the activation code and the setupcomplete.cmd will take care of putting the driver on the target machine. Would there be a prompt or something somewhere in the FOG GUI that would ask for a activation key before image deploy?
Then it is shipped and drivers and activation is done when the end user turns it on. I can see how this would be a huge time saver on my end. I would just be worried about something going wrong with driver installs and activation on the customers end. Drivers not working would be my fault but I also worry about someone entering the activation code wrong. I’m sure there’s ways to safeguard that, someone has to be doing this already.
I’ll get the home lab set up again tomorrow and see what I can get working.
Sorry for the ramble, thanks for the help!
@george1421 So I just finished copying the scripts and creating the driver directories. Regarding this:
“Update: With the later releases of Win10 post 1703, the offline servicing section doesn’t seem to load the drivers. As a fix, add the following lines to your setupcomplete.cmd batch file to load the drivers at the end of the OSD process.
pnputil.exe /add-driver “C:\Drivers*.inf” /subdirs /install
pnputil.exe /add-driver “C:\Drivers*.inf” /subdirs /install
pnputil.exe /add-driver “C:\Drivers*.inf” /subdirs /install”
I do not have a setupcomplete.cmd in my image. I’m presuming that this is something I need to add to my golden image before capture? If so, do I just create that file with this contents, and then where does it go?
Thank you so much for the quick response George, it’s an honor to get your advice. I’ve read countless threads with you being so helpful.
My golden image doesn’t have the FOG client installed, it also doesn’t have an unattend so that’s good for me. We do have a FOG server running on our network. I built one a couple years ago and then had to abandon it when I ended up going offsite most of the time. So when we upgraded to new systems the boss had me resurrect it and we’ve used that for our in house machines. They have the FOG client installed and are managed that way, so with doing that they created a generic Windows 10 image to push out to sales prep to image the machines.
This created a couple problems, sales prep isn’t “tech savvy” so I need this to work as seamlessly as possible. So having them find drivers and install software isn’t the best solution. So what they are doing now is pxe booting into FOG and selecting Deploy Image, after that they go into audit mode from the OOBE screen and then activate Windows on the client machine (this is where they would install drivers or software if needed also). Then they shut it back down to boot to OOBE. My golden image has no activation set, sorry for the confusion.
So having FOG power off the machine doesn’t actually help here, but I understand the value. I’m sure this isn’t the most efficient way, and I’m not a deployment expert by any means, so if there’s a better way I’d love to hear it. I know FOG has the ability to add the activation key in, could that be a pop up before the image starts and then it could be set to power off the target? Would that require registration, or at least a quick registration?
Hey everybody, been lurking in the forum for quite awhile now and I’m finally ready to ask for some help. I’m setting up FOG to image machines with Windows 10. I’ve been all over the forums and will use @george1421’s guide, but I have a couple other questions that I’m not clear on before I set this up.
I work for an ITAD company so we refurbish a lot of different computers. I created an image in a VM and have that ready to deploy in FOG already. The tech would image the machine, put it in audit mode, activate Windows, then shut it down to boot to OOBE for the customer. Right now they’re doing that and also having to install a bunch of drivers as well, we deal with a lot of different models.
My first question with this setup is do I need an unattended file? I think I do but I am not positive, and if I do do I then need the fog.updateunattend? I’m just getting going on this so it’s baby noob steps for now. I think I have drivers figured out for now. I am going to image a couple of Dells first, I think I understand to get the cab file, extract it in Windows to get the folder structure, than zip it and copy it to FOG server. I’ll deal with the hard to find drivers later.
I’m sure I’ll have more questions, I’m at the point where I’ve read too much on the forums and it all blends together.