在Linux上分享Wi-Fi


发布于

|

分类

Windows 上有许多软件,例如猎豹啊啥的,可以使用无线网卡将本机正在使用的网络通过 Wi-Fi 分享出来。

那么在无所不能的 Linux 下该怎么操作呢?

网上有许多教程,但是都需要设置一大堆东西,照着做下来估计得半个小时。实在心烦。

在逛 Github 的时候,发现一个叫「create ap」的东西,十分好用。

CreateAP

看它的源代码…… 其实就是替我们做了其他教程里面的一大堆东西而已,并且可以很方便地使用其他高级功能,例如 802.1X、5GHz频段 等等——这些东西如果手动设置的话是会死人的啊!

安装

三句话:

git clone https://github.com/oblique/create_ap
cd create_ap
sudo make install

哦对了还要安装一点依赖:

sudo apt install util-linux procps hostapd iproute2 iw haveged dnsmasq -y

临时使用

如果是临时搭建个 Wi-Fi 的话,一句话就可以:

create_ap wlan0 eth0 SSID PASSWORD

当然,不设置密码也是可以的。

对了,如果是树莓派的话,建议按照提示,加上 --no-virt 参数。虽然不知道会有什么作用。

开机自动启动

上面安装的时候使用了sudo,于是会在/etc下面创建一个create_ap.conf文件。我们需要编辑这个文件,改一下设置,例如使用5G啊,SSID啊,密码啊啥的。然后使用 Systemd 方式自动启动:

sudo systemctl enable create_ap
sudo systemctl start create_ap

删除

在 Issue 里面发现的:

create_ap --stop wlan0

这样会把所有和 wlan0 有关的热点全部停止掉。

错误排除

如果发现使用这个脚本后,主机无法上网,ping任何东西都是dns错误,那么应该是dnsmasq没有配置好。其实我们直接使用sudo systemctl disable dnsmast停用dnsmasq即可。

愉快地联网吧!

PS: 话说怎么配合其他高科技软件使用……好像需要写防火墙的各种规则?

参考资料


评论

  1. KChan 的头像
    KChan

    没试过这个工具,不过照手机热点之类的来说应该都在一个子网里面,让梯子listen 0.0.0.0 然后开放端口就可以用了……

    1. 小金鱼儿 的头像
      小金鱼儿

      可以这样用的。不过需要更改其他设备的代理设置。
      如果写防火墙规则的话,可以配置成透明代理,会更加方便。——可是我不会

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注