linux wifi 数据流,linux下wifi配置

目标:保存配置记录,能自动适配建立连接

开发板系统ubuntu, pstree查看已启动wpa_supplicant, 但是运行wpa_cli保存的时候一直保存不上。

0775684da07216492acb518522729e47.png

查看进程启动,原因在于没有用配置文件启动,于是就把service文件启动改成-c 的参数

root@root:~# ps -aux | grep wpa

root       904  6.6  0.1   7492  2656 ?        Ss   16:28   0:02 /sbin/wpa_supplicant -u -s -O /run/wpa_supplicant

systemd:

[Unit]

Description=WPA supplicant

Before=network.target

[Service]

Type=dbus

BusName=fi.epitest.hostap.WPASupplicant

#ExecStart=/sbin/wpa_supplicant -u -s -O /run/wpa_supplicant

ExecStart=/sbin/wpa_supplicant -u -s -c /etc/wpa_supplicant/wpa_supplicant.conf -i wlan1

[Install]

WantedBy=multi-user.target

Alias=dbus-fi.epitest.hostap.WPASupplicant.service

再用wpa_cli执行,就能正常保存参数到此文件。

$ wpa_cli -i wlan1 scan // 搜索附近wifi网络

$ wpa_cli -i wlan1 scan_result // 打印搜索wifi网络结果

$ wpa_cli -i wlan1 add_network // 添加一个网络连接

连接加密方式是[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][ESS]。

$ wpa_cli -i wlan1 set_network 0 ssid '"name"'

$ wpa_cli -i wlan1 set_network 0 psk '"password"'

$ wpa_cli -i wlan1 enable_network 0

连接加密方式是[WEP][ESS] (wep加密)。

$ wpa_cli -i wlan1 set_network 0 ssid '"name"'

$ wpa_cli -i wlan1 set_network 0 key_mgmt NONE

$ wpa_cli -i wlan1 set_network 0 wep_key0 '"password"'

$ wpa_cli -i wlan1 enable_network 0

连接加密方式是[ESS] (无加密)。

$ wpa_cli -i wlan1 set_network 0 ssid '"name"'

$ wpa_cli -i wlan1 set_network 0 key_mgmt NONE

$ wpa_cli -i wlan1 enable_network 0

分配ip:

root@root:~# dhclient wlan1

保存连接,就可以看到config文件新增了配置数据

$ wpa_cli -i wlan1 save_config

/etc/wpa_supplicant/wpa_supplicant.conf

ctrl_interface=/var/run/wpa_supplicant

ctrl_interface_group=0

eapol_version=2

update_config=1

country=NL

bss_expiration_age=250

network={

ssid="xxxxxxxxxxx"

psk="xxxxxxxxxxx"

priority=4

disabled=1

}

ifconfig查看ip已经生成,能成功联网

wlan1     Link encap:Ethernet  HWaddr 02:0c:43:33:f5:1d

inet addr:192.168.1.120  Bcast:192.168.1.255  Mask:255.255.255.0

UP BROADCAST MULTICAST  MTU:1500  Metric:1

RX packets:447 errors:0 dropped:0 overruns:0 frame:0

TX packets:257 errors:0 dropped:1 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:112662 (112.6 KB)  TX bytes:31272 (31.2 KB)

// to do

1. 保存两个wifi ap 不能自动切换,只能手动切换

设置的时候不需要disable,都是enable状态;并配置priority的优先级,wpa_supplicant启动时会根据

优先级进行连接。启动时source network,可自动获取ip 地址。

root@root:/etc/network/interfaces.d# cat wlan1

# interfaces(5) file used by ifup(8) and ifdown(8)

auto wlan1

iface wlan1 inet dhcp

2. 生成ip后,发现不在同一wifi ap下,pc也能ping通开发板......

root@root:~# wpa_cli -i wlan1 list_network

network id / ssid / bssid / flags

0       TP-LINK_1    any     [DISABLED]

1       TP-LINK_2    any

附 命令参数:

05196f8fdd11d6a4297879d93d20b8ec.png

ed9e3c96da9de96d8c5fc1c903c0a6fa.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值