class="21253">
;
iwconfig
iwconfig是Linux Wireless Extensions(LWE)的用戶層配置工具之一。LWE是Linux下對無線網絡配置的工具,包括內核的支持、用戶層配置工具和驅動接口的支持三部分。目前很多無線網卡都支持LWE,而且主流的Linux發布版本,比如Redhat Linux、Ubuntu Linux都已經帶了這個配置工具。
用法: iwconfig interface [essid {NN|on|off}]
[nwid {NN|on|off}]
[mode {managed|ad-hoc|...}
[freq N.NNNN[k|M|G]]
[channel N]
[ap {N|off|auto}]
[sens N]
[nick N]
[rate {N|auto|fixed}]
[rts {N|auto|fixed|off}]
[frag {N|auto|fixed|off}]
[enc {NNNN-NNNN|off}]
[power {period N|timeout N}]
[retry {limit N|lifetime N}]
[txpower N {mW|dBm}]
[commit]
說明:iwconfig是LWE最主要的工具,可以對無線網卡的大部分參數進行配置。
參數:
essid:設置無線網卡的ESSID(Extension Service Set ID)。通過ESSID來區分不同的無線網絡,正常情況下只有相同ESSID的無線站點才可以互相通訊,除非想監聽無線網絡。其後的參數為雙引號括起的ESSID字符串,或者是any/on/off,如果ESSID字符串中包含any/no/off,則需要在前面加"--"。
示例:
#iwconfig eth0 essid any 允許任何ESSID,也就是混雜模式
#iwconfig eth0 essid "My Network" 設置ESSID為"My Network"
#iwconfig eth0 essid -- "ANY" 設置ESSID為"ANY"
nwid: Network ID,只用於pre-802.11的無線網卡,802.11網卡利用ESSID和AP的MAC地址來替換nwid,現在基本上不用設置。
示例:
#iwconfig eth0 nwid AB34
#iwconfig eth0 nwid off
nick: Nickname,一些網卡需要設置該參數,但是802.11協議棧、MAC都沒有用到該參數,一般也不用設置。
示例:
#iwconfig eth0 nickname "My Linux Node"
mode:設置無線網卡的工作模式,可以是
Ad-hoc:不帶AP的點對點無線網絡
Managed:通過多個AP組成的網絡,無線設備可以在這個網絡中漫游
Master:設置該無線網卡為一個AP
Repeater:設置為無線網絡中繼設備,可以轉發網絡包
Secondary:設置為備份的AP/Repeater
Monitor:監聽模式
Auto:由無線網卡自動選擇工作模式
示例:
#iwconfig eth0 mode Managed
#iwconfig eth0 mode Ad-Hoc
freq/channel:設置無線網卡的工作頻率或者頻道,小於1000的參數被認為是頻道,大於10000的參數被認為是頻率。頻率單位為Hz,可以在數字後面附帶k, M, G來改變數量級,比如2.4G。頻道從1開始。使用lwlist工具可以查看無線網卡支持的頻率和頻道。參數off/auto指示無線網絡自動挑選頻率。
注意:如果是Managed模式,AP會指示無線網卡的工作頻率,因此該設置的參數會被忽略。Ad-hoc模式下只使用該設定的頻率初始無線網絡,如果加入已經存在的Ad-hoc網絡則會忽略該設置的頻率參數。
示例:
#iwconfig eth0 freq 2422000000
#iwconfig eth0 freq 2.422G
#iwconfig eth0 channel 3
#iwconfig eth0 channel auto
ap:連接到指定的AP或者無線網絡,後面的參數可以是AP的MAC地址,也可以是iwlist scan出來的標識符。如果是Ad-hoc,則連接到一個已經存在的Ad-hoc網絡。使用off參數讓無線網卡不改變當前已連接的AP下進入自動模式。any/auto參數,無線網卡自動選擇最好的AP。
注意:如果無線信號低到一定程度,無線網絡會進入自動選擇AP模式。
示例:
#iwconfig eth0 ap 00:60:1D:01:23:45
#iwconfig eth0 ap any
#iwconfig eth0 ap off
rate/bit:如果無線網卡支持多速率,則可以通過該命令設置工作的速率。小於1000的參數由具體的無線網卡驅動定義,一般是傳輸速率的索引值,大於1000的為速率,單位bps,可以在數字後面附帶k, M, G來指定數量級。auto參數讓無線網卡自動選擇速率fixed參數讓無線網卡不使用自動速率模式。
示例:
#iwconfig eth0 rate 11M
#iwconfig eth0 rate auto
#iwconfig eth0 rate 5.5M auto //自動選擇5.5M以下的速率
txpower:如果無線網卡支持多發射功率設定,則使用該參數設定發射,單位為dBm,如果指定為W(毫瓦),只轉換公式為:
dBm=30+log(W)。參數on/off可以打開和關閉發射單元,auto和fixed指定無線是否自動選擇發射功率。
示例:
#iwconfig eth0 txpower 15
#iwconfig eth0 txpower 30mW
#iwconfig eth0 txpower auto
#iwconfig eth0 txpower off
sens:設置接收靈敏度的下限,在該下限之下,無線網卡認為該無線網絡信號太差,不同的網卡會采取不同的措施,一些現代的無線網卡會自動選擇新的AP。正的參數為raw data,直接傳給無線網卡驅動處理,一般認為是百分比。負值表示dBm值。
示例:
#iwconfig eth0 sens -80
#iwconfig eth0 sens 2
retry:設置無線網卡的重傳機制。limit ‘value’ 指定最大重傳次數;lifetime ‘value’指定最長重試時間,單位為秒,可以附帶m和u來指定單位為毫秒和微秒。如果無線網卡支持自動模式,則在limit和lifetime之前還可以附加min和max來指定上下限值。
示例:
#iwconfig eth0 retry 16
#iwconfig eth0 retry lifetime 300m
#iwconfig eth0 retry min limit 8
rts:指定RTS/CTS握手方式,使用RTS/CTS握手會增加額外開銷,但如果無線網絡中有隱藏無線節點或者有很多無線節點時可以提高性能。
後面的參數指定一個使用該機制的最小包的大小,如果該值等於最大包大小,則相當於禁止使用該機制。可以使用auto/off/fixed
參數。
示例:
#iwconfig eth0 rts 250
#iwconfig eth0 rts off
frag:設置發送數據包的分片大小。設置分片會增加額外開銷,但在噪聲環境下可以提高數據包的到達率。一般情況下該參數小於最大包大小,有些支持Burst模式的無線網卡可以設置大於最大包大小的值來允許Burst模式。還可以使用auto/fixed/off參數。
示例:
#iwconfig eth0 frag 512
#iwconfig eth0 frag off
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字符表
示。
示例:
#iwconfig eth0 key 0123-4567-89
#iwconfig eth0 key [3] 0123-4567-89
#iwconfig eth0 key s:password [2]
#iwconfig eth0 key [2]
#iwconfig eth0 key open
#iwconfig eth0 key off
#iwconfig eth0 key restricted [3] 0123456789
#iwconfig eth0 key 01-23 key 45-67 [4] key [4]
power:設置無線網卡的電源管理模式。period ‘value’ 指定喚醒的周期,timeout ‘value’指定進入休眠的等待時間,這兩個參數之前可以
加min和max修飾,這些值的單位為秒,可以附加m和u來指定毫秒和微秒。off/on參數指定是否允許電源管理,all/unicast/multicast
指定允許喚醒的數據包類型。
示例:
#iwconfig eth0 power period 2
#iwconfig eth0 power 500m unicast
#iwconfig eth0 power timeout 300u all
#iwconfig eth0 power off
#iwconfig eth0 power min period 2 power max period 4
commit:提交所有的參數修改給無線網卡驅動。有些無線網卡驅動會先緩存無線網卡參數修,使用這個命令來讓無線網卡的參數修改生效。不過一般不需要使用該命令,因為無線網卡驅動最終都會是參數的修改生效,一般在debug時會用到。
-----------
iwlist eth1 scan 搜索無線網絡:
顯示搜到的網絡(此處只顯示一個):
eth1 Scan completed :
Cell 01 - Address: 00:04:E2:E3:04:FC
ESSID:"ap_demo"
Mode:Managed
Frequency:2.437 GHz
Quality:0/0 Signal level=-61 dBm Noise level=-96 dBm
Encryption key:on
Bit Rate:1 Mb/s
Bit Rate:2 Mb/s
Bit Rate:5.5 Mb/s
Bit Rate:11 Mb/s
Bit Rate:6 Mb/s
Bit Rate:9 Mb/s
Bit Rate:12 Mb/s
Bit Rate:18 Mb/s
Bit Rate:24 Mb/s
Bit Rate:36 Mb/s
Bit Rate:48 Mb/s
Bit Rate:54 Mb/s
Cell 02 ……
---------------
設置板子的channel
iwlist eth1 channel 11
--------------
設置模式:
iwconfig eth1 mode managed
通過MAC 設置AP:
iwconfig eth1 ap 00:0A:EB:CA:79:B0
連接到WEP on 的AP:
iwconfig eth1 key s:12345 等效於 iwconfig eth1 enc 3132333435(12345的hex值) (為什麼AP64bit的口令是40bit呢)
iwconfig eth1 key on
iwconfig eth1 essid sychip_demo
斷開WEP:
iwconfig eth1 enc off
查看IP:
ifconfig eth1
設置IP:
ifconfig eth1 10.3.1.74
把IP: 129.158.215.204 , netmask: 255.255.255.0分配給rh0,
# ifconfig rh0 129.158.215.204 netmask 255.255.255.0
獲取IP;
ifconfig eth1 dhcp start (從eth1走,不需要ip即可dhcp)
udhcpc -i eth1
udhcpc --help
路由處理:
若要刪除以 10. 起始的 IP 路由表中的所有路由,請鍵入:
route delete 10.*
route del default
route add -net 10.3.0.0 netmask 255.255.0.0 eth1 (eth1獲得IP之前,使用此命令顯示:No such device)