亚洲成精品动漫久久精久,九九在线精品视频播放,黄色成人免费观看,三级成人影院,久碰久,四虎成人欧美精品在永久在线

掃一掃
關(guān)注微信公眾號(hào)

在 Linux 系統(tǒng)下如何訪問(wèn)無(wú)線局域網(wǎng)
2006-08-24   賽迪網(wǎng)

概述

當(dāng)前,WLAN (IEEE 802.11b/a/g) 設(shè)備越來(lái)越廉價(jià),越來(lái)越多的組織為公眾和雇員提供了無(wú)線局域網(wǎng)的接入。目前幾乎所有的筆記本電腦都內(nèi)置了無(wú)線網(wǎng)卡,較老的一些也可以使用 PCMCIA 的無(wú)線網(wǎng)卡,即便是臺(tái)式計(jì)算機(jī)也常常配備有板載的或是 USB 的無(wú)線網(wǎng)卡。另一方面,無(wú)線局域網(wǎng)的接入點(diǎn)(AP)也遍布了校園、寫字樓、飯店、住宅等各處。無(wú)線局域網(wǎng)方便了網(wǎng)絡(luò)部署,并使所謂的移動(dòng)計(jì)算或游牧計(jì)算成為了可能,這幾乎是我們的工作和生活方式的又一次革命。

自然地,對(duì) Linux 來(lái)說(shuō),支持訪問(wèn)無(wú)線局域網(wǎng)的必要性是毋庸置疑的。本文后面的部分將如下組織:首先考慮無(wú)線網(wǎng)卡的驅(qū)動(dòng)問(wèn)題,之后探討訪問(wèn)使用認(rèn)證機(jī)制的網(wǎng)絡(luò),然后簡(jiǎn)要介紹一些無(wú)線局域網(wǎng)設(shè)置的工具,最后給一點(diǎn)簡(jiǎn)單結(jié)論。

驅(qū)動(dòng)無(wú)線網(wǎng)卡

一旦在計(jì)算機(jī)中安裝好了無(wú)線局域網(wǎng)卡,首先要做的就是安裝驅(qū)動(dòng)來(lái)讓網(wǎng)卡工作。無(wú)線網(wǎng)卡實(shí)現(xiàn)了IEEE 802.11系列協(xié)議中的一種或多種的物理層(PHY)和媒質(zhì)訪問(wèn)控制子層(MAC)的功能,而驅(qū)動(dòng)是用來(lái)控制無(wú)線網(wǎng)卡,向上提供與以太網(wǎng)一致的接口并提供其他一些無(wú)線局域網(wǎng)特定的管理接口的。

對(duì)于不同廠商的不同網(wǎng)卡,還沒(méi)有一種統(tǒng)一的方法可以驅(qū)動(dòng)所有的網(wǎng)卡。不過(guò)大部分網(wǎng)卡可以通過(guò)以下三種方式驅(qū)動(dòng):

使用內(nèi)核自帶的網(wǎng)卡驅(qū)動(dòng)程序,

為特定的網(wǎng)卡編譯安裝驅(qū)動(dòng)模塊,

使用 NDIS wrapper [1]利用面向 MS Windows®的驅(qū)動(dòng)程序驅(qū)動(dòng)網(wǎng)卡。

在下面的章節(jié),筆者將用小例子逐一解釋這些方法。

注意:即使你是用后兩種方法,也必須確保內(nèi)核配置中啟動(dòng)了無(wú)線局域網(wǎng)支持:

gnawux@APTITUDE:~$ grep CONFIG_NET_RADIO /boot/config-`uname -r`

CONFIG_NET_RADIO=y

如果沒(méi)有無(wú)線局域網(wǎng)支持,你應(yīng)該重新配置、編譯內(nèi)核來(lái)啟動(dòng)"Wireless LAN (non-hamradio) Drivers and Wireless Extensions".

內(nèi)核中支持的無(wú)線網(wǎng)卡

Linux 內(nèi)核中包含了很多已經(jīng)足夠成熟的、沒(méi)有許可證問(wèn)題的無(wú)線網(wǎng)卡的驅(qū)動(dòng)程序。無(wú)線網(wǎng)卡在內(nèi)核中的支持列表自然是和內(nèi)核版本有關(guān)的了,因此,在安裝驅(qū)動(dòng)之前看看新的內(nèi)核是不是對(duì)你的網(wǎng)卡有更好的支持無(wú)疑是明智的。 本節(jié)中,作者將以 Intersil Prism 系列芯片(ISL38xx)的網(wǎng)卡為例。關(guān)于這個(gè)驅(qū)動(dòng)支持的網(wǎng)卡的完整列表可以參考http://prism54.org[2]。

