From owner-p4-projects@FreeBSD.ORG Sat Nov 24 22:32:39 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ADAA616A468; Sat, 24 Nov 2007 22:32:38 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5F0CB16A420 for ; Sat, 24 Nov 2007 22:32:38 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4271A13C442 for ; Sat, 24 Nov 2007 22:32:38 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lAOMWcX4084577 for ; Sat, 24 Nov 2007 22:32:38 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lAOMWb71084574 for perforce@freebsd.org; Sat, 24 Nov 2007 22:32:37 GMT (envelope-from jb@freebsd.org) Date: Sat, 24 Nov 2007 22:32:37 GMT Message-Id: <200711242232.lAOMWb71084574@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 129471 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 24 Nov 2007 22:32:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=129471 Change 129471 by jb@jb_freebsd1 on 2007/11/24 22:31:49 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#11 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/advanced-networking/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/basics/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/config/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/firewalls/chapter.sgml#5 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/introduction/chapter.sgml#7 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/mail/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/printing/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/users/chapter.sgml#3 integrate .. //depot/projects/dtrace/doc/zh_TW.Big5/books/porters-handbook/book.sgml#10 integrate .. //depot/projects/dtrace/src/contrib/binutils/opcodes/ppc-dis.c#4 integrate .. //depot/projects/dtrace/src/etc/periodic/security/100.chksetuid#4 integrate .. //depot/projects/dtrace/src/lib/libc/sparc64/fpu/fpu_explode.c#5 integrate .. //depot/projects/dtrace/src/lib/libdisk/libdisk.3#5 integrate .. //depot/projects/dtrace/src/lib/libelf/elf.3#9 integrate .. //depot/projects/dtrace/src/lib/libelf/libelf_data.c#8 integrate .. //depot/projects/dtrace/src/lib/libpmc/Makefile#4 integrate .. //depot/projects/dtrace/src/lib/libpmc/pmc_allocate.3#1 branch .. //depot/projects/dtrace/src/lib/libpmc/pmc_disable.3#1 branch .. //depot/projects/dtrace/src/lib/libpmc/pmc_event_names_of_class.3#1 branch .. //depot/projects/dtrace/src/lib/libpmc/pmc_name_of_capability.3#1 branch .. //depot/projects/dtrace/src/lib/libthr/thread/thr_sem.c#7 integrate .. //depot/projects/dtrace/src/libexec/tftpd/Makefile#4 integrate .. //depot/projects/dtrace/src/libexec/tftpd/tftpd.8#7 integrate .. //depot/projects/dtrace/src/libexec/tftpd/tftpd.c#4 integrate .. //depot/projects/dtrace/src/sbin/geom/class/nop/gnop.8#5 integrate .. //depot/projects/dtrace/src/share/man/man4/hwpmc.4#8 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/genassym.c#8 integrate .. //depot/projects/dtrace/src/sys/dev/aac/aac_debug.c#4 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-chipset.c#20 integrate .. //depot/projects/dtrace/src/sys/dev/ata/ata-disk.c#8 integrate .. //depot/projects/dtrace/src/sys/dev/usb/if_zyd.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/usb/usbdevs#20 integrate .. //depot/projects/dtrace/src/sys/i386/i386/genassym.c#10 integrate .. //depot/projects/dtrace/src/sys/kern/kern_lock.c#11 integrate .. //depot/projects/dtrace/src/sys/kern/subr_witness.c#12 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211.c#9 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211.h#9 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_ht.c#4 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_node.c#8 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_output.c#11 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_proto.c#8 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_scan_sta.c#4 integrate .. //depot/projects/dtrace/src/sys/net80211/ieee80211_var.h#9 integrate .. //depot/projects/dtrace/src/sys/netinet/libalias/alias_util.c#6 integrate .. //depot/projects/dtrace/src/sys/netinet/tcp_subr.c#17 integrate .. //depot/projects/dtrace/src/sys/sys/lockmgr.h#8 integrate .. //depot/projects/dtrace/src/sys/vm/vm_pageout.c#8 integrate .. //depot/projects/dtrace/www/share/sgml/events.xml#13 integrate .. //depot/projects/dtrace/www/share/sgml/navibar.ent#6 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#11 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -1739,6 +1739,305 @@ ready to exchange informations. + + &os; Host Access Points + + &os; can act as an Access Point (AP) which eliminates the + need to buy a hardware AP or run an ad-hoc network. This can be + particularly useful when your &os; machine is acting as a + gateway to another network (e.g., the Internet). + + + Basic Settings + + Before configuring your &os; machine as an AP, the + kernel must be configured with the appropriate wireless + networking support for your wireless card. You also have to + add the support for the security protocols you intend to + use. For more details, see . + + + The use of the NDIS driver wrapper and the &windows; + drivers do not allow currently the AP operation. Only + native &os; wireless drivers support AP mode. + + + Once the wireless networking support is loaded, you can + check if your wireless device supports the host-based access + point mode (also know as hostap mode): + + &prompt.root; ifconfig ath0 list caps +ath0=783ed0f<WEP,TKIP,AES,AES_CCM,IBSS,HOSTAP,AHDEMO,TXPMGT,SHSLOT,SHPREAMBLE,MONITOR,TKIPMIC,WPA1,WPA2,BURST,WME> + + This output displays the card capabilities; the + HOSTAP word confirms this wireless card + can act as an Access Point. Various supported ciphers are + also mentioned: WEP, TKIP, WPA2, etc., these informations + are important to know what security protocols could be set + on the Access Point. + + The wireless device can now be put into hostap mode and + configured with the correct SSID and IP address: + + &prompt.root; ifconfig ath0 ssid freebsdap mode 11g mediaopt hostap inet 192.168.0.1 netmask 255.255.255.0 + + Use again ifconfig to see the status + of the ath0 interface: + + &prompt.root; ifconfig ath0 + ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 + inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 + inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4 + ether 00:11:95:c3:0d:ac + media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap> + status: associated + ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac + authmode OPEN privacy OFF txpowmax 38 bmiss 7 protmode CTS burst dtimperiod 1 bintval 100 + + The hostap parameter indicates the + interface is running in the host-based access point + mode. + + The interface configuration can be done automatically at + boot time by adding the following line to + /etc/rc.conf: + + ifconfig_ath0="ssid freebsdap mode 11g mediaopt hostap inet 192.168.0.1 netmask 255.255.255.0" + + + + Host-based Access Point without Authentication or + Encryption + + Although it is not recommended to run an AP without any + authentication or encryption, this is a simple way to check + if your AP is working. This configuration is also important + for debugging client issues. + + Once the AP configured as previously shown, it is + possible from another wireless machine to initiate a scan to + find the AP: + + &prompt.root; ifconfig ath0 up scan +SSID BSSID CHAN RATE S:N INT CAPS +freebsdap 00:11:95:c3:0d:ac 1 54M 22:1 100 ES + + The client machine found the Access Point and can be + associated with it: + + &prompt.root; ifconfig ath0 ssid freebsdap inet 192.168.0.2 netmask 255.255.255.0 +&prompt.root; ifconfig ath0 + ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 + inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1 + inet 192.168.0.2 netmask 0xffffff00 broadcast 192.168.0.255 + ether 00:11:95:d5:43:62 + media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/54Mbps) + status: associated + ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac + authmode OPEN privacy OFF txpowmax 36 protmode CTS bintval 100 + + + + WPA Host-based Access Point + + This section will focus on setting up &os; Access Point + using the WPA security protocol. More details regarding WPA + and the configuration of WPA-based wireless clients can be + found in the . + + The hostapd daemon is used to + deal with client authentication and keys management on the + WPA enabled Access Point. + + In the following, all the configuration operations will + be performed on the &os; machine acting as AP. Once the + AP is correctly working, hostapd + should be automatically enabled at boot with the following + line in /etc/rc.conf: + + hostapd_enable="YES" + + Before trying to configure + hostapd, be sure you have done + the basic settings introduced in the . + + + WPA-PSK + + WPA-PSK is intended for small networks where the use + of an backend authentication server is not possible or + desired. + + The configuration is done in the + /etc/hostapd.conf file: + + interface=ath0 +debug=1 +ctrl_interface=/var/run/hostapd +ctrl_interface_group=wheel +ssid=freebsdap +wpa=1 +wpa_passphrase=freebsdmall +wpa_key_mgmt=WPA-PSK +wpa_pairwise=CCMP TKIP + + + + This field indicates the wireless interface used + for the Access Point. + + + + This field sets the level of verbosity during the + execution of hostapd. A + value of 1 represents the minimal + level. + + + + The ctrl_interface field gives + the pathname of the directory used by + hostapd to stores its + domain socket files for the communication with + external programs such as &man.hostapd.cli.8;. The + default value is used here. + + + + The ctrl_interface_group line + sets the group (here, it is the + wheel group) allowed to access + to the control interface files. + + + + This field sets the network name. + + + + The wpa field enables WPA and + specifies which WPA authentication protocol will be + required. A value of 1 configures the + AP for WPA-PSK. + + + + The wpa_passphrase field + contains the ASCII passphrase for the WPA + authentication. + + + Always use strong passwords that are + sufficiently long and made from a rich alphabet so + they will not be guessed and/or attacked. + + + + + The wpa_key_mgmt line refers to + the key management protocol we use. In our case it is + WPA-PSK. + + + + The wpa_pairwise field + indicates the set of accepted encryption algorithms by + the Access Point. Here both TKIP (WPA) and CCMP + (WPA2) ciphers are accepted. CCMP cipher is an + alternative to TKIP and that is strongly preferred + when possible; TKIP should be used solely for stations + incapable of doing CCMP. + + + + The next step is to start + hostapd: + + &prompt.root /etc/rc.d/hostapd forcestart + + &prompt.root; ifconfig ath0 + ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 2290 + inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 + inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4 + ether 00:11:95:c3:0d:ac + media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap> + status: associated + ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac + authmode WPA2/802.11i privacy MIXED deftxkey 2 TKIP 2:128-bit txpowmax 36 protmode CTS dtimperiod 1 bintval 100 + + The Access Point is running, the clients can now be + associated with it, see for more details. It is + possible to see the stations associated with the AP using + the ifconfig ath0 list + sta command. + + + + + WEP Host-based Access Point + + It is not recommended to use WEP for setting up an + Access Point since there is no authentication mechanism and + it is easily to be cracked. Some legacy wireless cards only + support WEP as security protocol, these cards will only + allow to set up AP without authentication or encryption or + using the WEP protocol. + + The wireless device can now be put into hostap mode and + configured with the correct SSID and IP address: + + &prompt.root; ifconfig ath0 ssid freebsdap wepmode on weptxkey 3 wepkey 3:0x3456789012 mode 11g mediaopt hostap \ + inet 192.168.0.1 netmask 255.255.255.0 + + + + The weptxkey means which WEP + key will be used in the transmission. Here we used the + third key (note that the key numbering starts with + 1). This parameter must be specified + to really encrypt the data. + + + + The wepkey means setting the + selected WEP key. It should in the format + index:key, if the index is + not given, key 1 is set. That is + to say we need to set the index if we use keys other + than the first key. + + + + Use again ifconfig to see the status + of the ath0 interface: + + &prompt.root; ifconfig ath0 + ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 + inet 192.168.0.1 netmask 0xffffff00 broadcast 192.168.0.255 + inet6 fe80::211:95ff:fec3:dac%ath0 prefixlen 64 scopeid 0x4 + ether 00:11:95:c3:0d:ac + media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap> + status: associated + ssid freebsdap channel 1 bssid 00:11:95:c3:0d:ac + authmode OPEN privacy ON deftxkey 3 wepkey 3:40-bit txpowmax 36 protmode CTS dtimperiod 1 bintval 100 + + From another wireless machine, it is possible to initiate + a scan to find the AP: + + &prompt.root; ifconfig ath0 up scan +SSID BSSID CHAN RATE S:N INT CAPS +freebsdap 00:11:95:c3:0d:ac 1 54M 22:1 100 EPS + + The client machine found the Access Point and can be + associated with it using the correct parameters (key, etc.), + see for more + details. + + + Troubleshooting ==== //depot/projects/dtrace/doc/zh_TW.Big5/books/handbook/advanced-networking/chapter.sgml#3 (text+ko) ==== @@ -1,74 +1,78 @@ - Advanced Networking + 網路進階練功房 - Synopsis + 概述 - This chapter will cover a number of advanced networking - topics. + 本章將介紹一些進階的網路設定主題。 - After reading this chapter, you will know: + 讀完這章,您將了解: - The basics of gateways and routes. + gateway(閘道)及 route(路由)的概念。 + + + + 如何設定 IEEE 802.11 以及藍芽(&bluetooth;)設備。 - How to set up IEEE 802.11 and &bluetooth; devices. + 如何以 FreeBSD 作為 bridge(橋接)。 - How to make FreeBSD act as a bridge. + 如何為無碟系統設定網路開機。 - How to set up network booting on a diskless machine. + 如何設定 NAT(Network Address Translation)。 - How to set up network address translation. + 如何透過 PLIP 方式來連接兩台電腦。 - How to connect two computers via PLIP. + 如何在 FreeBSD 內設定 IPv6。 - How to set up IPv6 on a FreeBSD machine. + 如何設定 ATM。 - How to configure ATM. + 如何去善用 &os; 的 CARP(Common Access Redundancy Protocol)功能 + 。 - Before reading this chapter, you should: + 在開始閱讀這章之前,您需要︰ - Understand the basics of the /etc/rc scripts. + 瞭解 /etc/rc 相關 script 的概念。 - Be familiar with basic network terminology. + 熟悉基本常用的網路術語。 - Know how to configure and install a new FreeBSD kernel - (). + 知道如何設定、安裝新的 FreeBSD kernel ()。 - Know how to install additional third-party - software (). + 知道如何透過 port/package 安裝軟體 () + 。 @@ -89,28 +93,25 @@ routing gateway subnet - For one machine to be able to find another over a network, - there must be a mechanism in place to describe how to get from - one to the other. This is called - routing. A route is a - defined pair of addresses: a destination and a - gateway. The pair indicates that if you are - trying to get to this destination, - communicate through this gateway. There - are three types of destinations: individual hosts, subnets, and - default. The default route is - used if none of the other routes apply. We will talk a little - bit more about default routes later on. There are also three - types of gateways: individual hosts, interfaces (also called - links), and Ethernet hardware addresses (MAC - addresses). - + 為了讓一部電腦能找到另一部電腦,因此必需要有一種機制, + 讓這部電腦知道該怎麼做,這個機制就是路由選擇 + (routing)。 + 一條路由(route)是由一對位址所定義的:一個是 + 目的地(destination)以及另一個則是閘道 + (gateway)。 + 這對位址表示要送到目的地的封包, + 必須經過閘道。 + 目的地分為三種類型:主機、子網路(subnet)、預設路由( + default route。 若都沒有其它的路由可以使用, + 這時就會使用預設路由,稍後我們會對預設路由作進一步的說明。 此外, + 閘道也可分為三種類型:主機、傳輸介面(interface,也稱為 + links)、乙太網路硬體位址(MAC addresses)。 - An Example + 範例 - To illustrate different aspects of routing, we will use the - following example from netstat: + 為了方便說明不同類型的路由選擇(routing),以下使用 + netstat 指令的結果作為介紹範例: &prompt.user; netstat -r Routing tables @@ -659,554 +660,1447 @@ - - Eric - Anderson - Written by - + + Loader + + + + Marc + Fonvieille + + + + Murray + Stokely + Wireless Networking - wireless networking - - 802.11 - wireless networking - + wireless networking + + 802.11 + wireless networking + + + + Wireless Networking Basics + + Most wireless networks are based on the IEEE 802.11 + standards. A basic wireless network consists of multiple + stations communicating with radios that broadcast in either + the 2.4GHz or 5GHz band (though this varies according to the + locale and is also changing to enable communication in the + 2.3GHz and 4.9GHz ranges). + + 802.11 networks are organized in two ways: in + infrastructure mode one station acts as a + master with all the other stations associating to it; the + network is known as a BSS and the master station is termed an + access point (AP). In a BSS all communication passes through + the AP; even when one station wants to communicate with + another wireless station messages must go through the AP. In + the second form of network there is no master and stations + communicate directly. This form of network is termed an IBSS + and is commonly known as an ad-hoc + network. + + 802.11 networks were first deployed in the 2.4GHz band + using protocols defined by the IEEE 802.11 and 802.11b + standard. These specifications include the operating + frequencies, MAC layer characteristics including framing and + transmission rates (communication can be done at various + rates). Later the 802.11a standard defined operation in the + 5GHz band, including different signalling mechanisms and + higher transmission rates. Still later the 802.11g standard + was defined to enable use of 802.11a signalling and + transmission mechanisms in the 2.4GHz band in such a way as to + be backwards compatible with 802.11b networks. + + Separate from the underlying transmission techniques + 802.11 networks have a variety of security mechanisms. The + original 802.11 specifications defined a simple security + protocol called WEP. This protocol uses a fixed pre-shared key + and the RC4 cryptographic cipher to encode data transmitted on + a network. Stations must all agree on the fixed key in order + to communicate. This scheme was shown to be easily broken and + is now rarely used except to discourage transient users from + joining networks. Current security practice is given by the + IEEE 802.11i specification that defines new cryptographic + ciphers and an additional protocol to authenticate stations to + an access point and exchange keys for doing data + communication. Further, cryptographic keys are periodically + refreshed and there are mechanisms for detecting intrusion + attempts (and for countering intrusion attempts). Another + security protocol specification commonly used in wireless + networks is termed WPA. This was a precursor to 802.11i + defined by an industry group as an interim measure while + waiting for 802.11i to be ratified. WPA specifies a subset of + the requirements found in 802.11i and is designed for + implementation on legacy hardware. Specifically WPA requires + only the TKIP cipher that is derived from the original WEP + cipher. 802.11i permits use of TKIP but also requires support + for a stronger cipher, AES-CCM, for encrypting data. (The AES + cipher was not required in WPA because it was deemed too + computationally costly to be implemented on legacy + hardware.) + + Other than the above protocol standards the other + important standard to be aware of is 802.11e. This defines + protocols for deploying multi-media applications such as + streaming video and voice over IP (VoIP) in an 802.11 network. + Like 802.11i, 802.11e also has a precursor specification + termed WME (later renamed WMM) that has been defined by an + industry group as a subset of 802.11e that can be deployed now + to enable multi-media applications while waiting for the final + ratification of 802.11e. The most important thing to know + about 802.11e and WME/WMM is that it enables prioritized + traffic use of a wireless network through Quality of Service + (QoS) protocols and enhanced media access protocols. Proper + implementation of these protocols enable high speed bursting + of data and prioritized traffic flow. + + Since the 6.0 version, &os; supports networks that operate + using 802.11a, 802.11b, and 802.11g. The WPA and 802.11i + security protocols are likewise supported (in conjunction with + any of 11a, 11b, and 11g) and QoS and traffic prioritization + required by the WME/WMM protocols are supported for a limited + set of wireless devices. + + + + Basic Setup + + + Kernel Configuration + + To use wireless networking you need a wireless + networking card and to configure the kernel with the + appropriate wireless networking support. The latter is + separated into multiple modules so that you only need to + configure the software you are actually going to use. + + The first thing you need is a wireless device. The most + commonly used devices are those that use parts made by + Atheros. These devices are supported by the &man.ath.4; + driver and require the following line to be added to the + /boot/loader.conf file: + + if_ath_load="YES" + + The Atheros driver is split up into three separate + pieces: the driver proper (&man.ath.4;), the hardware + support layer that handles chip-specific functions + (&man.ath.hal.4;), and an algorithm for selecting which of + several possible rates for transmitting frames + (ath_rate_sample here). When you load this support as + modules these dependencies are automatically handled for + you. If instead of an Atheros device you had another device + you would select the module for that device; e.g.: + + if_wi_load="YES" + + for devices based on the Intersil Prism parts + (&man.wi.4; driver). + + + In the rest of this document, we will use an + &man.ath.4; device, the device name in the examples must + be changed according to your configuration. A list of + available wireless drivers can be found at the beginning + of the &man.wlan.4; manual page. If a native &os; driver + for your wireless device does not exist, it may be + possible to directly use the &windows; driver with the + help of the NDIS driver + wrapper. + + + With a device driver configured you need to also bring + in the 802.11 networking support required by the driver. + For the &man.ath.4; driver this is at least the &man.wlan.4; + module; this module is automatically loaded with the + wireless device driver. With that you will need the modules + that implement cryptographic support for the security + protocols you intend to use. These are intended to be + dynamically loaded on demand by the &man.wlan.4; module but + for now they must be manually configured. The following + modules are available: &man.wlan.wep.4;, &man.wlan.ccmp.4; + and &man.wlan.tkip.4;. Both &man.wlan.ccmp.4; and + &man.wlan.tkip.4; drivers are only needed if you intend to + use the WPA and/or 802.11i security protocols. If your + network is to run totally open (i.e., with no encryption) + then you do not even need the &man.wlan.wep.4; support. To + load these modules at boot time, add the following lines to + /boot/loader.conf: + + wlan_wep_load="YES" +wlan_ccmp_load="YES" +wlan_tkip_load="YES" + + With this information in the system bootstrap + configuration file (i.e., + /boot/loader.conf), you have to reboot + your &os; box. If you do not want to reboot your machine + for the moment, you can just load the modules by hand using + &man.kldload.8;. + + + If you do not want to use modules, it is possible to + compile these drivers into the kernel by adding the + following lines to your kernel configuration file: + + device ath # Atheros IEEE 802.11 wireless network driver +device ath_hal # Atheros Hardware Access Layer +device ath_rate_sample # John Bicket's SampleRate control algorithm. +device wlan # 802.11 support (Required) +device wlan_wep # WEP crypto support for 802.11 devices +device wlan_ccmp # AES-CCMP crypto support for 802.11 devices +device wlan_tkip # TKIP and Michael crypto support for 802.11 devices + + With this information in the kernel configuration + file, recompile the kernel and reboot your &os; + machine. + + + When the system is up, we could find some information + about the wireless device in the boot messages, like + this: + + ath0: <Atheros 5212> mem 0xff9f0000-0xff9fffff irq 17 at device 2.0 on pci2 +ath0: Ethernet address: 00:11:95:d5:43:62 +ath0: mac 7.9 phy 4.5 radio 5.6 + + + + + Infrastructure Mode + + The infrastructure mode or BSS mode is the mode that is + typically used. In this mode, a number of wireless access + points are connected to a wired network. Each wireless + network has its own name, this name is called the SSID of the + network. Wireless clients connect to the wireless access + points. + + + &os; Clients + + + How to Find Access Points + + To scan for networks, use the + ifconfig command. This request may + take a few moments to complete as it requires that the + system switches to each available wireless frequency and + probes for available access points. Only the super-user + can initiate such a scan: + + &prompt.root; ifconfig ath0 up scan +SSID BSSID CHAN RATE S:N INT CAPS +dlinkap 00:13:46:49:41:76 6 54M 29:0 100 EPS WPA WME +freebsdap 00:11:95:c3:0d:ac 1 54M 22:0 100 EPS WPA + + + You must mark the interface + before you can scan. Subsequent scan requests do not + require you to mark the interface up again. + + + The output of a scan request lists each BSS/IBSS + network found. Beside the name of the network, + SSID, we find the + BSSID which is the MAC address of the + access point. The CAPS field + identifies the type of each network and the capabilities + of the stations operating there: + + + + E + + + Extended Service Set (ESS). Indicates that the + station is part of an infrastructure network (in + contrast to an IBSS/ad-hoc network). + + + + + I + + + IBSS/ad-hoc network. Indicates that the station + is part of an ad-hoc network (in contrast to an ESS + network). + + + + + P + + + Privacy. Data confidentiality is required for + all data frames exchanged within the BSS. This means + that this BSS requires the station to use + cryptographic means such as WEP, TKIP or AES-CCMP to + encrypt/decrypt data frames being exchanged with + others. + + + + + S + + + Short Preamble. Indicates that the network is + using short preambles (defined in 802.11b High + Rate/DSSS PHY, short preamble utilizes a 56 bit sync + field in contrast to a 128 bit field used in long + preamble mode). + + + + + s + + + Short slot time. Indicates that the 802.11g + network is using a short slot time because there are + no legacy (802.11b) stations present. + + + + + One can also display the current list of known + networks with: + + &prompt.root; ifconfig ath0 list scan + + This information may be updated automatically by the + adapter or manually with a request. + Old data is automatically removed from the cache, so over + time this list may shrink unless more scans are + done. + + + + Basic Settings + + This section provides a simple example of how to make + the wireless network adapter work in &os; without + encryption. After you are familiar with these concepts, + we strongly recommend using WPA to set up your + wireless network. + + There are three basic steps to configure a wireless + network: selecting an access point, authenticating your + station, and configuring an IP address. The following + sections discuss each step. + + + Selecting an Access Point + + Most of time it is sufficient to let the system + choose an access point using the builtin heuristics. + This is the default behaviour when you mark an interface + up or otherwise configure an interface by listing it in + /etc/rc.conf, e.g.: + + ifconfig_ath0="DHCP" + + If there are multiple access points and you want to + select a specific one, you can select it by its + SSID: + + ifconfig_ath0="ssid your_ssid_here DHCP" + + In an environment where there are multiple access + points with the same SSID (often done to simplify + roaming) it may be necessary to associate to one + specific device. In this case you can also specify the + BSSID of the access point (you can also leave off the + SSID): + + ifconfig_ath0="ssid your_ssid_here bssid xx:xx:xx:xx:xx:xx DHCP" + + There are other ways to constrain the choice of an + access point such as limiting the set of frequencies the + system will scan on. This may be useful if you have a + multi-band wireless card as scanning all the possible + channels can be time-consuming. To limit operation to a + specific band you can use the + parameter; e.g.: + + ifconfig_ath0="mode 11g ssid your_ssid_here DHCP" + + will force the card to operate in 802.11g which is + defined only for 2.4GHz frequencies so any 5GHz channels + will not be considered. Other ways to do this are the + parameter, to lock operation to + one specific frequency, and the + parameter, to specify a list + of channels for scanning. More information about these + parameters can be found in the &man.ifconfig.8; manual + page. + + + + Authentication + + Once you have selected an access point your station + needs to authenticate before it can pass data. + Authentication can happen in several ways. The most + common scheme used is termed open authentication and + allows any station to join the network and communicate. + This is the authentication you should use for test + purpose the first time you set up a wireless network. + Other schemes require cryptographic handshakes be + completed before data traffic can flow; either using + pre-shared keys or secrets, or more complex schemes that + involve backend services such as RADIUS. Most users + will use open authentication which is the default + setting. Next most common setup is WPA-PSK, also known + as WPA Personal, which is described below. + + + If you have an &apple; &airport; Extreme base + station for an access point you may need to configure + shared-key authentication together with a WEP key. + This can be done in the + /etc/rc.conf file or using the + &man.wpa.supplicant.8; program. If you have a single + &airport; base station you can setup access with + something like: + + ifconfig_ath0="authmode shared wepmode on weptxkey 1 wepkey 01234567 DHCP" + + In general shared key authentication is to be + avoided because it uses the WEP key material in a + highly-constrained manner making it even easier to + crack the key. If WEP must be used (e.g., for + compatibility with legacy devices) it is better to use + WEP with open authentication. More + information regarding WEP can be found in the . + + + + + Getting an IP Address with DHCP + + Once you have selected an access point and set the + authentication parameters, you will have to get an IP + address to communicate. Most of time you will obtain + your wireless IP address via DHCP. To achieve that, + simply edit /etc/rc.conf and add + DHCP to the configuration for your + device as shown in various examples above: + + ifconfig_ath0="DHCP" + + At this point, you are ready to bring up the + wireless interface: + + &prompt.root; /etc/rc.d/netif start + + Once the interface is running, use + ifconfig to see the status of the + interface ath0: + + &prompt.root; ifconfig ath0 +ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 + inet6 fe80::211:95ff:fed5:4362%ath0 prefixlen 64 scopeid 0x1 + inet 192.168.1.100 netmask 0xffffff00 broadcast 192.168.1.255 + ether 00:11:95:d5:43:62 + media: IEEE 802.11 Wireless Ethernet autoselect (OFDM/54Mbps) + status: associated + ssid dlinkap channel 6 bssid 00:13:46:49:41:76 + authmode OPEN privacy OFF txpowmax 36 protmode CTS bintval 100 + + The status: associated means you >>> TRUNCATED FOR MAIL (1000 lines) <<<