詳細解析:Linux操作系統的無線網絡命令
iwconfig
iwconfig是LinuxWirelessExtensions(LWE)的用戶層配置工具之一。LWE是Linux下對無線網絡配置的工具,包括內核的支持、用戶層配置工具和驅動接口的支持三部分。目前很多無線網卡都支持LWE,而且主流的Linux發布版本,比如RedhatLinux、UbuntuLinux都已經帶了這個配置工具。
用法:iwconfiginterface[essid{NN|on|off}]
[nwid{NN|on|off}]
[mode{managed|ad-hoc|...}
[freqN.NNNN[k|M|G]]
[channelN]
[ap{N|off|auto}]
[sensN]
[nickN]
[rate{N|auto|fixed}]
[rts{N|auto|fixed|off}]
[frag{N|auto|fixed|off}]
[enc{NNNN-NNNN|off}]
[power{periodN|timeoutN}]
[retry{limitN|lifetimeN}]
[txpowerN{mW|dBm}]
[commit]
說明:iwconfig是LWE最主要的工具,可以對無線網卡的大部分參數進行配置。
參數:
essid:設置無線網卡的ESSID(ExtensionServiceSetID)。通過ESSID來區分不同的無線網絡,正常情況下只有相同ESSID的無線站點才可以互相通訊,除非想監聽無線網絡。其后的參數為雙引號括起的ESSID字符串,或者是any/on/off,如果ESSID字符串中包含any/no/off,則需要在前面加"--"。
示例:
#iwconfigeth0essidany允許任何ESSID,也就是混雜模式
#iwconfigeth0essid"MyNetwork"設置ESSID為"MyNetwork"
#iwconfigeth0essid--"ANY"設置ESSID為"ANY"
nwid:NetworkID,只用于pre-802.11的無線網卡,802.11網卡利用ESSID和AP的MAC地址來替換nwid,現在基本上不用設置。
示例:
#iwconfigeth0nwidAB34
#iwconfigeth0nwidoff
nick:Nickname,一些網卡需要設置該參數,但是802.11協議棧、MAC都沒有用到該參數,一般也不用設置。
示例:
#iwconfigeth0nickname"MyLinuxNode"
mode:設置無線網卡的工作模式,可以是
Ad-hoc:不帶AP的點對點無線網絡
Managed:通過多個AP組成的網絡,無線設備可以在這個網絡中漫游
Master:設置該無線網卡為一個AP
Repeater:設置為無線網絡中繼設備,可以轉發網絡包
Secondary:設置為備份的AP/Repeater
Monitor:監聽模式
Auto:由無線網卡自動選擇工作模式
示例:
#iwconfigeth0modeManaged
#iwconfigeth0modeAd-Hoc
#p#freq/channel:設置無線網卡的工作頻率或者頻道,小于1000的參數被認為是頻道,大于10000的參數被認為是頻率。頻率單位為Hz,可以在數字后面附帶k,M,G來改變數量級,比如2.4G。頻道從1開始。使用lwlist工具可以查看無線網卡支持的頻率和頻道。參數off/auto指示無線網絡自動挑選頻率。
注意:如果是Managed模式,AP會指示無線網卡的工作頻率,因此該設置的參數會被忽略。Ad-hoc模式下只使用該設定的頻率初始無線網絡,如果加入已經存在的Ad-hoc網絡則會忽略該設置的頻率參數。
示例:
#iwconfigeth0freq2422000000
#iwconfigeth0freq2.422G
#iwconfigeth0channel3
#iwconfigeth0channelauto
ap:連接到指定的AP或者無線網絡,后面的參數可以是AP的MAC地址,也可以是iwlistscan出來的標識符。如果是Ad-hoc,則連接到一個已經存在的Ad-hoc網絡。使用off參數讓無線網卡不改變當前已連接的AP下進入自動模式。any/auto參數,無線網卡自動選擇最好的AP。
注意:如果無線信號低到一定程度,無線網絡會進入自動選擇AP模式。
示例:
#iwconfigeth0ap00:60:1D:01:23:45
#iwconfigeth0apany
#iwconfigeth0apoff
rate/bit:如果無線網卡支持多速率,則可以通過該命令設置工作的速率。小于1000的參數由具體的無線網卡驅動定義,一般是傳輸速率的索引值,大于1000的為速率,單位bps,可以在數字后面附帶k,M,G來指定數量級。auto參數讓無線網卡自動選擇速率fixed參數讓無線網卡不使用自動速率模式。
示例:
#iwconfigeth0rate11M
#iwconfigeth0rateauto
#iwconfigeth0rate5.5Mauto//自動選擇5.5M以下的速率
txpower:如果無線網卡支持多發射功率設定,則使用該參數設定發射,單位為dBm,如果指定為W(毫瓦),只轉換公式為:
dBm=30+log(W)。參數on/off可以打開和關閉發射單元,auto和fixed指定無線是否自動選擇發射功率。
示例:
#iwconfigeth0txpower15
#iwconfigeth0txpower30mW
#iwconfigeth0txpowerauto
#iwconfigeth0txpoweroff
sens:設置接收靈敏度的下限,在該下限之下,無線網卡認為該無線網絡信號太差,不同的網卡會采取不同的措施,一些現代的無線網卡會自動選擇新的AP。正的參數為rawdata,直接傳給無線網卡驅動處理,一般認為是百分比。負值表示dBm值。
#p#示例:
#iwconfigeth0sens-80
#iwconfigeth0sens2
retry:設置無線網卡的重傳機制。limit‘value’指定最大重傳次數;lifetime‘value’指定最長重試時間,單位為秒,可以附帶m和u來指定單位為毫秒和微秒。如果無線網卡支持自動模式,則在limit和lifetime之前還可以附加min和max來指定上下限值。
示例:
#iwconfigeth0retry16
#iwconfigeth0retrylifetime300m
#iwconfigeth0retryminlimit8
rts:指定RTS/CTS握手方式,使用RTS/CTS握手會增加額外開銷,但如果無線網絡中有隱藏無線節點或者有很多無線節點時可以提高性能。
后面的參數指定一個使用該機制的最小包的大小,如果該值等于最大包大小,則相當于禁止使用該機制。可以使用auto/off/fixed
參數。
示例:
#iwconfigeth0rts250
#iwconfigeth0rtsoff
frag:設置發送數據包的分片大小。設置分片會增加額外開銷,但在噪聲環境下可以提高數據包的到達率。一般情況下該參數小于最大包大小,有些支持Burst模式的無線網卡可以設置大于最大包大小的值來允許Burst模式。還可以使用auto/fixed/off參數。
示例:
#iwconfigeth0frag512
#iwconfigeth0fragoff
key/enc[ryption]:設置無線網卡使用的加密密鑰,此處為設置WEP模式的加密key,如果要使用WPA,需要wpa_supplicant工具包。
密鑰參數可以是XXXX-XXXX-XXXX-XXXX或者XXXXXXXX格式的十六進制數值,也可以是s:xxxxxx的ASCII字符。如果在密鑰參數之前加了[index],則只是設置該索引值對應的密鑰,并不改變當前的密鑰。直接指定[index]值可以設置當前使用哪一個密鑰。指定on/off可以控制是否使用加密模式。open/restricted指定加密模式,取決于不同的無線網卡,大多數無線網卡的open模式不使用加密且允許接收沒有加密的數據包,restricted模式使用加密。可以使用多個key參數,但只有最后一個生效。
WEP密鑰可以是40bit,用10個十六進制數字或者5個ASCII字符表示,也可以是128bit,用26個十六進制數字或者13個ASCII字符表示。
示例:
#iwconfigeth0key0123-4567-89
#iwconfigeth0key[3]0123-4567-89
#iwconfigeth0keys:password[2]
#iwconfigeth0key[2]
#iwconfigeth0keyopen
#iwconfigeth0keyoff
#iwconfigeth0keyrestricted[3]0123456789
#iwconfigeth0key01-23key45-67[4]key[4]
power:設置無線網卡的電源管理模式。period‘value’指定喚醒的周期,timeout‘value’指定進入休眠的等待時間,這兩個參數之前可以
加min和max修飾,這些值的單位為秒,可以附加m和u來指定毫秒和微秒。off/on參數指定是否允許電源管理,all/unicast/multicast
指定允許喚醒的數據包類型。
示例:
#iwconfigeth0powerperiod2
#iwconfigeth0power500municast
#iwconfigeth0powertimeout300uall
#iwconfigeth0poweroff
#iwconfigeth0powerminperiod2powermaxperiod4
commit:提交所有的參數修改給無線網卡驅動。有些無線網卡驅動會先緩存無線網卡參數修,使用這個命令來讓無線網卡的參數修改生效。不過一般不需要使用該命令,因為無線網卡驅動最終都會是參數的修改生效,一般在debug時會用到。
-----------
iwlisteth1scan搜索無線網絡:
顯示搜到的網絡(此處只顯示一個):
eth1Scancompleted:
Cell01-Address:00:04:E2:E3:04:FC
ESSID:"ap_demo"
Mode:Managed
Frequency:2.437GHz
Quality:0/0Signallevel=-61dBmNoiselevel=-96dBm
Encryptionkey:on
BitRate:1Mb/s
BitRate:2Mb/s
BitRate:5.5Mb/s
BitRate:11Mb/s
BitRate:6Mb/s
BitRate:9Mb/s
BitRate:12Mb/s
BitRate:18Mb/s
BitRate:24Mb/s
BitRate:36Mb/s
BitRate:48Mb/s
BitRate:54Mb/s
Cell02……
---------------
設置板子的channel
iwlisteth1channel11
--------------
設置模式:
iwconfigeth1modemanaged
通過MAC設置AP:
iwconfigeth1ap00:0A:EB:CA:79:B0
連接到WEPon的AP:
iwconfigeth1keys:12345等效于iwconfigeth1enc3132333435(12345的hex值)(為什么AP64bit的口令是40bit呢)
iwconfigeth1keyon
iwconfigeth1essidsychip_demo
斷開WEP:
iwconfigeth1encoff
查看IP:
ifconfigeth1
設置IP:
ifconfigeth110.3.1.74
把IP:129.158.215.204,netmask:255.255.255.0分配給rh0,
#ifconfigrh0129.158.215.204netmask255.255.255.0
獲取IP;
ifconfigeth1dhcpstart(從eth1走,不需要ip即可dhcp)
udhcpc-ieth1
udhcpc--help
路由處理:
若要刪除以10.起始的IP路由表中的所有路由,請鍵入:
routedelete10.*
routedeldefault
routeadd-net10.3.0.0netmask255.255.0.0eth1(eth1獲得IP之前,使用此命令顯示:Nosuchdevice)
【編輯推薦】