• wpa_cli 连接 wifi(转)


    wpa_cli 连接 wifi

    转自:http://hi.baidu.com/yyangjjun/item/9dfe8e175439fc7a1009b5ba
     
    1: run wpa_supplicant first

    use the following command:
    wpa_supplicant -Dwext -iwlan0 -C/data/system/wpa_supplicant -c/data/misc/wifi/wpa_supplicant.conf

    2: Run the command line tool wpa_cli to connect wifi

    wpa_cli -p/data/system/wpa_supplicant -iwlan0
    Then , it will let you set network interactively 

    some common command:
    >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
    > set_network 0 priority 0
    > list_network
    > save_config

    3: example
    for AP that doesn`t have encryption
    >add_network      (It will display a network id for you, assume it returns 0)
    >set_network 0 ssid “666”
    >set_network 0 key_mgmt NONE
    >enable_network 0
    >quit

    if normal, we have connectted to the AP “666”, now you need a IP to access internet, for example:
    dhcpcd wlan0
    if everything is ok, it will get an IP & can access internet

    for AP that has WEP
    >add_network      (assume returns 1)
    >set_network 1 ssid “666”
    >set_network 1 key_mgmt NONE
    >set_network 1 wep_key0 “your ap passwork”(if usting ASCII, it need double quotation marks, if using hex, then don`t need the double quotation marks)
    >set_network 1 wep_tx_keyidx 0
    >select_network 1  (optional, remember, if you are connecting with another AP, you should select it to disable the another)
    >enable_network 1
    and then ,get an IP to access internet

    for AP that has WPA-PSK/WPA2-PSK
    >add_network      (assume returns 2)
    >set_network 2 ssid “666”
    >set_network 2 psk “your pre-shared key”
    >select_network 2  (optional, remember, if you are connecting with another AP, you should select it to disable the another)
    >enable_network 2

    there is still some others options to be set, but wpa_supplicant will choose the default for you, the default will include all we need to set and then ,get an IP to access internet

    命令执行后,wpa_cli 会输出连接的过程信息。如果一切正确,则最后后输出:
    <2>CTRL-EVENT-CONNECTED - Connection to xx:xx:xx:xx:xx:xx completed (reauth) [id=0 id_str=]

    获取IP地址
    用 quit
    命令退出wpa_cli 。然后用
    dhclient wlan0
    命令获取IP地址。
  • 相关阅读:
    在Linux上使用C语言编程获取IPv4地址及子网掩码
    使用gdb进行写操作
    [中英对照]The Art Of Reporting Bugs | 报bug的艺术
    [中英对照]Introduction to Remote Direct Memory Access (RDMA) | RDMA概述
    Intel万兆网卡背靠背连接ping不通那点事儿
    [中英对照]The sysfs Filesystem | sysfs文件系统
    图说单播,组播,广播,选播和地域播
    Ubuntu双网卡不双待攻略
    反汇编容易反编译难
    PHP之路——微信公众号授权获取用户信息
  • 原文地址:https://www.cnblogs.com/little-ant/p/3730148.html
Copyright © 2020-2023  润新知