Re: [Etherboot-developers] Wake-on-LAN patch
Brought to you by:
marty_connor,
stefanhajnoczi
|
From: Jim M. <ja...@Mc...> - 2001-02-20 04:02:19
|
Ken, I'll take you up on that challenge. I've got a 4mb ide flash disk where I've loaded freedos and a configuration program that I've written. This config program allows a user to enter a whole slew of IP information, including IP address, etherboot driver name, boot server, kernel args and anything else that you can return in a bootp or dhcp reply. And, it also allows you to just say 'Use DHCP' and not enter all of that info. This information is then placed in memory, preceded by a magic number and a checksum. Then, the etherboot .com file is executed which will scan through memory, looking for the magic number. If it finds the magic, it then calculates it's own idea of the checksum and compares it with what was found. Assuming it finds valid configuration info, it then constructs a dhcp reply in memory and skips the call to send a dhcp request. At this point, it doesn't need to send a dhcp request, it already has all of the info it needs. I've got it working pretty well, although there are still some rough edges I'd like to clean up. We call this little device the 'netAble' and we'll be selling it at DisklessWorkstations.Com. The software is of coarse free. This provides several things: 1) It plugs into the IDE header on the motherboard, and looks just like a hard drive to the system. 2) For those sites that simply cannot setup a DHCP server, they can enter static info. 3) For network cards that don't have a bootrom socket, you can use this. 4) For motherboards with embedded NIC's and you don't want to, or can't flash the bios. 5) You can still use dhcp/bootp. All you need to enter in the config screen is which etherboot driver to run. 6) Support for all of the etherboot supported chipsets. 7) Once Linux is running on the workstation, you can mount the flash disk as an ide hard drive and update it. Or, you can dd a new image to it. 8) Instead of a flash disk, the code can be put on a floppy or hard drive if desired. Some workstations already include a flash disk, which will also work. (Iopener,ThinkNic) The patch to etherboot is a change only to main.c, to make it search through ram, looking for the magic number and construct the dhcp reply, rather than send a query. I'll send you the patch as soon as I get a chance to clean it up a little more. I'd like for it to be included in etherboot as a compile time option, but obviously, that is up to you. The config program is written in C, using curses. It's entirely free software, and I'll either make it available on the ltsp site or create a separate project on sourceforge for the config software. One last issue I need to deal with is allowing a sysadmin to password protect the config screen. Also, based on the converstations today, I'd like to add the ability to deal with wake-on-lan servers. So, that's my response to your challenge. Jim McQuillan ja...@lt... Ken Yap wrote: > > Let me suggest a challenge to those developers who want to inject > various pieces of information into Etherboot prior to the DHCP/BOOTP > query (server MAC address, TFTP server address, whatever). Come up with > a more elegant solution of where to store such information other than in > the ROM code itself. Maybe there are hooks in modern BIOSes to store and > recall user-defined information from the CMOS, I don't know. Dedicated > X-terminals (e.g. NCD, Labtam) had this advantage that there was storage > for such info and could also rewrite this info from the BOOTP reply if > the config said to do so. > > _______________________________________________ > Etherboot-developers mailing list > Eth...@li... > http://lists.sourceforge.net/lists/listinfo/etherboot-developers |