• Linux下的iwpriv(iwlist、iwconfig)的简单应用


    无线网络飞速发展的今天,许多设备都提供了连接无线网络的功能。

    那么Linux下的wifi到底该怎么配置、连接呢??

    开始配置之前,我们要说说iw家族。iw是linux下常用的wifi配置工具,网上有相应的库和源码。全名为wirelessTools。

    配置wifi模块,并连接相应的无线网络过程:主要使用iwpriv命令

    1. 扫描可用的无线网络:

    [cpp] view plaincopy
     
    1. iwlist wifi-name scanning  

    其中wifi-name为无线网卡的名字,比如网卡eth0就是系统默认的网卡名字, wifi-name可以用ifconfig查看,一般为ra0。

    2. 看扫描到的网络信息,按要连接的网络类型进行配置。以下为扫描到的网络:

    [html] view plaincopy
     
    1. iwlist ra0 scanning  
    2. ===>rt_ioctl_giwscan. 11(11) BSS returned, data->length = 1427  
    3. ra0       Scan completed :  
    4.           Cell 01 - Address: C4:CA:D9:1D:9E:A0  
    5.                     Protocol:802.11b/g/n  
    6.                     ESSID:""  
    7.                     Mode:Managed  
    8.                     Frequency:2.412 GHz (Channel 1)  
    9.                     Quality=7/100  Signal level=-87 dBm  Noise level=-82 dBm  
    10.                     Encryption key:off  
    11.                     Bit Rates:54 Mb/s  
    12.           Cell 02 - Address: FC:75:16:A1:A9:16  
    13.                     Protocol:802.11b/g/n  
    14.                     ESSID:"jxj_rd"  
    15.                     Mode:Managed  
    16.                     Frequency:2.452 GHz (Channel 9)  
    17.                     Quality=94/100  Signal level=-53 dBm  Noise level=-92 dBm  
    18.                     Encryption key:on  
    19.                     Bit Rates:54 Mb/s  
    20.                     IE: WPA Version 1  
    21.                         Group Cipher : TKIP  
    22.                         Pairwise Ciphers (2) : TKIP CCMP  
    23.                         Authentication Suites (1) : PSK  
    24.                     IE: IEEE 802.11i/WPA2 Version 1  
    25.                         Group Cipher : TKIP  
    26.                         Pairwise Ciphers (2) : TKIP CCMP  
    27.                         Authentication Suites (1) : PSK  
    28.           Cell 03 - Address: C4:CA:D9:02:2A:70  
    29.                     Protocol:802.11b/g/n  
    30.                     ESSID:""  
    31.                     Mode:Managed  
    32.                     Frequency:2.462 GHz (Channel 11)  
    33.                     Quality=83/100  Signal level=-57 dBm  Noise level=-92 dBm  
    34.                     Encryption key:off  
    35.                     Bit Rates:54 Mb/s  
    36.           Cell 04 - Address: 14:D6:4D:75:CA:9C  
    37.                     Protocol:802.11b/g/n  
    38.                     ESSID:"liangym"  
    39.                     Mode:Managed  
    40.                     Frequency:2.472 GHz (Channel 13)  
    41.                     Quality=100/100  Signal level=-27 dBm  Noise level=-92 dBm  
    42.                     Encryption key:on  
    43.                     Bit Rates:54 Mb/s  
    44.                     IE: WPA Version 1  
    45.                         Group Cipher : CCMP  
    46.                         Pairwise Ciphers (1) : CCMP  
    47.                         Authentication Suites (1) : PSK  
    48.                     IE: IEEE 802.11i/WPA2 Version 1  
    49.                         Group Cipher : CCMP  
    50.                         Pairwise Ciphers (1) : CCMP  
    51.                         Authentication Suites (1) : PSK  

    如上:ESSID项的值即为无线网络的名字,如上的“jxj_rd”等。如果值为空,说明在无线路由勾选了隐藏ESSID的选项。

    ESSID是很关键的,如果被隐藏了,也不是不能连接,而是需要破解,用到其他的工具,非常麻烦。至于如何破解,不是本文叙述的内容,有兴趣的朋友可以网上搜索。

    得到了网络的信息,接下来就是配置连接选项了。以连接"jxj_rd"为例,我们看看具体的过程:

    (1) 设置要连接的网络类型:

    [html] view plaincopy
     
    1. iwpriv ra0 set NetworkType=Infra  


    (2) 设置要连接的无线网络的安全模式:

    [html] view plaincopy
     
    1. iwpriv ra0 set AuthMode=WPA2PSK  


    (3) 设置网络加密方式:(CCMP即为AES)

    [html] view plaincopy
     
    1. iwpriv ra0 set EncrypType=TKIP  


    (4) 设置连接时的密码: ********为加密网络的密码

    [html] view plaincopy
     
    1. iwpriv ra0 set WPAPSK=*******  

    (5) 连接该网络:有两种方式:

        <1> 用iwpriv命令

    [html] view plaincopy
     
    1. iwpriv ra0 set SSID=jxj_rd  

        <2> 用iwconfig命令

    [html] view plaincopy
     
    1. iwconfig ra0 essid jxj_rd  

    至此,如果密码正确,就可以连接上网络jxj_rd了。如果你不放心,可以用命令查看状态:

    [html] view plaincopy
     
    1. iwpriv ra0 connStatus  

    当然,你也可以用iwconfig命令查看状态,这里不再赘述。

  • 相关阅读:
    005. gitlab安装
    004. github使用
    003. git标签
    TS标红和报错解决(优化项)
    catalog连接数据库与sde权限问题
    博客新生企划
    HDU 7105 Power Sum
    HDU 7131 Nun Heh Heh Aaaaaaaaaaa
    BZOJ 1691 挑剔的美食家
    洛谷 4254 Blue Mary 开公司
  • 原文地址:https://www.cnblogs.com/lidabo/p/5062235.html
Copyright © 2020-2023  润新知