要支持Prism網(wǎng)卡,首先需要新的 2.6 內(nèi)核,并再配置中的無(wú)線局域網(wǎng)支持部分允許 "Intersil Prism GT/Duette/Indigo PCI/Cardbus"。配置后編譯、安裝內(nèi)核。

如果你仔細(xì)閱讀了內(nèi)核中該模塊的幫助文本可能會(huì)發(fā)現(xiàn),你需要首先從項(xiàng)目網(wǎng)站 [2]獲取 firmware才能驅(qū)動(dòng)網(wǎng)卡。即使把模塊編譯到內(nèi)核之中仍需要下載固件的原因在于firmware中包含了非 GPL 兼容許可證代碼,無(wú)法與內(nèi)核一起發(fā)布。下載firmware并放到"/usr/lib/hotplug/firmware/" 之后,重新啟動(dòng)計(jì)算機(jī),這時(shí)你可以發(fā)現(xiàn)新的無(wú)線網(wǎng)卡提供了又一個(gè)以太網(wǎng)接口。

特定網(wǎng)卡的驅(qū)動(dòng)模塊

和許多其他新硬件一樣,很多新型號(hào)的無(wú)線網(wǎng)卡沒(méi)有廠商提供的兼容 GPL 的驅(qū)動(dòng)程序,或者由開(kāi)放源代碼社區(qū)開(kāi)發(fā)的驅(qū)動(dòng)程序仍然不成熟、無(wú)法進(jìn)入內(nèi)核。這樣,這些驅(qū)動(dòng)程序就以單獨(dú)的模塊的形式出現(xiàn),而這些驅(qū)動(dòng)中的一部分將來(lái)某一天可能就會(huì)進(jìn)入到內(nèi)核之中了。

這些驅(qū)動(dòng)中的一個(gè)著名代表就是ipw2100 [3],它是 Intel Pro/Wireless 2100 的驅(qū)動(dòng)程序,而這塊無(wú)線網(wǎng)卡就是著名的 Intel 迅馳® 移動(dòng)計(jì)算技術(shù)的一部分。本節(jié)中就以 ipw2100 驅(qū)動(dòng)的安裝為例。

首先,你需要從項(xiàng)目網(wǎng)站http://ipw2100.sourceforge.net下載驅(qū)動(dòng)的源代碼包和firmware。確定了內(nèi)核足夠新并且已經(jīng)支持了模塊、hotplug firmware 和無(wú)線網(wǎng)卡之后,解壓源代碼包:

APTITUDE:/usr/src# tar -zxvf ipw2100-1.0.1.tgz

進(jìn)入源代碼目錄編譯、安裝:

APTITUDE:/usr/src/ipw2100-1.0.1# make

APTITUDE:/usr/src/ipw2100-1.0.1# make install

安裝完模塊之后,它會(huì)提示你需要安裝firmware:

Don't forget to copy firmware to /usr/lib/hotplug/firmware/ and have the

hotplug tools in place.

按照提示所說(shuō),把firmware解壓縮到該目錄之后,可以使用如下命令啟動(dòng) ipw2100模塊了:

APTITUDE:/usr/src/ipw2100-1.0.1# modprobe ipw2100

啟動(dòng)模塊的時(shí)候可以使用參數(shù)來(lái)指定一些設(shè)置。比如可以用ifname參數(shù)來(lái)指定網(wǎng)絡(luò)接口的名稱:

APTITUDE:/usr/src/ipw2100-1.0.1# modprobe ipw2100 ifname=wlan0

這樣,新的接口就叫wlan0了。對(duì)于其他的參數(shù),讀者可以閱讀源碼包里的說(shuō)明文檔。

驅(qū)動(dòng)其他網(wǎng)卡

十分不幸,有些網(wǎng)卡根本就沒(méi)有驅(qū)動(dòng)或是由于種種原因驅(qū)動(dòng)根本無(wú)法工作。沒(méi)關(guān)系,這并不代表我們不能使用這些網(wǎng)卡了。至少我們還有NDIS wrapper [3].

大部分用于桌面計(jì)算機(jī)或是筆記本的無(wú)線網(wǎng)卡都會(huì)支持Windows 2000/XP®,而這些驅(qū)動(dòng)都是遵循 NDIS 標(biāo)準(zhǔn)接口的。這樣我們就應(yīng)該可以包裝一下這些擁有統(tǒng)一接口的驅(qū)動(dòng),使它們能為 Linux 工作了。這就是 Ndiswrapper 項(xiàng)目的由來(lái)。

