This is an old revision of the document!


A PCRE internal error occured. This might be caused by a faulty plugin

====== Wireless booting ====== Thanks to some work done during [[:soc:2009:oremanj:start|Summer of Code 2009]], gPXE supports the 802.11 protocol for accessing Wi-Fi wireless networks. //**Note:** the contents of this page rely on some features that are not yet present in mainline gPXE, but hopefully they should be there soon.// ===== Supported hardware ===== Because the wireless support is fairly new, gPXE does not support as many wireless cards as it does wired networking cards. If you have one of the following types of cards, you can boot over wireless: * Realtek 8180/8185 (supported in Linux by the ''rtl8180'' driver; the 8180 is 802.11b-only, the 8185 is 802.11b/g) * All Atheros cards that do not support 802.11n (supported in Linux by the ''ath5k'' driver) Those interested in expanding this list can read about [[:wirelessboot:drivers|802.11 driver writing]]. ===== Testing a wireless boot ===== Set up your DHCP server as you would for a wired boot, and figure out how you're going to be loading gPXE; for a first test, burning ''gpxe.iso'' to a CD is probably the easiest option. Boot into gPXE, and press Ctrl-B to get a shell prompt. Type gPXE> iwstat and you should be given output similar to ''ifstat'' about all detected wireless NICs. For example, on my test machine with two wireless and two wired NICs, I get the output net1: 00:08:54:94:fe:cc on PCI00:09.0 (closed) [Link:down, TX:0 TXE:0 RX:0 RXE:0] [Link status: Unknown (0x1a086001)] [802.11 not associated, antenna off] net2: 00:22:b0:6e:bb:30 on PCI00:0a.0 (closed) [Link:down, TX:0 TXE:0 RX:0 RXE:0] [Link status: Unknown (0x1a086001)] [802.11 not associated, antenna off] Note that net0 and net3 are not shown because they are not wireless NICs. (Unlike Linux, gPXE numbers wired and wireless NICs together as ''net//X//''.) If you see no output from ''iwstat'', gPXE did not detect any wireless NICs that it supports; the output of ''lspci -nn'' and ''lsmod | grep mac80211'' under Linux would make a good contribution to the mailing list if you want to figure out why :-) If you did find one or more wireless NICs, you can check which networks each can access: gPXE> iwlist Networks on net1: [Sig] SSID BSSID Ch Crypt/Auth ------------------------------------------------------------- [ 21] gPXE 00:0f:66:f4:48:4a 1 WPA2 PSK [ 19] oreman 00:12:17:e4:45:c9 6 WPA PSK [ 17] The Ryans 00:13:10:f6:de:23 6 WPA PSK [ 19] meh_wireless 00:23:69:5b:80:d3 8 Open Networks on net2: [Sig] SSID BSSID Ch Crypt/Auth ------------------------------------------------------------- [ 34] gPXE 00:0f:66:f4:48:4a 1 WPA2 PSK [ 6] The Ryans 00:13:10:f6:de:23 6 WPA PSK [ 3] NETGEAR 00:18:4d:54:6f:c0 11 Open The output will take a few seconds to show up for each NIC; hopefully the network you want to connect to is in the list! (In my case, the two cards "see" different networks because their antennas are positioned differently.) The number under ''[Sig]'' is a dimensionless measure of signal strength. If you've found your network, or even if you haven't, you can try connecting to it, adjusting details as appropriate for your situation: gPXE> set net0/ssid gPXE [your network name] gPXE> set net0/key seeecret [for WPA-PSK or a WEP key in ASCII] gPXE> set net0/key:hex aa:bb:cc:dd:ee [for a WEP key in hex] gPXE> dhcp net0 Waiting for link-up on net0... ok DHCP (net0 00:08:54:94:fe:cc).... ok On WPA, output like Waiting for link-up on net0... failed: Connection reset (0x0f1f6239) Could not configure net0: Connection reset (0x0f1f6239) suggests that you've specified an incorrect password. On WEP, output like Waiting for link-up on net0... ok DHCP (net0 00:08:54:94:fe:cc)................ Connection timed out (0x4c106035) Could not configure net0: Connection timed out (0x4c106035) suggests the same, especially if ''iwstat net0'' shows a line like [RXE: 4 x "Packet decryption error (0x1c1f6602)"] For any other error, consult us on the Etherboot-discuss mailing list or the ''#etherboot'' IRC channel; especially remember to specify the eight-digit error code(s) beginning with ''0x''. ===== Providing initial settings ===== Unlike DHCP on a wired network, connecting to wireless requires that some settings be provided before any network services can be accessed at all. Specifically, you need to specify the SSID and encryption key (as above) before you can run DHCP. These are set per network device, and have the gPXE setting names ''net//X///ssid'' and ''net//X///key'' respectively, where ''//X//'' is the number of your network device. Currently no wireless NIC has support for gPXE's NVRAM settings support, but if you have a wired NIC with such support you may be able to use the ''config'' command at the gPXE prompt to set the settings permanently. Otherwise, you'll need to create a small gPXE script and embed it. For example, put this in a file named ''wireless_settings.gpxe'': #!gpxe set net0/ssid mynetwork set net0/key seeecret autoboot Compile gPXE with ''EMBEDDED_IMAGE=wireless_settings.gpxe'' on your ''make'' command line, and boot it; it should boot off the wireless network automatically. Congratulations on successfully booting gPXE over wireless! ===== Burning wireless gPXE into a ROM ===== Unfortunately, to the best of our knowledge there is no wireless NIC with an onboard EEPROM or a socket for a ROM. As such, if you want truly diskless booting, you'll need to use a wired NIC as a ROM carrier. Since wireless ROM images tend to get rather large, an Intel e1000 NIC is ideal; it's easy to flash and has a 128kB EEPROM built-in. Compile your ROM like % make bin/ath5k.rom EMBEDDED_IMAGE=wireless_settings.gpxe % ./util/modrom.pl -p 0x8086,0x107c bin/ath5k.rom [replace with PCI IDs of your ROM-carrier NIC] and burn ''bin/ath5k.rom'' onto your ROM-carrier NIC.


Navigation

* [[:start|Home]] * [[:about|About our Project]] * [[:download|Download]] * [[:screenshots|Screenshots]] * Documentation * [[:howtos|HowTo Guides]] * [[:appnotes|Application Notes]] * [[:faq:|FAQs]] * [[:doc|General Doc]] * [[:talks|Videos, Talks, and Papers]] * [[:hardwareissues|Hardware Issues]] * [[:mailinglists|Mailing lists]] * [[http://support.etherboot.org/|Bugtracker]] * [[:contributing|Contributing]] * [[:editing_permission|Wiki Edit Permission]] * [[:wiki:syntax|Wiki Syntax]] * [[:contact|Contact]] * [[:relatedlinks|Related Links]] * [[:commerciallinks|Commercial Links]] * [[:acknowledgements|Acknowledgements]] * [[:logos|Logo Art]]

QR Code
QR Code wirelessboot (generated for current page)