是否可以获取有关 Wi-Fi 网络连接历史的信息?我对机器上次关机前建立的过去连接感兴趣。就我而言,路由器的作用是通过智能手机建立的热点来实现的(我们假设无法从路由器获取此类信息)。Wi-Fi 网卡:(TP-LINK TL-WN722N
外部)。下面我插入了一个我想要达到的示例(数据大小对我来说不是必需的,这只是我对这种功能的印象)。
History of connections:
Foo wireless network, 19-03-2020 11:44, 19-03-2020 13:22, Send: 2123345768, Received: 1627335162
Bar wireless network, 19-03-2020 14:02, 19-03-2020 16:14, Send: 1224385229, Received: 525324143
...
答案1
此命令将帮助您开始
zgrep "Connected to wireless network" /var/log/syslog*
它至少提供日期、时间和网络名称
答案2
您可以查询接口connection
的对象nmcli
-例如
nmcli con show
将列出 NetworkManager 所知道的所有连接,其中包含默认字段
NAME UUID TYPE DEVICE
其他可用字段列出man nm-settings
- 唯一似乎可用的时间戳是上次成功连接的纪元时间。
$ nmcli -f TYPE,TIMESTAMP,NAME con show
TYPE TIMESTAMP NAME
wifi 1584652638 NETGEAR68-5G
wifi 1504171300 BTHub4-NXMQ
ethernet 1537710873 Ethernet connection 1
wifi 1582891130 NETGEAR68
使用 GNU awk 进行后期处理成您想要的格式:
$ nmcli -f TYPE,TIMESTAMP,NAME con show | gawk '$1 == "wifi" {
printf "%s wireless network,%s\n", $3, strftime("%d-%m-%Y %H:%M",$2)
}'
NETGEAR68-5G wireless network,19-03-2020 17:32
BTHub4-NXMQ wireless network,31-08-2017 05:21
NETGEAR68 wireless network,28-02-2020 06:58
据我所知,连接的持续时间以及发送和接收的字节数都没有记录。
答案3
zgrep "WPA: " /var/log/syslog*
提供有关所有连接尝试的信息(包括失败的尝试,例如不是连接到我们的网络或在 wifi 密码更改后)。