使用 nmcli
命令创建 Wi-Fi 热点并设置固定 IP 地址
一、前言
在一些场景下,我们需要将计算机或嵌入式设备(例如 NVIDIA Orin NX)转换为 Wi-Fi 热点,以便其他设备(如手机、笔记本等)能够连接并使用该设备提供的网络连接。通过 nmcli
命令,我们可以在 Linux 系统中非常方便地创建一个无线 AP(Access Point)热点。
本文将介绍如何使用 nmcli
创建 Wi-Fi 热点,并进一步讲解如何设置固定 IP 地址,让连接到热点的设备始终获得指定的 IP 地址。
二、安装 NetworkManager
首先,确保你的系统已安装 NetworkManager
和相关的工具。如果未安装,可以通过以下命令进行安装:
sudo apt update
sudo apt install network-manager
三、使用 nmcli
命令创建 Wi-Fi 热点
1. 创建热点
nmcli
是 NetworkManager 提供的命令行工具,可以让你轻松管理网络连接。使用它创建 Wi-Fi 热点时,我们可以通过以下命令:
sudo nmcli device wifi hotspot ifname wlan0 con-name my-hostapt ssid <zouxftest7wifi名字> band bg password 12345678 channel 5
这条命令包含了以下参数:
ifname wlan0
:指定无线网卡接口(例如wlan0
)用于创建热点。con-name my-hostapt
:设置连接名称为my-hostapt
。ssid zouxftest7
:设置热点的 SSID(即 Wi-Fi 名称)为zouxftest7
。band bg
:指定 Wi-Fi 工作频段为bg
(即 2.4 GHz)。可以选择bg
、a
或ac
等。password 12345678
:设置 Wi-Fi 热点密码为12345678
。channel 5
:设置 Wi-Fi 使用的频道为 5。
执行该命令后,你的设备就会开启一个 Wi-Fi 热点,其他设备可以通过 SSID zouxftest7
连接到这个网络。
2. 启动/关闭 Wi-Fi 热点
在创建了无线 AP 热点之后,你可以通过以下命令来启动和关闭热点:
启动热点:
sudo nmcli connection up my-hostapt
关闭热点:
sudo nmcli connection down my-hostapt
这些命令分别会启动或关闭之前创建的热点连接。
四、设置固定 IP 地址
如果你希望连接到热点的设备始终分配固定的 IP 地址,通常需要配置 DHCP 服务。以下是如何为热点配置固定 IP 地址的步骤。
1. 配置热点固定 IP
首先,你需要为热点设备设置静态 IP 地址。执行以下命令来修改连接设置,使其使用静态 IP 地址:
sudo nmcli connection modify my-hostapt ipv4.addresses 192.168.1.1/24 ipv4.method manual
这条命令的含义如下:
ipv4.addresses 192.168.1.1/24
:将热点的 IP 地址固定为192.168.1.1
,并设置子网掩码为255.255.255.0
(即/24
)。ipv4.method manual
:设置 IPv4 地址手动配置,而不是通过 DHCP 获取。
然后,使用以下命令重启热点连接,以应用更改:
sudo nmcli connection down my-hostapt
sudo nmcli connection up my-hostapt
通过这些命令,热点的 IP 地址将固定为 192.168.1.1,并且其他设备连接时会获取该静态 IP 地址。
2. 配置 DHCP 服务(可选)
如果你希望连接到该热点的客户端设备能够自动获取 IP 地址,可以使用 dnsmasq
来设置 DHCP 服务。
安装 dnsmasq
sudo apt install dnsmasq
配置 dnsmasq
编辑 dnsmasq
配置文件 /etc/dnsmasq.conf
:
sudo nano /etc/dnsmasq.conf
添加以下配置:
interface=wlan0 # 热点的网卡接口
dhcp-range=192.168.1.100,192.168.1.150,12h # 分配给客户端的 IP 范围
dhcp-option=3,192.168.1.1 # 网关地址设置为 192.168.1.1
dhcp-option=6,8.8.8.8 # 使用 Google 的 DNS
配置 DHCP 服务
dhcp-range=192.168.1.100,192.168.1.150,12h
:为连接的设备分配 IP 范围,从192.168.1.100
到192.168.1.150
,租期为 12 小时。dhcp-option=3,192.168.1.1
:将网关地址设置为192.168.1.1
,这是你的热点设备的 IP 地址。dhcp-option=6,8.8.8.8
:指定 DNS 服务器为8.8.8.8
(Google DNS)。
启动 dnsmasq
配置完毕后,启动 dnsmasq
服务:
sudo systemctl restart dnsmasq
3. 固定 IP 地址分配(可选)
如果你希望某个特定设备始终分配固定 IP 地址,可以根据设备的 MAC 地址绑定 IP。编辑 /etc/dnsmasq.conf
文件,添加如下内容:
dhcp-host=<设备MAC地址>,192.168.1.101
例如:
dhcp-host=AA:BB:CC:DD:EE:FF,192.168.1.101
保存文件后,重启 dnsmasq
:
sudo systemctl restart dnsmasq
这样,MAC 地址为 AA:BB:CC:DD:EE:FF
的设备将始终获得 IP 地址 192.168.1.101
。
五、总结
通过 nmcli
命令,我们可以轻松创建一个 Wi-Fi 热点,并为其配置静态 IP 地址。同时,通过配置 DHCP 服务(如 dnsmasq
),我们可以确保连接到该热点的客户端设备自动获取 IP 地址。
- 使用
nmcli
创建 Wi-Fi 热点,并设置 SSID、密码、频道等参数。 - 设置热点设备的固定 IP 地址(如
192.168.1.1
)。 - 配置
dnsmasq
提供 DHCP 服务,为客户端设备分配动态 IP 地址,或使用 MAC 地址绑定固定 IP。
通过这种方式,可以轻松地在 Linux 设备上创建一个功能齐全的无线热点,并确保客户端设备的网络设置符合需求。