如何使用无线网络
无线网络基础
绝大多数无线网络都采用了 IEEE 802.11 标准。 基本的无线网络中, 都包含多个以 2.4GHz 或 5GHz 频段的无线电波广播的站点 (不过, 随所处地域的不同, 或者为了能够更好地进行通讯,具体的频率会在 2.3GHz 和 4.9GHz 的范围内变化)。
802.11 网络有两种组织方式: 在 infrastructure 模式 中, 一个通讯站作为主站,其他通讯站都与其关联; 这种网络称为 BSS, 而主站则成为无线访问点 (AP)。 在 BSS 中,所有的通讯都是通过 AP 来完成的; 即使通讯站之间要相互通讯, 也必须将消息发给 AP。在第二种形式的网络中, 并不存在主站, 通讯站之间是直接通讯的。 这种网络形式称作 IBSS,通常也叫做 ad-hoc 网络。
802.11 网络最初在 2.4GHz 频段上部署, 并采用了由 IEEE 802.11 和 802.11b 标准所定义的协议。 这些标准定义了采用的操作频率、 包括分帧和传输速率 (通讯过程中可以使用不同的速率) 在内的 MAC 层特性等。 稍后的 802.11a 标准定义了使用 5GHz 频段进行操作, 以及不同的信号机制和更高的传输速率。 其后定义的 802.11g 标准启用了在 2.4GHz 上如何使用 802.11a 信号和传输机制, 以提供对较早的 802.11b 网络的向前兼容。
802.11 网络中采用的各类底层传输机制提供了不同类型的安全机制。 最初的 802.11 标准定义了一种称为 WEP 的简单安全协议。 这个协议采用固定的预发布密钥, 并使用 RC4 加密算法来对在网络上传输的数据进行编码。 全部通讯站都必须采用同样的固定密钥才能通讯。这一格局已经被证明很容易被攻破, 因此目前已经很少使用了,采用这种方法只能让那些接入网络的用户迅速断开。 最新的安全实践是由 IEEE 802.11i 标准给出的, 它定义了新的加密算法, 并通过一种附加的协议来让通讯站向无线访问点验证身份,并交换用于进行数据通讯的密钥。 更进一步, 用于加密的密钥会定期地刷新,而且有机制能够监测入侵的尝试 (并阻止这种尝试)。 无线网络中另一种常用的安全协议标准是 WPA。 这是在 802.11i 之前由业界组织定义的一种过渡性标准。 WPA 定义了在 802.11i 中所规定的要求的子集, 并被设计用来在旧式硬件上实施。 特别地, WPA 要求只使用由最初 WEP 所采用的算法派生的 TKIP 加密算法。 802.11i 则不但允许使用 TKIP,而且还要求支持更强的加密算法 AES-CCM 来用于加密数据。 (在 WPA 中并没有要求使用 AES 加密算法, 因为在旧式硬件上实施这种算法时所需的计算复杂性太高。)
除了前面介绍的那些协议标准之外, 还有一种需要介绍的标准是 802.11e。 它定义了用于在 802.11 网络上运行多媒体应用, 如视频流和使用 IP 传送的语音 (VoIP) 的协议。 与 802.11i 类似, 802.11e 也有一个前身标准, 通常称作 WME (后改名为 WMM), 它也是由业界组织定义的 802.11e 的子集, 以便能够在旧式硬件中使用多媒体应用。 关于 802.11e 与 WME/WMM 之间的另一项重要区别是, 前者允许对流量通过服务品质 (QoS) 协议和增强媒体访问协议来安排优先级。 对于这些协议的正确实现,能够实现高速突发数据和流量分级。
从 6.0 版本开始, FreeBSD 支持采用 802.11a, 802.11b 和 802.11g 的网络。 类似地,它也支持 WPA 和 802.11i 安全协议 (与 11a、 11b 和 11g 配合), 而 WME/WMM 所需要的 QoS 和流量分级, 则在部分无线设备上提供了支持。
29.3.2 基本安装
29.3.2.1 内核配置
要使用无线网络, 您需要一块无线网卡, 并适当地配置内核令其提供无线网络支持。后者被分成了多个模块, 因此您只需配置使用您所需要的软件就可以了。
首先您需要的是一个无线设备。 最为常用的一种无线配件是 Atheros 生产的。 这些设备由 ath(4) 驱动程序提供支持, 您需要把下面的配置加入到 /boot/loader.conf 文件中:
if_ath_load="YES"
Atheros 驱动分为三个部分: 驱动部分 (ath(4))、用于处理芯片专有功能的支持层 (ath_hal(4)),以及一组用以选择传输帧速率的算法 (ath_rate_sample here)。 当以模块方式加载这一支持时,所需的其它模块会自动加载。 如果您使用的不是 Atheros 设备, 则应选择对应的模块;例如:
if_wi_load="YES"
表示使用基于 Intersil Prism 产品的无线设备 (wi(4) 驱动)。
注意: 在这篇文挡余下的部分中, 我们将使用一张 ath(4) 卡作示范,如果您要套用这些配置的话, 就必须根据实际的配置情况来替换设备名。 在联机手册 wlan(4) 的开头部分给出了一份可用的驱动列表。 如果您的无线设备没有专用于 FreeBSD 的驱动程序,也可以尝试使用 NDIS 驱动封装机制来直接使用 Windows® 驱动。
在配置好设备驱动之后, 您还需要引入驱动程序所需要的 802.11 网络支持。 对于 ath(4) 驱动而言,至少需要 wlan(4) 模块;这个模块会自动随无线设备驱动一同加载。 除此之外,您还需要提供您希望使用的安全协议所需的加密支持模块。 这些模块是设计来让 wlan(4) 模块根据需要自动加载的, 但目前还必须手工进行配置。 您可以使用下面这些模块: wlan_wep(4)、 wlan_ccmp(4) 和 wlan_tkip(4)。 wlan_ccmp(4) 和 wlan_tkip(4) 这两个驱动都只有在您希望采用 WPA 和/或 802.11i 安全协议时才需要。如果您的网络是完全开放的 (也就是不加密) 则甚至连 wlan_wep(4) 支持也是不需要的。 要在系统引导时加载这些模块, 就需要在 /boot/loader.conf 中加入下面的配置:











文章评论
共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面