惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recent Commits to openclaw:main
Recent Commits to openclaw:main
MyScale Blog
MyScale Blog
A
About on SuperTechFans
爱范儿
爱范儿
L
LangChain Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
C
Check Point Blog
博客园 - Franky
Recent Announcements
Recent Announcements
Recorded Future
Recorded Future
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
大猫的无限游戏
大猫的无限游戏
U
Unit 42
雷峰网
雷峰网
Last Week in AI
Last Week in AI
Martin Fowler
Martin Fowler
博客园_首页
Engineering at Meta
Engineering at Meta
量子位
The Cloudflare Blog
B
Blog RSS Feed
N
Netflix TechBlog - Medium
罗磊的独立博客
Vercel News
Vercel News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
V
Visual Studio Blog
V
Vulnerabilities – Threatpost
P
Proofpoint News Feed
T
Threat Research - Cisco Blogs
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Cisco Talos Blog
Cisco Talos Blog
B
Blog
I
InfoQ
M
MIT News - Artificial intelligence
Microsoft Azure Blog
Microsoft Azure Blog
月光博客
月光博客
T
Tor Project blog
D
DataBreaches.Net
T
The Exploit Database - CXSecurity.com
D
Docker
C
Cyber Attacks, Cyber Crime and Cyber Security
阮一峰的网络日志
阮一峰的网络日志
G
Google Developers Blog
P
Proofpoint News Feed
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Blog — PlanetScale
Blog — PlanetScale
aimingoo的专栏
aimingoo的专栏
C
Cisco Blogs
MongoDB | Blog
MongoDB | Blog
Simon Willison's Weblog
Simon Willison's Weblog

轶哥博客

blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog
blog
2020-05-11 · via 轶哥博客

上篇文章轶哥介绍了树莓派4使用OTG功能变身有线网卡的方法。今天我们就来实践让树莓派4变身路由器。(由于本文的「操作」不具备拨号功能,更适合作为旁路由使用。需要实现拨号请自行研究。😂)

2020年07月23日更新:树莓派可以直接安装OpenWRT作为旁路由,但是无法使用OTG有线网卡这个功能。

让树莓派联网

无线: 使用raspi-config,设置WIFI网络,让树莓派联网。

有线: 使用raspi-config,设置WIFI网络的国家,保存后按Esc退出安装界面,插入网线。

无论选择以上何种方式,请参考树莓派4使用OTG功能变身有线网卡的方法将Type-C接口和电脑的USB接口相连,使用OTG USB网卡确保我们在树莓派中途断网的情况下也能通过ssh root@raspberrypi.local的方式连接到树莓派。

让树莓派具备AP功能(开热点)

安装RaspAP,让树莓派拥有漂亮的网络管理界面:

curl -sL https://install.raspap.com | bash

安装过程中会有一些选项,根据你的需要来选择即可,无论作出何种选择均不会影响树莓派变身为旁路由。

安装完成后,执行telinit 6,重启设备。

重启完成在浏览器输入http://raspberrypi.local/访问管理界面:

RaspAP-Login

用户名: admin 密 码: secret

登录成功后可以看到当前树莓派已经具备WIFI热点功能。

RaspAP-Home

RaspAP管理界面,我们会发现WiFi client功能无法正常使用。这是因为目前我们的AP工作方式是eth0接入,wlan0发出热点信号。

eth0-wlan0

这时,如果插入的是有线网络,其它设备搜索名称为raspi-webgui的WIFI,输入默认密码ChangeMe即可上网。运行模式如上图。

让USB OTG网卡也能上网

当前的USB OTG网卡仍然是169.254.x.x一类的地址,是无法连接网络的。

编辑/etc/dhcpcd.conf,在最末尾添加如下配置:

# OTG USB usb0 configuration
interface usb0
static ip_address=192.168.130.1/24
static domain_name_server=

生成/etc/dnsmasq.d/usb0.conf文件,添加如下配置:

interface=usb0
dhcp-range=192.168.130.100,192.168.130.255,255.255.255.0,12h

重启dhcpcddnsmasq服务。

sudo systemctl daemon-reload
sudo systemctl restart dhcpcd
sudo systemctl restart dnsmasq

通过ifconfig命令,我们可以看到usb0网卡拥有了192.168.130.1这个IP地址,同时与之相连的电脑也获取到了该网段的IP地址。

如果现在将网线插入到树莓派有线网卡,则USB OTG网卡也可以上网了。虽然usb0wlan0不在同一网段,但是他们之间的设备是可以互相访问的。此时的运行模式如下:

eth0-wlan0-usb0

让树莓派具备无线接入功能

现在我们知道如何将有线网络共享为无线WIFI信号并分享给USB OTG网卡使用。不过很多时候我们并没有有线网络接入的条件,我们需要进行无线网络接入(本文采用外接USB网卡的方式实现),然后分享给有线网卡eth0、无线热点wlan0、OTG USB网卡usb0。不过,由于无线网络接入速率较低,保留有限网卡eth0作为接入网口(WAN口)更具有现实意义,因此本文不再描述如何将其变为LAN口,感兴趣的小伙伴可以自己研究研究。

我们希望树莓派具备下图的运行模式:

eth0-wlan0-usb0-wlan1

我使用具备双频WIFI的网件AC6210网卡,在树莓派下免驱。

raspberry4-ac6210

插入USB无线网卡,执行ifconfig -a确认驱动安装正常,确认网卡编号是wlan1。如不出意外,网卡会自动连上之前连接过的WIFI。

/var/www/html/includes/config.php文件中的

define('RASPI_WIFI_CLIENT_INTERFACE', 'wlan0')

改为

define('RASPI_WIFI_CLIENT_INTERFACE', 'wlan1')

修改/etc/dhcpcd.conf文件,在wlan0(注意是板载网卡wlan0)的配置最后面加上nohook wpa_supplicant。例如:

# RaspAP wlan0 configuration
interface wlan0
static ip_address=10.3.141.1/24
static routers=10.3.141.1
static domain_name_server=9.9.9.9 1.1.1.1
nohook wpa_supplicant

最后重启hostapd

sudo systemctl restart hostapd.service

如一切正常,则USB OTG网卡以及WIFI热点均可正常访问网络。

当然,也有小伙伴发现无法上网,排查方式如下:

route

查看当前设备路由表。结果可能和下述相似:

root@raspberrypi:~# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.3.141.1      0.0.0.0         UG    304    0        0 wlan0
default         OpenWrt.lan     0.0.0.0         UG    305    0        0 wlan1
10.3.141.0      0.0.0.0         255.255.255.0   U     304    0        0 wlan0
192.168.100.0   0.0.0.0         255.255.255.0   U     305    0        0 wlan1
192.168.130.0   0.0.0.0         255.255.255.0   U     203    0        0 usb0

这是由于默认网关优先级不够导致无法正常上网。

route add default gw 正确的网关地址

修改后即可正常上网。

同理,有线网口eth0和USB无线网卡wlan1都可以作为WAN口接入网络,而具体想选择谁来上网,只需要调整路由的优先级即可。

按照轶哥提供的修改方法,RaspAP原本的功能不会受到影响,而且首页还能显示wlan1的信息,可以可视化配置wlan1接入的无线网络,是不是很酷呢?😎