Linux系统中使用linux-wifi-hotspot工具开启网络热点
Posted Mculover666
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统中使用linux-wifi-hotspot工具开启网络热点相关的知识,希望对你有一定的参考价值。
更好的干净纯洁阅读体检请访问个人网站:Linux系统中使用linux-wifi-hotspot工具开启热点。
本文描述如何在Linux系统中使用linux-wifi-hotspot工具开启网络热点。
一、需求
WIFI设备需要支持AP模式,使用命令查看:
iw list
在接口列表中找到有AP模式即可:
Supported interface modes:
* IBSS
* managed
* AP
* P2P-client
* P2P-GO
* P2P-device
二、配置原理
设备接入点由两个部分组成:
- 设置WIFI链路层:无线客户端可以和计算机的软件接入点关联并交换IP数据包
- 设置本机网络:在自己的网络中和无线客户端之间中继IP数据包
1. WIFI链路层
实际的WIFI链路是通过hostapd软件包建立的,具有WPA2支持。
2. 本机网络配置
有两种方法实现:
- 网桥:无线客户端将使用相同的网络接口和相同的子网。
- NAT:通过IP转发和DHCP服务,无线客户端将使用专用子网,类似于连接到互联网的普通Wi-Fi路由器。
三、工具
linux-wifi-hostapd软件包提供了脚本,可以创建用于互联网共享的网桥或NAT接入点,它结合了hostapd、dnsmasq、iptables,以实现接入点的良好运行,提供命令行工具和GUI工具。
工具开源仓库:linux-wifi-hotspot。
1. 安装
1.1. 软件包安装
- Ubuntu
sudo add-apt-repository ppa:lakinduakash/lwh
sudo apt install linux-wifi-hotspot
- Arch Linux
yay -S linux-wifi-hotspot
1.2. 源码编译安装
- RK3399开发板(rootfs based ubuntu)
(1)安装必须的包
sudo apt install -y libgtk-3-dev build-essential gcc g++ pkg-config make hostapd libqrencode-dev libpng-dev
(2)拉取源码(到开发板)
git clone https://github.com/lakinduakash/linux-wifi-hotspot
(3)编译(在开发板上)
cd linux-wifi-hotspot
make
(4)安装
sudo make install
2. 命令行工具的使用
创建一个NAT虚拟网络的方法。
(1)修改配置文件
sudo vim /etc/create_ap.conf
配置文件内容如下:
CHANNEL=default
GATEWAY=192.168.12.1
WPA_VERSION=2
ETC_HOSTS=0
DHCP_DNS=gateway
NO_DNS=0
NO_DNSMASQ=0
HIDDEN=0
MAC_FILTER=0
MAC_FILTER_ACCEPT=/etc/hostapd/hostapd.accept
ISOLATE_CLIENTS=0
SHARE_METHOD=nat
IEEE80211N=0
IEEE80211AC=0
HT_CAPAB=[HT40+]
VHT_CAPAB=
DRIVER=nl80211
NO_VIRT=0
COUNTRY=
FREQ_BAND=2.4
NEW_MACADDR=
DAEMONIZE=0
NO_HAVEGED=0
WIFI_IFACE=wlan0
INTERNET_IFACE=lan1
SSID=Mculover666
PASSPHRASE=12345678
USE_PSK=0
其中比较重要的配置:
- FREQ_BAND:热点频段
- WIFI_IFACE:无线网卡的设备节点
- INTERNET_IFACE:转发网卡的设备节点
- SSID:热点名称
- PASSPHRASE:热点密码
(2)开启热点
sudo create_ap --config /etc/create_ap.conf
开启日志如下:
Config dir: /tmp/create_ap.wlan0.conf.DPOzXpgH
PID: 2481
Network Manager found, set ap0 as unmanaged device... DONE
Creating a virtual WiFi interface... ap0 created.
Sharing Internet using method: nat
hostapd command-line interface: hostapd_cli -p /tmp/create_ap.wlan0.conf.DPOzXpgH/hostapd_ctrl
Configuration file: /tmp/create_ap.wlan0.conf.DPOzXpgH/hostapd.conf
Using interface ap0 with hwaddr 72:f7:54:86:d1:11 and ssid "Mculover666"
ap0: interface state UNINITIALIZED->ENABLED
ap0: AP-ENABLED
(3)开机自启
systemctl enable create_ap
3. 图形界面工具的使用
wihotspot
4. 测试结果
参考链接
以上是关于Linux系统中使用linux-wifi-hotspot工具开启网络热点的主要内容,如果未能解决你的问题,请参考以下文章
Linux系统中使用linux-wifi-hotspot工具开启网络热点