如何用wap_cli启动wifi

本文介绍了如何通过运行wpa_supplicant和wpa_cli工具来启动和连接WiFi。首先,使用wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf启动服务,并确保其正在运行。接着,利用wpa_cli连接到wlan0接口,通过scan、scan_results、status等命令进行网络扫描、查看结果和检查连接状态。此外,还提供了add_network、set_network等命令来设置网络参数,以及路由修改指令route add default gw 192.168.43.1。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1: 运行 wpa_supplicant first

 先查看wpa_supplicant 选项:

root@hi-target:~# wpa_supplicant -h
usage:
  wpa_supplicant [-BddhKLqqstuvW] [-P<pid file>] [-g<global ctrl>] \
        -i<ifname> -c<config file> [-C<ctrl>] [-D<driver>] [-p<driver_param>] \
        [-b<br_ifname>] [-f<debug file>] [-e<entropy file>] \
        [-o<override driver>] [-O<override ctrl>] \
        [-N -i<ifname> -c<conf> [-C<ctrl>] [-D<driver>] \
        [-p<driver_param>] [-b<br_ifname>] ...]
 
drivers:
  nl80211 = Linux nl80211/cfg80211 //驱动名称
options:
  -b = optional bridge interface name
  -B = run daemon in the background
  -c = Configuration file
  -C = ctrl_interface parameter (only used if -c is not)
  -i = interface name
  -d = increase debugging verbosity (-dd even more)
  -D = driver name (can be multiple drivers: nl80211,wext)
  -e = entropy file
  -g = global ctrl_interface
  -K = include keys (passwords, etc.) in debug output
  -t = include timestamp in debug messages
  -h = show this help text
  -L = show license (BSD)
  -o = override driver parameter for new interfaces
  -O = override ctrl_interface parameter for new interfaces
  -p = driver parameters
  -P = PID file
  -q = decrease debugging verbosity (-qq even less)
  -v = show version
  -W = wait for a control interface monitor before starting
  -N = start describing new interface
example:
  wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf

使用如下命令运行:

wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf

      (use “ps”to make sure wpa_supplicant is running )

2: 运行 wpa_cli 工具连接 wifi

       wpa_cli  -i wlan0

       常用命令如下:

       >scan = to scan the neighboring AP

       >scan_results = show the scan results

       >status = check out the current connection information

       >terminate = terminate wpa_supplicant

       >quit = exit wpa_cli

       >add_network = it will return a network id to you

       >set_network <network id> <variable> <value> = set network variables (shows

list of variables when run without arguments), success will return OK, or will return Fail

       >select_network <network id> = select a network (disable others)

       >disable_network <network id> = disable a network

       >enable_network <network id> = enable a network

3:关联无线网络,不同的无线网络认证方式不同设置:
    1)open(开放式认证方式,分为):
         wpa_cli -iwlan0 set_network 0 ssid '"wlan"'(PS:wlan是无线的ssid号,外面是一对双引号,然后再外面是一对单引号)
         wpa_cli -iwlan0 set_network 0 key_mgmt NONE
    2)wep(分为开放式和共享式):
         wpa_cli -iwlan0 set_network 0 ssid '"wlan"'
         wpa_cli -iwlan0 set_network 0 key_mgmt NONE
         wpa_cli -iwlan0 set_network 0 wep_key0 '"wlan_key"'
         如果是共享式,还需要配置:wpa_cli -iwlan0 set_network 0 auth_alg SHARED(默认是开放式,可以不配置)
     3)WPA/WPA2-Personal认证方式:
           wpa_cli -iwlan0 set_network 0 ssid '"wlan"'
         wpa_cli -iwlan0 set_network key_mgmt WPA-PSK
         wpa_cli -iwlan0 set_network 0 proto WPA(WPA2)
         wpa_cli -iwlan0 set_network 0 pairwise TKIP(CCMP)
         wpa_cli -iwlan0 set_network 0 group TKIP(CCMP)
         wpa_cli -iwlan0 set_network psk '"wlan_password"'
       4)WPA/WPA2-Enterprise认证方式:
          wpa_cli -iwlan0 set_network 0 ssid '"wlan"'
          wpa_cli -iwlan0 set_network 0 key_mgmt WPA-EAP
          wpa_cli -iwlan0 set_network 0 pairwise TKIP(CCMP)
          wpa_cli -iwlan0 set_network group TKIP(CCMP)
          wpa_cli -iwlan0 set_network 0 eap PEAP
          wpa_cli -iwlan0 set_network identity '"username"'
          wpa_cli -iwlan0 set_network 0 password '"password"'
          如果是WPA2-Enterprise认证:需要设置proto:wpa_cli -iwlan0 set_network 0 protoWPA2
       然后开始关联:wpa_cli -iwlan0 enable_network 0
       如果dhcp获取ip地址,需要等关联上之后去dhcp;查看关联状态wpa_cli -iwlan0 status
       如果状态是complete的话:dhcp wlan0
      
  一般操作过程是,先查看无线网络,是否要关联的无线网络可见:
      wpa_cli -iwlan0 scan
      wpa_cli -iwlan0 scan_results
  如果可见,则如上配置network 0,然后关联:
      wpa_cli -iwlan0 enable_network 0
      wpa_cli -iwlan0 status如果关联上,dhcp wlan0
 
  之后如果解关联,需要先释放IP,然后up端口,然后解关联:
     dhcp -r wlan0
    (需要等待一会,等待release完ip)
    然后ifconfig wlan0 up
    最后wpa_cli -iwlan0 disable_network 0
4. udhcpc -i wlan0                                //

    route add  default gw 192.168.43.1   //修改网关

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值