RK3568 wifi使用(使用Linux指令操作)

devtools/2025/2/2 13:15:15/

文章目录

  • 一、wifi扫描指令
      • 1. `iwlist wlan0 scan`
      • 2. `iw dev wlan0 scan`
      • 总结
  • 二、连接wifi指令
      • 1. 使用 `nmcli`(NetworkManager CLI)
        • 连接 Wi-Fi 网络的步骤:
        • 备注:
      • 2. 使用 `iwconfig`
        • 连接 Wi-Fi 网络的步骤:
        • 备注:
      • 3. 使用 `wpa_supplicant`
        • 连接 Wi-Fi 网络的步骤:
        • 备注:
      • 4. 使用 `iw` 和 `dhclient`(不常用)
      • 总结


wifi_9">一、wifi扫描指令

iwlist wlan0 scaniw dev wlan0 scan 都是用于在 Linux 上扫描 Wi-Fi 网络的命令,但它们的功能和使用方法略有不同。下面详细讲解这两个命令:

1. iwlist wlan0 scan

这个命令使用 iwlist 工具来扫描 Wi-Fi 网络,适用于较老的无线网络管理工具。

  • 命令功能

    • 扫描可用的 Wi-Fi 网络,并列出它们的详细信息。
    • 该命令返回一个包含所有扫描到的 Wi-Fi 网络的列表,包括网络的 SSID、信号强度、加密方式、信道频率等信息。
  • 使用方法

    iwlist wlan0 scan
    
    • wlan0:无线接口名,通常是你的 Wi-Fi 网卡的名称,可能会有所不同,具体名称可以通过 ifconfigip a 命令查看。
  • 输出信息
    执行该命令后,你会看到类似下面的输出:

    wlan0     Scan completed :Cell 01 - Address: D8:32:14:7B:E5:15ESSID:"Tenda_7BE510"Protocol:IEEE 802.11ACMode:MasterFrequency:5.18 GHz (Channel 36)Encryption key:onBit Rates:1.3 Gb/sQuality=67/100  Signal level=67/100Cell 02 - Address: A4:56:02:8C:21:75ESSID:"360WiFi-8C2175"Protocol:IEEE 802.11bgnMode:MasterFrequency:2.437 GHz (Channel 6)Encryption key:onQuality=31/100  Signal level=33/100
    
    • Cell:每个网络的标识符。
    • ESSID:网络的名称(SSID)。
    • Frequency:网络的工作频率(例如:2.437 GHz 或 5.18 GHz)。
    • Signal level:信号强度,通常以 dBm 或百分比的形式给出,表示网络的信号质量。
    • Encryption key:表示是否启用了加密(如 WPA2)。
    • Quality:信号质量的百分比。
  • 优缺点

    • 优点:适用于较老的无线驱动程序和工具集,支持大多数无线网卡。
    • 缺点:输出格式比较冗长,功能比较基础,没有太多高级配置选项。

2. iw dev wlan0 scan

这个命令使用 iw 工具来扫描 Wi-Fi 网络,它是一个较新的工具,取代了 iwlist,用于操作 Linux 上的无线设备。

  • 命令功能

    • 同样是扫描附近的 Wi-Fi 网络,并列出它们的详细信息,但提供的输出更为简洁且格式化更现代。
    • 通过 iw 工具,你还可以进行更多无线设备的管理操作(如更改信道、设置无线参数等)。
  • 使用方法

    iw dev wlan0 scan
    
    • wlan0:无线接口名,同样可以通过 ifconfigip a 命令查看。
  • 输出信息
    输出格式较为简洁,通常会像下面这样:

    BSS D8:32:14:7B:E5:15(on wlan0)TSF: 1234567890 usec (0d, 12:34:56)freq: 5180beacon interval: 100 TUscapabilities: 0x11signal: -47 dBmlast seen: 123 ms agoInformation elements:SSID: Tenda_7BE510RSN: WPA2
    BSS A4:56:02:8C:21:75(on wlan0)TSF: 1234567891 usec (0d, 12:34:57)freq: 2437beacon interval: 100 TUscapabilities: 0x11signal: -70 dBmlast seen: 100 ms agoInformation elements:SSID: 360WiFi-8C2175RSN: WPA2
    
    • BSS:代表一个基本服务集(Basic Service Set),即一个无线网络。
    • SSID:网络的名称。
    • Signal:信号强度,通常以 dBm 表示。
    • Beacon interval:信标间隔,指的是设备每发送一次信标帧的时间间隔,单位为微秒(μs)。
    • Capabilities:网络支持的功能,如加密类型等。
    • Frequency:网络的频段(如 5180 MHz 或 2437 MHz)。
  • 优缺点

    • 优点:输出格式简洁、现代,易于机器处理。iw 提供更多的无线控制功能,适合高级用户。
    • 缺点:不支持旧版无线驱动或某些老旧的无线网卡,可能需要较新的驱动程序。

总结

  • iwlist wlan0 scan:使用较老的 iwlist 工具进行扫描,适用于大部分旧版无线网卡,提供详细的扫描信息,输出格式较为冗长。
  • iw dev wlan0 scan:使用较新的 iw 工具进行扫描,输出简洁、现代,适用于较新的无线网卡,功能更为丰富和灵活。

在选择使用哪条命令时,可以根据你的系统和设备的支持情况以及个人偏好来决定。如果你使用的是较新的无线网卡和驱动,推荐使用 iw dev wlan0 scan。如果遇到兼容性问题或使用较老的设备,iwlist wlan0 scan 可能是一个更好的选择。

wifi_111">二、连接wifi指令

在 Linux 中连接 Wi-Fi 网络,通常使用的是以下命令和工具:nmcliiwconfigwpa_supplicant。每个工具的适用情况不同,下面我将详细介绍几种常用的连接 Wi-Fi 网络的方法。

1. 使用 nmcli(NetworkManager CLI)

nmcli 是 NetworkManager 提供的命令行工具,用于管理网络连接,包括无线网络的连接。它提供了简单、直接的方式来连接到 Wi-Fi。

连接 Wi-Fi 网络的步骤:
  1. 列出可用的 Wi-Fi 网络

    nmcli device wifi list
    
  2. 连接到 Wi-Fi 网络
    假设你要连接到一个名为 MyWiFi 的 Wi-Fi 网络,密码是 password123,可以使用以下命令:

    nmcli device wifi connect MyWiFi password password123
    
    • MyWiFi 是网络的 SSID(即 Wi-Fi 网络的名称)。
    • password123 是 Wi-Fi 网络的密码。
  3. 检查连接状态

    nmcli connection show
    

    这条命令可以查看当前连接的所有网络。

备注:
  • 如果系统中没有安装 nmcliNetworkManager,你需要先安装它。
    sudo apt install network-manager
    

2. 使用 iwconfig

iwconfig 是一个较旧的工具,通常与无线网卡驱动一起使用,用于配置无线接口。

连接 Wi-Fi 网络的步骤:
  1. 扫描可用的 Wi-Fi 网络

    sudo iwlist wlan0 scan
    
  2. 连接到 Wi-Fi 网络
    假设你要连接到 MyWiFi 网络,密码是 password123,可以使用如下命令:

    sudo iwconfig wlan0 essid "MyWiFi" key s:password123
    
    • wlan0 是无线网卡的接口名称,"MyWiFi" 是 SSID,password123 是密码。
  3. 获取 IP 地址
    使用 dhclient 获取动态 IP 地址:

    sudo dhclient wlan0
    
备注:
  • iwconfig 是一个较老的工具,支持一些基础的 Wi-Fi 配置,但不如 nmcli 方便和灵活。
  • 你需要确保你的无线接口(如 wlan0)是启用的。

3. 使用 wpa_supplicant

wpa_supplicant 是一个支持 WPA/WPA2 加密的工具,适用于需要更多配置的场景(如无图形界面的系统,或你需要手动管理 Wi-Fi 连接时)。

连接 Wi-Fi 网络的步骤:
  1. 创建配置文件
    创建一个名为 wpa_supplicant.conf 的文件,内容类似:

    network={ssid="MyWiFi"psk="password123"
    }
    
  2. 使用 wpa_supplicant 启动连接
    使用以下命令启动 wpa_supplicant

    sudo wpa_supplicant -B -i wlan0 -c /path/to/wpa_supplicant.conf
    
    • -B 表示在后台运行 wpa_supplicant
    • -i wlan0 是无线接口的名称。
    • -c /path/to/wpa_supplicant.conf 是你创建的配置文件路径。
  3. 获取 IP 地址
    使用 dhclient 获取动态 IP 地址:

    sudo dhclient wlan0
    
