Raspberry Pi Zero 联网奇妙记

说句实话,Zero真的不适合把玩,想让他连上网,太难了。

痛点

  • 住公寓,有WiFi/Lan登录认证系统
  • 公寓的网络动态分配范围很大,很难快速找到树莓派的IP
  • 公寓的网络防止扫描端口,有惩罚策略
  • 没有显示器 无法查看树莓派Zero的状态
  • 树莓派Zero只有一个OTG USB接口
  • 树莓派Zero没有内置以太网Lan
  • 树莓派Zero没有无线网卡WiFi
  • 树莓派Zero没有蓝牙 更没有蓝牙局域网
  • 树莓派Zero除了核心部分 一无所有

已有装备

  • 树莓派Zero
  • USB HUB 分线器
  • USB 以太网网卡
  • USB WIFI (芯片 8188EU)
  • 路由器
  • 网线一根
  • MacBook Pro一台

已有环境

  • Raspbian系统
  • vncserver

解决方案

整体思路

其中 USB HUB USB网卡 临时路由器 PC 是临时之用 配置一旦完成 抛弃这些设备直接插上WiFi自动联网。

去掉之前的USB网卡模式

把sd卡取出,插入电脑

config.txt下删除

dtoverlay=dwc2

cmdline.txt下删除

modules-load=dwc2,g_ether

安装WiFi驱动

之前遇到过很多坑,比如别的内核的WiFi驱动。

首先手动下载

https://dl.dropboxusercontent.com/u/80256631/install-wifi.tar.gz

检查无线适配器版本,同时传到树莓派上

pi@zero:~ $ sudo ./install-wifi

Your current kernel revision = 4.4.34+
Your current kernel build    = #930

Checking for a wifi module to determine the driver to install.

Your wifi module is Bus 001 Device 003: ID 0bda:8179 Realtek Semiconductor Corp.

And it uses the 8188eu driver.

Checking for a new 8188eu wifi driver module for your current kernel.
The script cannot access Dropbox to check a driver is available.

手动下载
https://dl.dropboxusercontent.com/u/80256631/8188eu-4.4.34-930.tar.gz

切换WiFi到树莓派网络

scp 8188eu-4.4.34-930.tar.gz pi@zero.local:~

在树莓派下

tar xzf  8188eu-4.4.34-930.tar.gz
sudo ./install.sh
reboot

然后检查一下 lsusb(这个其实不靠谱)

然后再检查一下 ifconfig

wlan0     Link encap:Ethernet  HWaddr 0c:82:68:12:93:8f
          inet6 addr: fe80::4336:2657:c812:f11b/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:6 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

果然正确安装了。

配置WiFi

但是wlan0 Link encap:Ethernet被识别为了以太网,接下来我们继续解决坑。

sudo iwlist wlan0 scan
  Cell 03 - Address: F0:B0:52:3B:7B:68
                    ESSID:"ASK4 Wireless"
                    Protocol:IEEE 802.11gn
                    Mode:Master
                    Frequency:2.417 GHz (Channel 2)
                    Encryption key:off
                    Bit Rates:144 Mb/s
                    Quality=18/100  Signal level=70/100
                    Extra:fm=0001

随后对wpa_supplicant.conf文件进行编辑,使之加入到自己的网络里。

请注意,key_mgmt=NONE表示没有WiFi密码(这是个查了很久猜得到的宝贵线索),如果有密码请把这个更改为psk = "密码"

sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
country=GB
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
        ssid="ASK4 Wireless"
        key_mgmt=NONE

}

编辑/etc/network/interfaces文件,使wlan0为动态分配获取IP。

sudo vi /etc/network/interfaces
auto lo
iface lo inet loopback

iface eth0 inet dhcp

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


allow-hotplug wlan1
iface wlan1 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

随后重启我们wlan0

sudo ifdown wlan0
sudo ifup wlan0

如果能搜索到WiFi会自动进行DHCP获取ip地址阶段

Listening on LPF/wlan0/0c:82:68:12:93:8f
Sending on   LPF/wlan0/0c:82:68:12:93:8f
Sending on   Socket/fallback
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 12
DHCPREQUEST on wlan0 to 255.255.255.255 port 67
DHCPOFFER from 10.80.192.1
DHCPACK from 10.80.192.1
bound to 10.80.200.83 -- renewal in 440 seconds.

随后,用ifconfig命令查看一下获取的IP地址

wlan0     Link encap:Ethernet  HWaddr 0c:82:68:12:93:8f
          inet addr:10.80.200.83  Bcast:10.80.207.255  Mask:255.255.240.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:17 overruns:0 frame:0
          TX packets:0 errors:0 dropped:1 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:4681 (4.5 KiB)  TX bytes:18372 (17.9 KiB)

再对mac地址进行绑定,再进入vnc,试试看

哇 可以上网了!

然而悲痛的消息还有呢~

内网隔离

ngrok TCP转发

这难不倒我,用ngrok就可以解决,正好身在墙外,更加方便。

下载ngrok

wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-arm.zip
unzip ngrok-stable-linux-arm.zip

配置开机启动项vi /etc/rc.local
在exit 0 前面加入

/home/pi/ngrok authtoken 你的AUTO
/home/pi/ngrok tcp 22

搞定!拔掉USB HUB,关掉路由器,重启!

过了10分钟后,我们的树莓派上线了!

用ssh命令连接一下

ssh pi@0.tcp.ngrok.io -p 13016

连接速度超级快,如同本地一样,给ngrok官网点赞。

lighttpd 部署

总要搞点事情嘛,部署一个Web服务对于512MB的内存的树莓派Zero不过分吧。

那么什么Web服务最合适呢?脑海第一时间想到轻量级的lighttpd,ngnix我都嫌弃费资源,那么就它了。

sudo apt-get install -y lighttpd

安装完成!目录在/var/www/html

写好html,部署上去。

那么如何才能办到同时映射到两个端口呢?ngrok的官方文档有提示。

nano /home/pi/.ngrok2/ngrok.yml

authtoken: 你的AUTH
region: eu
json_resolver_url: ""
dns_resolver_ips: []

tunnels:
  app-foo:
    addr: 80
    proto: http
    host_header: app-foo.dev
  app-bar:
    addr: 22
    proto: tcp
    host_header: app-bar.dev

这样就部署了两个服务,app-fooapp-bar,不错,开机再启动他们。

sudo nano /etc/rc.local

把之前那句换成

/home/pi/proj/ngrok/ngrok start --config /home/pi/.ngrok2/ngrok.yml app-foo app-bar

好了,剩下我们要做的就是重启与等待。

哈哈,上线了,访问一下。

这个只有4英镑的树莓派实现联网后花费了:

树莓派:4磅

OTG线:0.86磅

WIFI:人民币25元

储存卡:9磅

谢谢观看忍耐全文。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,937评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,503评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,712评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,668评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,677评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,601评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,975评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,637评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,881评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,621评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,710评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,387评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,971评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,947评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,189评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,805评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,449评论 2 342

推荐阅读更多精彩内容