【说明】
1.本帖专供那些在
笔记本上装Solaris 10 X86又需要使用无线网卡联网的
朋友提供
服务!在
虚拟机上装Solaris的
朋友可以收藏先!
2.所有的文档,
软件和驱动包都来自OpenSolaris的Wireless Network项目。英文好的朋友可以点以下链接看原版资料。
<http://opensolaris.org/os/community/laptop/wireless/wificonfig/>
3.所有翻译的文档都不一定是照本全翻,我会有选择性得翻译认为比较重要的部分。有需要看原版文档的朋友点上面的Link,看不懂的地方可以贴上来大家一起探讨。
4.自己以前也都是读英文原版的,手头没有现成的译本,请大家耐心等待,等不及的可以直接回复此贴提问,谢谢支持!
【无线设置工具-wificonfig】
<
下载链接:>
http://opensolaris.org/os/commun ... nfig-0.2-bin.tar.gz
<简要说明:>无线
网络配置工具,用来搜索和连接到
主机附近特定的无线
网络,建立和修改无线
网络配置
文件以便连接到特定的无线
网络!
<安装说明:>这个工具只有一个文件,下载解压后放到/usr/bin 目录下即可
------------解压
命令:gzip -dc wificonfig-0.2-bin.tar.gz | tar xvf -
<使用示例: >
//假设无线网卡设备名为ath0 --ath 即对应的驱动项目名,驱动安装实际的网卡设备名为 ath0,如果有两块一样的就是ath0,ath1
//这个和LAN NIC的情况是一样的。先说明一下,后面就不再每次重复了。
搜索附近的无线网络
# wificonfig -i ath0 scan
自动连接到一个无线网络(没有加密的情况下)
# wificonfig -i ath0 autoconf
手动连接到制定的无线网络并通过DHCP分配网络参数:
//第一步创建配置文件,第二步使用配置文件连接到特定的无线网络,第三步设置网络地址(这里采用DHCP)
# wificonfig -i ath0 createprofile essid=mywifi encryption=WEP wepkey1=12345
# wificonfig -i ath0 connect mywifi
# ifconfig ath0 DHCP
//你最好建一个hostname.ath0 把主机名设进去。
<man page>:
//主要是较你创建、修改无线网络配置档案,其中的选项及参数(比如SSID等等)
----------------
系统管理命令 wificonfig(1M) -----------------------------
名称
wificonfig - WLAN 配置
梗概
wificonfig [-i 网络接口,你用ifconfig -a 看到的网卡接口的名字]
wificonfig [-R root_path] [-i 网络接口] 子命令
[参数 [=参数的选项值...] [...]]
wificonfig [-R root_path] -p profile setwepkey n
wificonfig [-R root_path] -p profile getparam|setparam
[parameter [=value...] [...]]
描述
wificonfig定义了一整套subcommands和参数来 配置系统内的WiFi接口。命令能创建或加载配置档案(Profile),
从一个WiFi接口取得参数或设定具体参数。一个驱动
程序可能支持所有参数或这些参数的一个子集。
wificonfig使用RBAC ( 5 )来控制
用户对接口的
访问,
用户只与" solaris.network.wifi.config "授权可以管理一个WiFi接口。
只有用户具有" solaris.network.wifi.wep "授权,才可以配置WEP (有线等效隐私)的秘匙。其他用户只能从接口读参数。默认情
况下, " Solaris.system.network.wifi.config "和" solaris.network.wifi.wep "授权除了root用户是不给于任何其他用户的。
//我补充说明:也就是设置无线连接的配置文件默认是只有root用户有权限操作,而其他用户只能做三件事,一个是扫描可用的无线网络,
//即从接口获取参数,一个是通过使用(即读取)特定的配置文件来连接到一个无线网络,另外一件就是查看当前连接的状态。
//而root用户应为有那两个什么授权所以可以创建和修改配置档案(Profile)。
在概要的第一个例子里,wificonfig通过引用在参数 -i 后制定名字的无线网络 接口名显示对应驱动所支持的参数,如果不提供这个名字,常用的信息将会
被打印在屏幕上。
//我补充说明:也就是说你打如下命令将显示驱动程序所支持的设置参数。
// #wificonfig -i ath0
//如果你只打wificonfig ,或者你打的一串命令里有任何错误,所有常用的命令选项和参数说明就会被打印到屏幕上。:D :D
在概要的第二个例子中,wificonfig根据给定的子命令设定一个WIFI接口, 若网路接口没有被制定(即 缺失-i 选项),那么wificonfig会搜索目录
/dev/wifi/然后尝试按字典数序打开一个WIFI接口。哪一个被成功打开就作为默认的WIFI接口, /dev/wifi/下的WIFI接口由devfs自动创建。
//也就是说你先打 “wificonfig -i ath0 ”制定使用ath0 这个WIFI接口,然后接着打一串子命令(这个后面具体说)来设定一个网络接口,但是,
//这个-i参数是可选的,你不告诉wificonfig 用哪个WIFI接口他就自己去去
/dev/wifi/下的文件,找到一个就尝试打开一个,最先被成功
//打开那个作为默认的WIFI接口,而后让它按你那串子命令里的指令干活!
在概要的第三、第四个例子中,用户可以任意制定一个配置档案(Profile)以改变参数。
一个无线
局域网卡可以连接到不同的网络,那一组用来连接到特定无线网络的
参数集我们称之为一个配置档案(Profile)。
一个配置档案可以由以下两种情况中的任意一个创建:
o 一个配置档案,可以使用createprofile 子命令明确地创建(见下文) 。这个无线局域网实际上或许还不存在。
o 一个配置档案,可以使用Setparam子命令创建(如果这个配置还不存在) 在这种情况下,配置文件的名称将与WIFI接口所连
接之WLAN的essid名称相同。如果再用户设定的参数集中没有
检测到essid,那么设定档案将不会被创建,那些参数只是被暂时
保存,之后可以使用saveprofile子命令将这些参数保存到用户制定的配置档案中。
命令选项
wificonfig命令支持以下选项
-i interface
指丁一个无线局域网接口来执行配置档案。
-R root_path
指定一个目录。
//需要输入从/开始的完整路径名称;
//通常是在你的配置档案非默认目录下时需要使用这个选项;
-p profile
指定将要读取或设置的配置档案。这个选项只对以下几个子命令有效: 'getparam', 'setparam' , 'setwepkey' 。
子命令
wificonfig命令提支持以下子命令:
autoconf [wait n|FOREVER|-1]
自动设定接口.
配置会参照从/etc/inet/wifi中找到的之前保存的偏好名单。 wificonfig首获通过扫描无线无线信号获得可用的无线局域网列表。
随后比较清单提供的无线局域网列表和之前的偏好列表。如果偏好列表是空的,或找不到任何一个偏好列表中的无线局域网,
那么 wificonfig将使用下列启发式来选择,连接到一个无线局域网:
1 )没有加密的无线局域网络将具有较高的优先权 ;
2 )无线局域网有更大的信号强度将具有较高的优先权;‘
3 )无线局域网有较高传输速率具将有较高的优先权。
可选项:如果确定优先列表中的无线局域网可用,用户可以使用wait选项和参数n,指定‘autoconf‘返回前等待n秒!
默认情况下(没有wait选项), 'autoconf'将在10秒内返回。如果在wait选项后使用FOREVER 或-1作为参数,
wificonfig将 中断执行,直到 NIC根据偏好列表中制定的配置成功连接到无线局域网。
这个子命令需要"solaris.network.wifi.config" 授权。
createprofile [profile] parameter=value [...]
脱机创建一个由‘profile‘参数命名的配置档案。指定的参数将被保存在这个配置档案中。档案名参数‘profile‘ 是可选的。
如果缺失这个参数,wificonfig将使用指定的essid作为配置档案的名字。创建配置档案时用户可以指定同时制定一组参数。
你至少要设定essid这个参数!
//parameter=value [...]代表参数列表,参数与参数值间用‘=‘分割,不可以有空格,不同的参数间用空格分隔。
这个子命令需要"solaris.network.wifi.config" 授权。
这个子命令不需要 -i 选项,使用‘-i‘选项指定接口是会报错的!
showprofile [profile]
打印由参数'profile' 指定的配置档案中设定的参数。WEP (wired equivalent privacy)keys 是不会打印的,因为它是一个唯读的参数。
这个子命令不需要 -i 选项,使用‘-i‘选项指定接口是会报错的!
saveprofile [profile]
将暂存的参数令存为一个配置档案,档案名由参数 'profile' 指定。 只有那些不需要知道接口连接到哪个无线网络的参数集是暂存的参数。
如果缺失'profile'参数,这些参数将保存到机口当前激活(//即当前正在使用)的那个配置档案中。如果接口没有激活的配置档案,将使用
essid作为配置档案的名字。
这个子命令需要"solaris.network.wifi.config" 授权。
deleteprofile profile1 profile2 ...
删除一个或多个指定名称的配置档案。如果指定的配置档案不存在,这个子命令将执行失败。使用通配符'\*' 可以删除所有的配置档案。
这个子命令需要"solaris.network.wifi.config" 授权。
history
列出在历史记录列表中的无线局域网。wificonfig自动记录那些每次扫描企图中出现的无线局域网。
历史记录最多包含10条最近无线无线网络的记录,记录按时间排列。通过本子命令可以列出这些记录。
这个子命令不需要 -i 选项,使用‘-i‘选项指定接口是会报错的!
listprefer
列出偏好列表上的内容。
这个子命令不需要 -i 选项,使用‘-i‘选项指定接口是会报错的!
removeprefer profile
从偏好列表中清除一个或多个档案。
使用通配符'\*' 可以删除所有的档案
这个子命令需要"solaris.network.wifi.config" 授权。
这个子命令不需要 -i 选项,使用‘-i‘选项指定接口是会报错的!
setprefer profile [n]
设置档案在偏好列表中的位置。这可以增加或者改变一个档案在偏好列表中的位置。参数‘n'的值域从1到10。如果缺失参数‘n‘ ,默认分配值为1。、
如果指定的位置已被占用,之前档案的位置在列表中会向下顺移。如果‘n‘的值是列表的末尾,档案会被添加到列表的最后。使用此子命令同样可以
创建偏好列表。如果autoconf子命令被设定延时执行,wificonfig 将尝试根据偏好列表来加入无线局域网。
这个子命令需要"solaris.network.wifi.config" 授权。
这个子命令不需要 -i 选项,使用‘-i‘选项指定接口是会报错的!:fd:
setwepkey 1|2|3|4
设定四个WEP密匙中的一个。密匙是用来加密空中传输的数据包内容的。遵循802.11标注NIC中有4个WEP key。
setwepkey子命令用来更新4个密匙中的一个为用户期望的值。用户必须重复输入两次密匙。输入的键值不会回显。
示例, 更改 setwepkey2:
example% wificonfig -i ath0 setwepkey 2
input wepkey2: < user input here>
confirm wepkey2: < user input here>
一个WEP密匙的长度可以为5或者13个字节。有两种方法输入一个WEP密匙,用ADCII 值或者十六进制值。
WEP 密匙是唯读的,他们不能通过wificonfig被读回。
//即你输入后用wificonfig是无法再查看的。
另外, WEP的密钥也可以通过设置'setparam' 子命令用以原文本形式输入。这样可以用脚步设置WEP密匙。
(具体的内容请查看‘setparam' 参数)
这个子命令需要"solaris.network.wifi.config" 授权。
如果选项'-p profile'被指定,WEP密匙将只保存到指定名称的档案中,不会在被更新到NIC中。
loaddef
驱使NIC加载所有参数的默认值。具体的默认参数请查看getparam 和setparam 子命令。
这个子命令需要"solaris.network.wifi.config" 授权。
connect profile [wait n|FOREVER|-1]
根据一个预设的档案( 档案名由'profile'参数指定)连接到一个无线网络。如果/etc/inet/wifi中指定的配置档案已存在,
‘connect‘子命令将加载那个配置档案来设置接口。当connect'成功后,此档案随即成为接口当前激活的配置档案。
如果不存在指定的配置档案, ‘connect'的行为相当于‘loaddef‘(除非有个一个名字和此档案中设定的essid一样的配置档案存在),
进程的退出状态将为3(轻微错误)。
可选参数, 如果指定的配置档案存在,用户可以设置一个数字作为'connect'返回前等待的秒数。默认情况下(没有wait选项),
'connect'将在10秒内返回。如果在wait选项后使用FOREVER 或-1作为参数,wificonfig将 中断执行,直到 NIC根据已存在的
配置档案配置成功连接到无线局域网。
这个子命令需要"solaris.network.wifi.config" 授权。
disconnect
使接口从当前已访问的无线网络断开连接。接口不再访问任何无线网络。
这个子命令需要"solaris.network.wifi.config" 授权
scan
扫描并列出所有可用的无线网络
showstatus
显示无线网络接口的基本状态信息。如果无线网络接口已连接,基本状态信息包含:
当前激活的配置档案名称,网络名称,网络是否加密,以及信号强度!
getparam | setparam
获取或设置参数,如果选项'-p profile' 被指定,将只从指定名称的配置档案中获取参数或只保存到指定名称的配置档案中。
但不能从NIC获取参数或保存到NIC中。
setparam wepkey1|wepkey2|wepkey3|wepkey4 子命令需要"solaris.network.wifi.wep" 授权。
setparam 其他参数的子命令需要"solaris.network.wifi.config" 授权.
示例,
$ wificonfig setparam [-p profile] <parameter1=value1
[parameter2=value2 [...]]
$ wificonfig getparam [-p profile] <parameter1>
[parameter2 [...]]
当前版本支持一下参数
(参数值不区分大小写).
bssid
当前连接的无线访点
MAC地址。此值为6字节的16进制值。 在对等网络配置中bssid也可能是IBSSID。
若bssid为0,表明工作站没有连接到任何WLAN,若bssid非0,则表示工作站已连接到一个WLAN。
默认值为0。此参数唯读。
essid
网络名称。此指为一个最大32字符的字符串。如果essid为空字符串,驱动程序使用内置的启发模式搜索并连接到一个WLAN。
默认值为一个空字符串。
bsstype
指定访问点是否被使用。此值为BSS或AP表示通过一个访问点连接加入一个WLAN。此值为IBSS或ADHOCH表示连接到一个
对等WLAN(也被称为ad hoc"

。有效值AUTO表示自动在这两种类型间切换。
默认值为BSS。
createibss
指定在找到理想的网络但结果不能连接时连接后是否创建一个IBSS。这能让用户可以开启一个对等网络以便其他工作站加入。
有效值为YES开启一个新的对等WLAN(而不是加入一个现有的对等WLAN),或者NO不开启一个对等WLAN。
默认值为NO。NIC总是先尝试加入一个WLAN。如果成功,createibss被忽略。
channel
一个整数,指示操作频率。这个频道号码由监管的区域而异。当频道号码由getparam子命令获取时,此值为网络 连接到网络时
实际使用的频道。频道号码由getparam子命令设置,此值只适用于网卡为在ad-hoc模式时可用。它标志着IBSS的操作频道。
默认值为网卡上的频道号码。
rates
指定传输速率。有效值为(单位Mbit/s)1, 2,5.5, 6, 9, 11, 12, 18, 22, 24, 33, 36,48, 和54. 视一个NIC的能力,它可能支持多种传输模式。
如果提供多个值来设定这个参数,每个值必须用逗号(,)分隔。具体参见示例章节。
默认值为芯片支持的数据速率。
[collor=Red] powermode
指定电源管理模式。有效值OFF为关闭电源管理,MPS为最大电源管理,FAST为速度和节能的最佳平衡。
默认值为OFF。
authmode
指定授权类型。有效值为OPENSYSTEM用于一个开放的系统,每个人都会被授权访问,SHARED_KEY用于一个共享密匙的授权模式。
默认值是OPENSYSTEM
encryption
指定使用的加密算法。有效值为NONE时为不使用使用加密算法,WEP用于开启WEP加密。
默认值为NONE。
wepkey1|wepkey2|wepkey3|wepkey4
WEP密匙。一个NIC最大可以设置4个WEP密匙(从1到4)。
它们是唯读参数,可以被'setparam'设置,但是不能被'getparam'读回。'setwepkey' 或'setparam' 子命令都可以设置WEP密匙。
使用 'setparam' 使用原文本但它可以脚本化。设置WEP密匙需要"solaris.network.wifi.wep" 授权。
wepkeyindex
指定加密密匙。有效值为1使用wepkey1,为2使用wepkey2,为3使用wepkey3, 为 4使用 wepkey4.
默认值为1。此子命令只在WEP设置为on时有效。
signal
指定接收到的无线信号能力。有效值为0~15。0意味着最差的信号而15意味着最强的信号。
这个参数是维读的,取决于从工作站收到的无线信号能力。
radio
指定是否开启无线天线。有效值为ON或OFF。
默认值为ON。
EXAMPLES//正在翻译中。。。
Example 1: Listing the Parameters Supported by a Driver
To display what parameters the ath driver supports and the
read/write modes of the parameters:
% wificonfig -i ath0
...
bssid - read
essid - read/write
nodename - read/write
encryption - read/write
signal - read
...
Example 2: Getting and Setting Parameters on the WIFI inter-
face
To get the current rates and signal strength from the
driver:
% wificonfig -i ath2 getparam rates signal
ath2:
rates = 1,2,5.5,11
signal = 10
Example 3: Managing Configuration Profiles
A Configuration Profile can be created offline and then con-
nected to the network with the created Configuration Pro-
file. The following series of commands creates the Confi-
guration Profile, displays the contents of that profile, and
connects to the network with the Configuration Profile:
% wificonfig -i ath0 createprofile myXXXX essid=rover
encryption=WEP wepkey1=12345
% wificonfig -i ath0 showprofile myXXX
[myXXX]
essid = rover
encryption=WEP
% wificonfig -i ath0 connect myXXX
Example 4: Managing the Preference List
A profile can be added to the Preference List and then used
by the autoconf subcommand. The following series of commands
adds a profile named my_home_ssid to the top of the Prefere-
nce List, automatically connects ath0 to the first availa-
ble WLAN in the Preference List, and removes my_neighbor
from the Preference List
% wificonfig -i ath0 setprefer my_home_ssid 1
% wificonfig -i ath0 autoconf
% wificonfig -i ath0 removeprefer my_neighbor
Example 5: Viewing the History List
To display the history of the WLANs:
% wificonfig -i ath0 history
...
WLAN history:
essid bssid encryption last seen
my_home_ssid 00:0f:24:11:12:14 WEP Fri Sep 13 09:15:24 2004
my_office_ssid 00:0f:24:11:12:15 WEP Fri Sep 13 13:20:04 2004
my_neighbor1 00:0f:24:11:12:16 NONE Fri Sep 14 08:01:26 2004
my_neighbor2 00:0f:24:11:12:17 WEP Fri Sep 18 21:33:12 2004
...
Example 6: Automatic Configuration
To configure the interface according to the previously saved
Preference List:
% wificonfig -i ath0 autoconf
If the Preference List is empty, or none of the WLANs listed
by the Proference List can be found, wificonfig uses
the default configuration, directs the interface to scan and
join the WLAN using the built-in heuristics.
Example 7: Connecting To a WLAN
To search for a Configuration Profile with the name
my_home_ssid and configure the interface accordingly:
% wificonfig -i ath0 connect my_home_ssid
If the specified Configuration Profile does not exist, wifi-
config sets the essid of the ath0 with the value
my_home_ssid, and no other parameters are set.
Example 8: Displaying the Content of a Configuration Profile
To print the parameters of the previously configured profile
named my_home_ssid:
% wificonfig -i ath0 showprofile my_home_ssid
Example 9: Saving a Configuration Profile
When the interface is not connecting to any WLAN, setting
parameters does not result in saving those parameters in any
Configuration Profiles, but saving them temporarily, to save
the temporarily saved parameters in the named Configuration
Profile:
% wificonfig -i ath0 saveprofile myXXX
Example10: Monitoring the link status.
% wificonfig -i ath0 showstatus
ath0:
linkstatus: not connected,
or
ath0:
linkstauts: connected
active profile: [home]
essid: myhome
encryption: WEP
signal: strong
EXIT STATUS
0 Successful operation
1 Fatal Error; the operation failed
2 Improper Use; help information will be printed
3 Minor error
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | SUNWcsr |
|_____________________________|_____________________________|
| Interface Stability | Evolving |
|_____________________________|_____________________________|
SEE ALSO
attributes(5), ath(7D)
---------------------------------------------------------------
<其他说明:>使用wificonfig 命令需要Root权限
[
本帖最后由 云杉上的蝴蝶 于 2008-3-2 02:18 编辑 ]