Linux 中 WIFI 和热点的使用
之前一直在 ubuntu 的图形界面中使用,突然需要在 ARM 板上打开热点,一时给弄蒙了,在此记录一下
一、网卡命令
显示所有网络信息
sudo ip link show
关闭或打开网络
sudo ip link set wlan0 down
sudo ip link set wlan0 up
激活或启动网络
sudo ifconfig wlan0 up
设置 ip 地址
sudo ifconfig wlan0 192.168.1.102
查看是否支持 ap 模式
sudo iw dev wlan0 info
二、WIFI 连接工具
在 linux 中管理 WIFI 的工具有很多,比如 wpa_supplicant、iw、netctl、connmanctl等
connmanctl 工具
# 进入管理工具
sudo connmanctl
# 是能wifi
connmanctl enable wifi
# 开启代理
agent on
# 扫描 wifi
scan wifi
# 列出扫描的wifi列表,包括已连接的
services
# 连接wifi
connect <UUID>
# 断开wifi
disconnect <UUID>
# 检查当前连接的网络信息
info <UUID>
# 删除连接记录
remove <UUID>
# 退出
exit
三、热点使用
打开热点主要使用的工具是 hostapd
编写热线
/etc/hostapd/hostapd.conf配置文件,文件名可以任意interface=wlan0 # 你的无线接口名
driver=nl80211 # 无线驱动类型
ssid=MyHotspot # 热点名称
hw_mode=g # 工作模式,g为802.11g,n为802.11n
channel=6 # 无线频道
macaddr_acl=0 # 不限制MAC地址
auth_algs=1 # 认证算法
ignore_broadcast_ssid=0
wpa=2 # WPA2安全
wpa_passphrase=MyPassPhrase # 密码
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
注意: 通畅情况下这么配置没问题,需要注意的是不热模块之间可能有细微的区别,主要查看对应的手册
启动热点
sudo hostapd -B /etc/hostapd/hostapd.conf
注意:此时启动的热点可以扫描到,但是无法连接,因为热点还无法为设备自动分配ip
四、动态 ip 分配
目前常用的工具有 dnsmasq 和 udhcp,可以更具自己的需要进行选择,需要注意的是这两个工具都分为服务端和客户端,想要为热点分配 动态 ip 时,工具都要作为服务端才行
udhcp 使用
安装 udhcp
安装的过程这里就不介绍了,可以参考这位大佬的博客:https://www.cnblogs.com/schips/p/12132115.html在 /etc/udhcpd.conf 中配置服务端信息,文件不存在创建即可
# The start and end of the IP lease block
start 192.168.1.20 #default: 192.168.0.20 客户端分配的地址范围
end 192.168.1.25 #default: 192.168.0.254
# The interface that udhcpd will use
interface wlan0 #default: eth 0 #目标板子上的无线网卡wlan0
#Examles
opt dns 222.201.130.30 222.201.130.33 #dns服务器
option subnet 255.255.255.0
opt router 192.168.1.10 #wlan的 ip地址,做为网关地址
option dns 192.168.1.10 # appened to above DNS servers for a total of 3
option domain local
option lease 864000 # 10 days of seconds
启动服务
sudo udhcpd
主要:这个和热点的启动无先后顺序,但是需要启动动态 ip 分配热点才能连接,但是会发现此时的热点还不能上网,需要进行 ip 转发才行
五、IP 转发
配置 ip 转发
# 检查是否启用了IP转发
sudo sysctl net.ipv4.ip_forward # 临时启动转发
sudo sysctl -w net.ipv4.ip_forward=1 # 永久启动转发,文件不存在时创建即可
sudo vi /etc/sysctl.conf
# 在文件中添加
net.ipv4.ip_forward=1
# 立即生效
sudo sysctl -p /etc/sysctl.conf
# 检查是否应用
cat /proc/sys/net/ipv4/ip_forward
设置 NAT 规则
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
参考链接
arm linux 移植 udhcp 与 使用:https://www.cnblogs.com/schips/p/12132115.html
Linux 中 WIFI 和热点的使用的更多相关文章
- 如何在Kali Linux中搭建钓鱼热点
文中提及的部分技术可能带有一定攻击性,仅供安全学习和教学用途,禁止非法使用! 0×00 实验环境 操作系统:Kali 1.0 (VM) FackAP: easy-creds 硬件:NETGEAR wg ...
- kali下搭建WiFi钓鱼热点
在linux下建立无线热点并不像在windows下开启网络共享或者使用无线网卡驱动设置AP模式即可. linux下的无线共享要用到两个软件:hostapd(创建无线热点).dnsmasq(dns服务和 ...
- [知识整理]Linux系统WIFI知识的一些整理
前段时间接触了wifi,主要是在linux系统下做预研.开发.本文根据个人收集资料及研究经验做了一些基本入门级别的引子,旨在对wifi有一个很基础的入门的认知,比如知道wifi模块硬件接口有哪些,了解 ...
- <实训|第十三天>linux中ACL权限控制以及磁盘配额,附编译属于自己的linux内核
[root@localhost~]#序言 首先讲讲昨天关于缩容失败,开不机的解决方法:ACL权限也算是一个很重要的知识点,不难,但是很实用:磁盘配额一般不需要自己弄,但是要懂得原理.剩下的就是编译属于 ...
- 【移动开发】Android中WIFI开发总结(二)
搞了好几天终于有点眉目了,这里接着总结一下Android中WiFi的使用,在前面(http://smallwoniu.blog.51cto.com/3911954/1334951)我们已经简单了解了W ...
- [Intel Edison开发板] 06、Edison开发在linux中烧写、配置、搭建开发环境
1.前言 linux上烧写.配置.搭建Edison环境,千万不要用默认的setup tool for ubuntu!!! (即使,你用的就是ubuntu) 因为,其默认的工具会从一个坏链接下载配置文件 ...
- kali Linux下wifi密码安全测试(1)虚拟机下usb无线网卡的挂载 【转】
转自:http://blog.chinaunix.net/uid-26349264-id-4455634.html 目录 kali Linux下wifi密码安全测试(1)虚拟机下usb无线网卡的挂载 ...
- [转载]Linux中的网络接口及LO回环接口
转自:https://blog.csdn.net/weixin_39863747/article/details/80564358 Linux中的网络接口及LO回环接口 2018年06月04日 10: ...
- Linux中的lo回环接口详细介绍
1.linux的网络接口之扫盲 (1)网络接口的命名 这里并不存在一定的命名规范,但网络接口名字的定义一般都是要有意义的.例如: eth0: ethernet的简写,一般用于以太网接口. wifi0: ...
- linux没有wifi
linux的wifi出现问题的介绍 几次重装linux系统,经常出现没有wifi的状况 错误详情 之前安装过CentOS,Kylin,OpenSU,等等经常出现没有wifi的状况,虽说猜测是遇到驱动问 ...
随机推荐
- 复杂模式的两个List与Map合并为一个Map的拼接;笛卡尔乘积处理数据问题
简介 (Introduction): 背景 数据从多个表中获取,每个表的数据条数不是唯一的,最后结果要拼接成一个Map<String,Object>的模式封装所有数据,每个数据是一条. 结 ...
- 在 ThinkPad E470 上安装 Ubuntu 16.04 无线网卡驱动
目录 文章目录 目录 安装 安装 # 查看无线网卡驱动类型,E470 一般为 RTL8821CE lspci # 安装必要工具 sudo apt-get install build-essential ...
- saltstack使用
saltstack中salt-key的用法 介绍: saltstack中master和minion是依靠证书来进行加密通信的.在saltstack中salt-key命令是用来管理证书的 用法: sal ...
- git使用其它
创建目录 切换到本地新建的dev分支,目录下还是这个目录下的文件.我push一下,指定推送到dev分支,那么dev分支就在远程仓库同步创建,并且文件也是本地这个目录下的文件,一样的. 好像得改个名字才 ...
- salesforce零基础学习(一百三十七)零碎知识点小总结(九)
本篇参考: https://help.salesforce.com/s/articleView?id=release-notes.rn_lab_conditional_visibiliy_tab.ht ...
- Linux安装Logstash
Logstash安装 一.上传解压重命名 将Logstash压缩包上传到/home/下解压压缩包并重命名 [root@localhost home] tar -zxf logstash-7.15.0- ...
- Avalonia中的线性渐变画刷LinearGradientBrush
在WPF中使用Shape实现复杂线条动画后,尝试在Avalonia中也实现同样效果.尽管官方提供了从WPF到Avalonia的快速入门文档,但由于第一次使用Avalonia,体验过程中并不是很顺利,主 ...
- mySql脚本转换成sqlserver脚本(主流数据库的脚本都能转换,需要使用powerdesigner)
我使用的powerdesginer版本是16.5,只需要脚本文件就可以了,不需要安装mysql和sqlserver. 文件->反向工程->Database... 选择原脚本文件的数据库类型 ...
- Swoole 源码分析之 Timer 定时器模块
原文首发链接:Swoole 源码分析之 Timer 定时器模块 大家好,我是码农先森. 引言 Swoole 中的毫秒精度的定时器.底层基于 epoll_wait 和 setitimer 实现,数据结构 ...
- AI实用技巧 | 5分钟将coze集成到微信群机器人
细心的小伙伴已经注意到,国内的Coze平台已经开放了API,这一发现让他们感到兴奋不已.因此,他们迫切地想要掌握这一机会,将API应用到实际中,让Coze成为他们的得力助手.这样一来,他们就可以避免每 ...