r3 - 09 Mar 2006 - 19:40:47 - RichardBosYou are here: TWiki >  Ltsp Web  >  WirelessLtsp > WirelessLTSPClientsUsingAnEthernetBridge
-- SimonLangley - 17 Sep 2005

Wireless LTSP clients

Using a wireless ethernet bridge

Introduction

If you already operate a wireless LAN, using laptops as wireless LTSP clients is an attractive option. However, booting over the network is not as straighforward with a wireless NIC as with a wired one as few if any wireless NICs can boot off the network. If you want to boot from the network (as opposed to floppy/CD/USB disk/CF disk etc) using a PCMCIA wireless card is not an option because these will only work once the kernel has been loaded and without the wireless card, the machine won't be able to load the kernel.

The approach I successfully adopted was to connect a physically small wireless ethernet bridge to my laptop's built-in ethernet card (which does support network booting using PXE) and to fool the laptop into thinking it was on a wired LAN.

I use one of these http://www.asus.com/products.aspx?l1=12&l2=41&l3=0&model=59&modelmenu=1 which works fine and can be powered from a USB port. I have also tried a normal access point which was not as small but worked just the same once it was set to operate in client mode (rather than access point mode).

Configuration

The pre-requisites for this approach are:

  • an ethernet card that supports booting over a network (required for all LTSP clients)

  • a wireless bridge or access point that can operate as a bridge (a router won't work) to connect to the client's ethernet port

  • a wireless bridge or access point that can operate as a bridge (a router won't work here either) to connect to the main switch or hub on your network which must be on the same subnet as your LTSP server. If you already operate a wireless network, you probably have one of these already.

Most wireless APs would be suitable to connect to the client, but the cheapest suitable devices are often marketed as "wireless ethernet bridges" and are usually advertised for connecting devices such as games consoles to a wireless network.

Most people considering this option will already have the AP connected to their wired LAN in place.

The reason you cannot use routers for either of these APs is that routers do not forward broadcast traffic (which is what DHCP requests are) to another LAN segment. The LTSP server will therefore never see DHCP requests and so the client will not boot.

First of all, you will save difficulties later on if you check that the client machine will boot as an LTSP client on a wired network. If this doesn't work nothing else will, so get this set up first.

Secondly you need to set up your wireless AP. For all the wireless APs I have used this is done using a web interface from a machine directly connected to the AP. Ensure that you have correctly configured WEP/WPA/WPA2 as appropriate and that the AP is configured to operate in client mode (this may be called "ethernet adapter mode" depending on the particular device).

If your LTSP is configured to recognise the MAC of each client's NIC, you should also configure your AP to clone the MAC of the NIC to which it is connected. If you don't do this you will need to add another entry to your dhcpd.conf file on the LTSP server with the MAC of your AP (my AP can clone the MAC so I haven't tested this but it should work).

If the client machine has an operating system installed that works on the wired network, you should test the configuration of your AP. If you plug the AP into your client machine, and then boot up, it should see the network (whether your wired ethernet port has a static or dynamic IP address). You should not need to make any configuration changes at all to the existing OS setup and this should work regardless of the OS you are using.

Testing

Once you have these two elements working, you are ready to test LTSP.

Turn the AP connected to the client machine on and wait for a minute or so (to allow the AP to associate with the AP connected to your wired network). Now turn on the client machine and if you have correctly configured everything else, your machine should boot up almost exactly as if it were connected to the wired network. The only visible difference should be the lower speed of a wireless network compared to a wired network.

My setup works very well except for displaying video. Videos will play but the speed is unacceptably low. The problem appears to be related to the latency on a wireless network (which on my setup is a factor of ten higher than my wired network) rather than the bandwidth, but I am trying to find out if there is a solution. If I find one, I shall update this page.

Have fun.

Related product links

http://macsense.com/product/broadband/wua800.html - Macsense http://www.dlink.com/products/?pid=346 http://www.argontechnology.com/product.aspx/cid1/22 - PXE ON DISK http://www.argontechnology.com/product.aspx/cid1/103 - PXE NETWORK ADAPTERS http://www.argontechnology.com/products.aspx?id=103&pid=304 - 10/100 Cardbus Fast Ethernet Notebook Card with PXE

Alternate approach: Linux-based etherboot

This setup requires no additional hardware, at the cost of some scripting. Kernel image with initrd containing wifi drivers, wpa_supplicant, wireless-tools and configuration files (essid, PSK etc) is booted locally (from HD, flash, whatever). After the wireless setup has been completed, DHCP is requested on iver wireless, real kernel and initrd is downloaded, loaded and kexec'ed. Yes, the new system (LTSP, for example, though we used thinstation) has to do the same network setup again. But in this way, only if network config changes, one has to change the local boot image, too. Real systems can be upgraded without maintenance on the thinclient.

It works very well, though we do not yet use it in production environment. http://www.arcig.cz/~eudoxos/eb-linux/ has some details.

(BTW: Is WPA going to be supported officially in LTSP?)

-- EudoxOs - 26 Nov 2005

Some background information on wireless pxe booting

The only real problem with a pxe wireless is that none of the card makers have considered this a desired option. Nothing real fancy is need other than a way to set the acces point for initial connection. you can lock down the pxe to only specific MACs if you need to limit who could pull the inital image. Any encryption can start once the main kernel is booted and takes over. The LinuxBios? project could likely support something like this by configuring the wifi card in the boot rom.

Actually, it's more subtle than that. For example, there is support in Etherboot (which has PXE support) for prism-based PCI cards to boot wirelessly. I have demonstrated it at LinuxWorld? in the past, and it's slow but it works. We also don't have easy ways to specify SSIDs and various other parameters that would be desirable, but it is possible, using specific PCI cards to boot wirelessly.

The problem is that most wireless cards are really PCMCIA cards, and whether you have a laptop or desktop, there is an extra interface called a PCI to PCMCIA bridge that must be initialized before the computer can talk to the wireless card.

The PXE driver in general has no idea which PCI to PCMCIA bridge is in the computer it happens to be in. Have you ever noticed how late in booting Linux that PCMCIA support is enabled? In order for wireless booting, the BIOS must get involved and cooperate with the PCMCIA card. It must initialize the PCMCIA to PCI bridge, and the driver has to know where to probe. The PXE loader could do this, but it's not trivial to do, since you'd have to put PCMCIA support in the driver and probe.

Edit | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r3 < r2 < r1 | More topic actions
 
Powered by TWiki
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback