当前位置: 首页 > article >正文

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

文章目录

  • 一、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扫描指令

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:15
                        ESSID:"Tenda_7BE510"
                        Protocol:IEEE 802.11AC
                        Mode:Master
                        Frequency:5.18 GHz (Channel 36)
                        Encryption key:on
                        Bit Rates:1.3 Gb/s
                        Quality=67/100  Signal level=67/100
              Cell 02 - Address: A4:56:02:8C:21:75
                        ESSID:"360WiFi-8C2175"
                        Protocol:IEEE 802.11bgn
                        Mode:Master
                        Frequency:2.437 GHz (Channel 6)
                        Encryption key:on
                        Quality=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: 5180
        beacon interval: 100 TUs
        capabilities: 0x11
        signal: -47 dBm
        last seen: 123 ms ago
        Information elements:
          SSID: Tenda_7BE510
          RSN: WPA2
    BSS A4:56:02:8C:21:75(on wlan0)
        TSF: 1234567891 usec (0d, 12:34:57)
        freq: 2437
        beacon interval: 100 TUs
        capabilities: 0x11
        signal: -70 dBm
        last seen: 100 ms ago
        Information elements:
          SSID: 360WiFi-8C2175
          RSN: 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指令

在 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.kler.cn/a/529991.html

相关文章:

  • C语言中的线程本地变量
  • taro遇到的问题
  • deep generative model stanford lecture note2 --- autoregressive
  • MySQL 函数
  • curope python安装
  • TensorFlow 示例摄氏度到华氏度的转换(一)
  • 每日一题——用两个栈实现队列
  • 一分钟深挖@Value注解和@ConfigurationProperities注解的区别
  • 基于SpringBoot的智慧康老疗养院管理系统的设计与实现(源码+SQL脚本+LW+部署讲解等)
  • Spring Boot Web项目全解析:Thymeleaf语法
  • 『 C 』 `##` 在 C 语言宏定义中的作用解析
  • 2.[网鼎杯 2020 朱雀组]phpweb
  • Android 开发:新的一年,新的征程
  • 【5. C++ 变量作用域及其深入探讨】
  • 2 [GitHub遭遇严重供应链投毒攻击]
  • 城市道路车辆自行车摩托车公交车检测数据集VOC+YOLO格式5236张5类别
  • FlashAttention v1 论文解读
  • Word List 2
  • 二叉树——102,107,199,637
  • 云原生(五十三) | SQL查询操作
  • 机器学习--概览
  • 使用等宽等频法进行数据特征离散化
  • C++, STL容器 list:双向链表深度解析
  • MLM之MiniCPM-o:MiniCPM-o的简介(涉及MiniCPM-o 2.6和MiniCPM-V 2.6)、安装和使用方法、案例应用之详细攻略
  • 论文阅读:Realistic Noise Synthesis with Diffusion Models
  • 【B站保姆级视频教程:Jetson配置YOLOv11环境(六)PyTorchTorchvision安装】