本節(jié)中,我們將使用 ndiswrapper 驅(qū)動(dòng)一塊 Net Gear 121 網(wǎng)卡。首先我們應(yīng)該先從項(xiàng)目網(wǎng)站http://ndiswrapper.sourceforge.net 下載驅(qū)動(dòng),并準(zhǔn)備好 Windows®下的驅(qū)動(dòng)程序。nidswrapper 包括一個(gè)內(nèi)核模塊和一些工具。首先我們應(yīng)該編譯、安裝它們:

APTITUDE:/usr/src/ndiswrapper-0.11# make install

之后,加載 Windows® 的驅(qū)動(dòng)程序:

APTITUDE:/usr/src/ndiswrapper-0.11# ndiswrapper -i ../wg121/WG121V200/ndis5/netwg121.inf

這個(gè)inf文件就是for Windows® 的 NDIS 驅(qū)動(dòng),安裝之后,應(yīng)該可以看到:

APTITUDE:/usr/src/ndiswrapper-0.11# ndiswrapper -l

Installed ndis drivers:

netwg121 driver present

好了!安裝過(guò)程完成了。

認(rèn)證

如果在一些公共場(chǎng)合訪問(wèn)無(wú)線局域網(wǎng),出于安全考慮,一些組織提供的無(wú)線網(wǎng)絡(luò)接入是需要進(jìn)行認(rèn)證的。目前可用的無(wú)線局域網(wǎng)認(rèn)證方式包括 IEEE 802.1x (EAP) 為基礎(chǔ)的一系列認(rèn)證方法和 IEEE 802.11i,前者目前比較成熟、也非常常見(jiàn)。

有很多中基于 EAP 的認(rèn)證方法,包括 EAP-MD5,EAP-TLS, EAP-TTLS, EAP-SIM, LEAP 等等。對(duì)于 Linux 用戶,訪問(wèn)使用這些基于 802.1x 的認(rèn)證方式的網(wǎng)絡(luò),可以使用 Open1x project [4] 提供的工具 xsupplicant,本節(jié)中使用 Cisco 提出的 LEAP 作為例子。 注意:認(rèn)證協(xié)議的支持不僅由xsupplicant決定,也由網(wǎng)卡決定,也就是說(shuō),即使正確安裝配置了 xsupplicant,如果驅(qū)動(dòng)有問(wèn)題也不一定可以訪問(wèn)網(wǎng)絡(luò)。

首先先從項(xiàng)目網(wǎng)http://open1x.sourceforge.net 站下載xsupplicant并安裝,之后修改位于 /etc/xsupplicant/xsupplicant.conf 的配置文件的內(nèi)容,這里有一個(gè)LEAP的例子:

#example of /etc/xsupplicant/xsupplicant.conf
#for LEAP protocol
network_list = all
#the list of networks to access
default_netname = default
#the default access network
first_auth_command = <BEGIN_COMMAND>dhclient %i<END_COMMAND>
#The command before authention, which usually for get some info from
#network
logfile = /var/log/xsupplicant.log
#log file
myssid #here is your network id, may be listed in the network list
{
type = wireless
ssid = <BEGIN_SSID>myssid<END_SSID>
allow_types = all
identity = <BEGIN_ID>aptitude<END_ID>
eap-leap {
   username = <BEGIN_UNAME>aptitude<END_UNAME>
   password = <BEGIN_PASS>passwd<END_PASS>
}#setup for leap
}

LEAP 是一個(gè)非常簡(jiǎn)單的認(rèn)證方法,對(duì)于其他方法還有很多其他設(shè)置,關(guān)于這些設(shè)置,請(qǐng)參考 xsupplicant 的例子和文檔。

一些有用的工具

如你所知,無(wú)線局域網(wǎng)網(wǎng)卡提供了一個(gè)與以太網(wǎng)一致的接口,你可以把它就當(dāng)成是另一個(gè)以太網(wǎng)接口。而另一方面,因?yàn)槭褂昧藷o(wú)線介質(zhì),一個(gè)無(wú)線網(wǎng)卡擁有比以太網(wǎng)更多的特性。有一組工具就是用來(lái)配置無(wú)線網(wǎng)卡、獲取無(wú)線網(wǎng)卡工作狀態(tài)的,wireless tools 的相關(guān)內(nèi)容可以從http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html [5] 得到,這是由 Jean Tourrilhes 貢獻(xiàn)的。