备注:
  • wpa_supplicant 是一个高级工具,适用于需要手动管理无线连接的场景,特别是在没有图形界面的系统中。
  • 配置文件通常需要根据网络的加密类型(如 WPA2、WEP)进行调整。

4. 使用 iwdhclient(不常用)

你也可以手动配置 Wi-Fi 网络,通过 iw 工具来配置无线接口和网络。以下是基本步骤:

  1. 扫描 Wi-Fi 网络

    sudo iw dev wlan0 scan
    
  2. 连接到 Wi-Fi 网络
    假设你要连接到一个无密码的网络,可以使用 iw 配合 dhclient 来连接。

    sudo iw dev wlan0 connect MyWiFi
    sudo dhclient wlan0
    

    如果网络有密码(例如 WPA2),你还需要使用 wpa_supplicant 来处理加密连接。

总结

  • nmcli:推荐使用,功能全面、易于操作,适用于大多数现代 Linux 系统。
  • iwconfig:适用于一些基础的无线配置,但不如 nmcli 灵活。
  • wpa_supplicant:适用于手动管理无线连接的高级配置,特别是在没有图形界面的环境中。
  • iw:主要用于扫描和管理无线设备的低级工具,可以与其他工具结合使用。

如果你的系统中安装了 NetworkManager,建议使用 nmcli 进行 Wi-Fi 连接,它最为简单和高效。如果没有 nmcli,你可以使用 iwconfigwpa_supplicant 来手动管理无线网络。


http://www.ppmy.cn/devtools/155447.html

相关文章

力扣面试150 快乐数 循环链表找环 链表抽象 哈希

Problem: 202. 快乐数 👩‍🏫 参考题解 Code public class Solution {public int squareSum(int n) {int sum 0;while(n > 0){int digit n % 10;sum digit * digit;n / 10;}return sum;}public boolean isHappy(int n) {int slow n, fast squa…

vscode+WSL2(ubuntu22.04)+pytorch+conda+cuda+cudnn安装系列

最近在家过年闲的没事,于是研究起深度学习开发工具链的配置和安装,之前欲与天公试比高,尝试在win上用vscodecuda11.6vs2019的cl编译器搭建cuda c编程环境,最后惨败,沦为笑柄,痛定思痛,这次直接和…

OpenAI推出o3-mini推理模型,首次免费开放,性能超越o1,AIME测试准确率高达87.3%

OpenAI在2025年初推出了一款新的推理模型o3-mini,这款模型标志着公司在提升性能的同时也降低了成本,并且首次向免费用户提供访问权限。o3-mini是OpenAI推理系列中最新、最具成本效益的模型,在科学、数学、编程等领域的性能显著超越了之前的o1…

LeetCode:322.零钱兑换

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的! 代码随想录 LeetCode:322.零钱兑换 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount …

Java 9模块开发:Eclipse实战指南

在上一篇教程中,我们已经了解了Java 9模块的基础知识。今天,我们将深入探讨如何使用Eclipse IDE来开发和运行Java 9模块。Eclipse作为一款强大的开发工具,为Java开发提供了丰富的功能支持。不过需要注意的是,对于Eclipse 4.7&…

【机器学习】深入无监督学习分裂型层次聚类的原理、算法结构与数学基础全方位解读,深度揭示其如何在数据空间中构建层次化聚类结构

🌟个人主页:落叶 🌟当前专栏: 机器学习专栏 目录 引言 分裂型层次聚类(Divisive Hierarchical Clustering) 1. 基本原理 2. 分裂型层次聚类的算法步骤 Step 1: 初始化 Step 2: 选择分裂的簇 Step 3: 执行分裂操作…

TCP UDP Service Model

主机A的TCP层可以通过发送FIN消息来关闭链接,主机B确认A不再有数据发送,并停止从A接收新数据。 B完成向A发送数据,并发送自己的FIN消息,告知A它们可以关闭链接。 主机A通过发送ACK作为回应,确认链接现已关闭。 &…

P1158

题意 就是给你机器的工作半径&#xff0c;每次工作要花钱&#xff0c;就是工作半径的平方&#xff0c;问你怎么花最少的钱&#xff0c;拦截所有导弹。 思路 每次通过我们的公式计算距离&#xff0c;存入并排序&#xff0c;最后即可得出答案。 代码 #include <bits/stdc…