Linux系统下主要使用的WiFi配置工具有两种:
1. wireless tools:主要配置WEP加密的WiFi,现在iwconfig之类的命令已经被iw所替代了。本文中也部分的使用了iw进行WiFi的配置,如果想知道更多相关的功能,可以在shell窗口输入iw help查看。(依赖libnl库)
2. wpa_supplicant: 主要配置WPA和WPA2加密的WiFi,它被设计成一个运行在后台的守护进程。可以看成两个主要可执行工具:
wpa_supplicant:后台运行,相当于服务端。
wpa_cli:前端来进行搜索,设置和连接网络,相当于客户端。
下面将使用两种配置工具通过命令行分别对Linux进行WiFi配置。
一、iw
1.首先进入linux的终端或串口打印的xshell终端,用户需要root权限。
2.查找可用网卡:
输入以上命令后,你会得到以下类似节点:
- phy#0
- Interface p2p0
- ifindex 4
- wdev 0x2
- addr 6a:4e:05:07:70:d6
- type managed
- txpower 42949572.96 dBm
- Interface wlan0
- ifindex 3
- wdev 0x1
- addr 68:4e:05:07:70:d6
- type managed
- txpower 42949572.96 dBm
复制代码- //已激活状态,< >内包含UP关键字。
- 3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
- link/ether 68:4e:05:07:70:d6 brd ff:ff:ff:ff:ff:ff
-
- //未激活状态,< >内不含UP关键字。
- 3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
- link/ether 68:4e:05:07:70:d6 brd ff:ff:ff:ff:ff:ff
复制代码 如果是还没激活的状态,我们可以选用下面两条语句其中一条对网卡进行激活。- ip link set wlan0 up
- ifconfig wlan0 up
复制代码 4.搜索附近网络- iw wlan0 scan | grep SSID
复制代码 iw scan可以将无线网络的具体信息全部展示出来,我们加上了grep语句,抓取关键字符串SSID(网络名字),将其打印出来。
5.输入账户密码
- iw wlan0 connect <SSID> keys d:1:<PSW> //SSID是WiFi名,PSW是密码
复制代码输入以上命令后,我这里并没有出现报错的信息,也没有其他的任何打印,个人觉得应该是连接成功了;但是没有网,应该是wlan0没有获取到IP,后面有说到如何获取IP。 另一种说的是会有报错信息: - command failed: Operation not supported (-95)
复制代码-D <driver name> 驱动程序名字(nl80211或west)
-i <interface name> 网卡名字
- c <conf file dir> 配置文件
-B 后台运行
2.搜索附近网络 - wpa_cli -i wlan0 scan
- wpa_cli -i wlan0 scan_result
复制代码 第一条命令执行搜索功能,第二条命令只有展示功能,没有搜索功能
从这里就能看到各个WiFi的具体信息,也能看到他们的加密方式有WPA,WPA2和ESS,就是没有WEP,所以刚才连不了(笑)。最后一列就是我们需要的SSID(WiFi名字)
|