最常用的工具是 iwconfig,它的用法類似 ifconfig。沒(méi)有接口名稱之外的參數(shù)的 iwconfig 命令可以得到網(wǎng)卡的工作狀態(tài):

gnawux@APTITUDE:~$ /sbin/iwconfig wlan0
wlan0     unassociated  ESSIDff/any  Nickname:"ipw2100"
          Mode:Managed  Channel=0  Access Point: 00:00:00:00:00:00
          Bit Rate=0 kb/s   Tx-Powerff
          Retryn   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

使用“mode”參數(shù),你可以更改無(wú)線網(wǎng)卡的工作模式

APTITUDE:/home/gnawux# iwconfig wlan0 mode 1
APTITUDE:/home/gnawux# iwconfig wlan0
wlan0     unassociated  ESSID:off/any  Nickname:"ipw2100"
          Mode:Ad-Hoc  Channel=0  Cell: 00:00:00:00:00:00
          Bit Rate=0 kb/s   Tx-Power:off
          Retry:on   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

這里,我們把網(wǎng)卡的工作模式改成了 Ad Hoc 模式了。使用 essid 參數(shù),還可以改動(dòng)網(wǎng)絡(luò)的名稱:

APTITUDE:/home/gnawux# iwconfig wlan0 essid gnawux
APTITUDE:/home/gnawux# iwconfig wlan0
wlan0     IEEE 802.11b  ESSID:"gnawux"  Nickname:"ipw2100"
          Mode:Ad-Hoc  Frequency:2.412 GHz  Cell: 02:0C:F1:0F:11:2A
          Bit Rate=0 kb/s   Tx-Power:off
          Retry:on   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=60/100  Signal level=-83 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

你可能注意到了,現(xiàn)在我們的很多狀態(tài)參數(shù)都有了有意義的值,這是因?yàn)槲覀冇辛艘粋€(gè)合法的 ESSID 了。對(duì)于其他參數(shù),可以參考 iwconfig(8)。

另一個(gè)常用工具是 iwlist,這個(gè)工具可以用來(lái)列出可用資源。使用 scanning 參數(shù),可以看到所有的 AP:

gnawux@APTITUDE:~$ /sbin/iwlist wlan0 scanning
wlan0     Scan completed :
          Cell 01 - Address: 00:0D:BD:6F:B4:48
                    ESSID:""
                    Protocol:IEEE 802.11b
                    Mode:Master
                    Channel:6
                    Encryption key:on
                    Bit Rate:11 Mb/s
                    Extra: Rates (Mb/s): 1 2 5.5 11
                    Extra: Signal: -70  dBm
                    Extra: Last beacon: 59ms ago
          Cell 02 - Address: 86:CF:C1:34:12:06
                    ESSID:"gnawux"
                    Protocol:IEEE 802.11b
                    Mode:Ad-Hoc
                    Channel:11
                    Encryption key:off
                    Bit Rate:11 Mb/s
                    Extra: Rates (Mb/s): 1 2 5.5 11
                    Extra: Signal: -37  dBm
                    Extra: Last beacon: 2ms ago

而使用 frequency 參數(shù),我們可以得到頻率列表:

gnawux@APTITUDE:~$ /sbin/iwlist wlan0 freq
wlan0     14 channels in total; available frequencies :
          Channel 01 : 2.412 GHz
          Channel 02 : 2.417 GHz
          Channel 03 : 2.422 GHz
          Channel 04 : 2.427 GHz
          Channel 05 : 2.432 GHz
          Channel 06 : 2.437 GHz
          Channel 07 : 2.442 GHz
          Channel 08 : 2.447 GHz
          Channel 09 : 2.452 GHz
          Channel 10 : 2.457 GHz
          Channel 11 : 2.462 GHz
          Channel 12 : 2.467 GHz
          Channel 13 : 2.472 GHz
          Channel 14 : 2.484 GHz
          Current Channel=1

你同樣可以通過(guò) iwlist(8) 得到更多信息。

除了上面的兩個(gè),還有很多其他工具,包括 iwevent, iwgetid, iwpriv, iwspy, 用來(lái)獲取網(wǎng)卡工作狀態(tài)、對(duì)網(wǎng)卡進(jìn)行管理

熱詞搜索:

上一篇:Windows XP怎樣節(jié)省內(nèi)存加快開(kāi)機(jī)速度
下一篇:Linux操作系統(tǒng)下6個(gè)應(yīng)急處理小常識(shí)

分享到: 收藏