歡迎您光臨本站 註冊首頁

詳細解析:Linux操作系統的無線網路命令

←手機掃碼閱讀     火星人 @ 2014-03-12 , reply:0
   

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)

(責任編輯:A6)



[火星人 ] 詳細解析:Linux操作系統的無線網路命令已經有747次圍觀

http://coctec.com/docs/net/show-post-68272.html