Fork me on GitHub

用树莓派zero w做电脑的无线网卡

Step1 设置树莓派,启动usb0接口

编辑/boot/config.txt,尾部添加:

1
dtoverlay=dwc2

编辑/boot/cmdline.txt,在rootwait后添加

1
modules-load=dwc2,g_ether

Step2 启动树莓派后设置网络

编辑/etc/network/interfaces,内容修改为

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
auto lo
iface lo inet loopback

iface eth0 inet manual

allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
wpa-conf /boot/wpa.conf

allow-hotplug usb0
auto usb0
iface usb0 inet static
address 192.168.166.1
netmask 255.255.255.0

再安装dnsmasq

1
apt install dnsmasq

编辑dnsmasq的配置文件/etc/dnsmasq.conf,去掉最后两行,改为:

1
2
3
interface=usb0
bind-interfaces
dhcp-range=192.168.166.2,192.168.166.250,24h

之后启动dnsmasq的开机自启动:

1
sudo systemctl enable dnsmasq

再创建端口转发用的脚本forward.sh,位置任意,内容为

1
2
3
4
5
#! /bin/bash
echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
iptables -A FORWARD -i wlan0 -o usb0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i usb0 -o wlan0 -j ACCEPT

保存后在/etc/rc.local中在exit 0一行之前添加该脚本,

1
bash 脚本位置

修改/boot/wpa.conf,添加需要连接的热点,l例如:

1
2
3
4
5
6
network={
ssid="image" #热点名称
key_mgmt=WPA-PSK
psk="xxxxxx" #密码
priority=5
}

enjoy it

重启后在mac和linux下可以直接识别该网路并且自动连接。需要修改热点只需要取出内存卡修改根目录下/wpa.conf文件即可。