简单RestAPI获取硬件状态

2023-05-11 作者:

简单来说,我需要一个能从HA上直接浏览家里主路由的CPU温度的首屏,因为RK3399发热比较猛却只有被动散热。有人可能说,加个小风扇难度很大么?呃,具备Netgear R7000(博通方案)在夏天轻松面对75℃服役5年的经验,我觉得国货不妨一战。

所以这个小项目,其实提供了对运行在物理机上几乎任意Linux的cpu温度、磁盘余量、上电时间等参数的rest api获取。写的比较糙快猛,主要满足自己需求,所以莫要预期过高哈。

提供何种接口

随意运行一个http client,比如  curl http://[hostname]:9090/stats/[data_type]

data_type初期支持三种, du, temps, boot_time 分别代表磁盘用量,多个温度,和上电时间。然后就可以返回数据了。

完整阅读本篇»

基于 Asus Tinker Board 2S 单臂路由

2023-05-07 作者:

书接上回,这次实验对象轮到了压箱底旧货,基于RK3399的华硕Tinker Board 2S

虽然原厂OS拉胯,不得不说硬件用料还是大厂风范

话说这CPU运行libvirt比较艰难,直接新建vm确定100%报错cpu初始化失败。

查阅了一些资料,发现这种大小核的cpu,libvirt支持上比较有个性,vm要么选择小核,要么选择大核,万不可“既要又要”,否则就报错摆烂。也好,A72双核 vs. A53四核,看看老话“双拳难敌四手”到底靠谱不靠。

带上vlan,蛮好一台4口路由

那么先给OpenWrt配置A72双核,注意是RK3399的后2核,莫要搞错。

完整阅读本篇»

基于 Raspberry Pi 4B 单臂路由

2023-04-30 作者:

Here we’re gonna talk about a hand-made router (NAT gateway) using a Raspberry Pi 4B with at least 3 implementations. Sorry the wifi router is not included since it’s kinda easy to find the tutorials about the hostapd stuff, and the signal from onboard wifi is not quite usable anyway.

这里聊一下基于树莓派4B的有线单臂路由实现,至少三种技术实现;wifi路由就不谈了,基于hostapd的教程遍地都是,信号强度也是个问题,可用性仅限于贴脸。

如果只使用iptables的话,实现一个基于pi的路由其实只需要一句话。加上让内核开启转发,两句话打完收工。

Method #1: Several simple commands could simply turn the Pi OS to be a layer 3 device with SNAT (or MASQUERADE).

开个玩笑,起码还得先给LAN口设个固定地址,比如给eth0设置 192.168.17.1/24 ,那么上边<lan subnet>就应当是 192.168.17.0/24 。

如果还需要dhcp服务器(非必须)的话,去看一下dnsmasq,熟练工的话,基于一般的Pi OS手打路由只要10分钟(含参考文档)。

PS:要问wan口谁来承担?wifi可以,给eth0加vlan也可以,看想怎么玩。


接下来就是自行编译OpenWrt的玩法,如果不想编,直接去官网下载预编译的镜像也完全ok。该镜像内置了基于Pi 4B的所有硬件驱动,也包括802.11nac的wifi支持,刷机后直接使用没有任何问题。

Method #2: Feel free to build the OpenWrt and run it on the bare metal Pi 4B, or a prebuilt image can be downloaded from OpenWrt official website then you don’t have to build that on your own.

默认设定是br-lan连接eth0,无wan口。因其为单臂路由(没有两张物理网卡),我把br-lan口连接改为 eth0.120 ,wan口设定为 eth0.12 ,当然交换机需要是802.1q VLAN switch,保存设置后正常上网就可以了。

PS:更改lan口vlan id设置的过程,最好走wifi,这样就不会在设置过程中断线。当然还有个选择就是把vlan id 1留给一个接口(无论wan还是lan),随意就好。

对单臂路由在内网进行iperf3带宽测试,MTU 1500就不改了,差不多可以跑满(下图右下)。由此可见,Pi 4B的全双工千兆网靠得住,作为单臂路由没问题,同时跑满带宽的资源消耗也不高。

完整阅读本篇»

万兆TL-ST5008F到手初测

2022-07-05 作者:

先说应该是老的v1版本,起码铭牌上没见到v2的标识,作为初入手万兆光网实验装备应该是足用了。

如图:#1口接千兆RJ45转接头,#2和#8接的X520网卡。

某宝的X520-SR1(单口)和X520-SR2(双口)网卡各搞了几块。

作为VLAN交换机,可以走RS232 console、telnet、web等方式进行设置。

完整阅读本篇»

OpenWrt测试双WAN和双机高可用

2021-12-03 作者:

So here’s a quick example. OpenWrt shows capability to provide business-level internet access reliabilities – with not only load balancing/failover between 2 or more ISPs, but also VRRP based hardware (dual x86 vm in this experiment) level redundancy.

从以下的例子可以看出,OpenWrt基本满足了提供小型商业级Internet访问可靠性的初步要求。它不仅可以在多个ISP之间实现负载均衡以及故障切换,在此基础上同时提供基于VRRP的硬件冗余(本实验中为双x86虚拟机)。

 

先开仨虚拟机,前两台做OpenWrt,可以先做1台,复制1台。注意要安装mwan3和keepalived。

 

双WAN做好后,断开一路wan做测试。这里的wanb,用的是楼道里的不可靠wifi,通过Raspberry Pi向下路由一层转成有线网,能体现出不稳定的ISP接入状态。

本来是两路负载均衡的策略,wanb断开后,5s之内可以让所有对外请求都稳定落在wan上。

 

下一步,把MASTER的br-lan断开,模拟一个路由器硬件直接宕掉。

 

这个切换时间很短,还没反应过来,BACKUP就接管了VIP地址,对外请求几乎不受什么影响。

完整阅读本篇»

基于红米AC2100的集客AC/AP方案

2021-10-15 作者:

Free (but proprietary) AC/AP wifi solution by Wuhan GECOOS, is here tested on 2 units Redmi AC2100 and a Proxmox based x86_64 vm.

这篇不准备多写,简单谈一下感受。

硬件结构如下,

  • AP是两台Redmi AC2100,单价159(不是wifi6,消费主义远离我)。
  • AC是书房自建私有云上一台vm,无法单独计费,权当免费。

PROS:

  • 性价比突出。总价只有318,即使考虑到大房子需要3台AP,也只要500块不到而已,还不到一台中端wifi6路由器的钱。有人可能会说,别逗了,家用AP的信号,3台怎么够 —— 哥们,别那么肯定,你说的是面板AP,我这是普通家用路由器(外置天线)刷的AP,原本设计每个都是带全家的,要比信号强度也得比商业吸顶AP吧?
  • AC可以不要,AP支持胖AP模式。这点倒是跟其他家用AC/AP方案接近,并不特别。我猜胖AP漫游效果差点儿?因为我不缺私有云机器,没有做具体测试。
  • 蛮关键的一点,AC可以只做旁路。也就是说,主路由还是主路由,你不一定用这个集客AC做主路由(虽然它也具备路由能力),这一点非常关键。作为AC,管好你的AP,做好弱踢和切换就行了,路由我有更好的选择。
  • 覆盖和速度都能让人满意,mbp连上5G信号,NAS大文件传输不比千兆有线差很多。
  • 每个房间多了一个4口千兆交换机,还tm支持vlan,这个价钱做下来的方案有这么强的灵活性,你敢信?

CONS:

  • 漫游切换,在安卓手机上切换起来,还是没有单路由(不切换)那么流畅。当然,物理问题靠软件显然不能强求,毕竟在家里边角的wifi速度显著提高了;多年前的iPhone 6SP好像漫游效果不错的说;后悔没有拿Android和iPhone互相打个微信视频然后走动一下做个测试。
  • 【昧良心说】集客固件免费但不开源。至于开源与否我不关心,毕竟我刷个路由不是去商业化,我只关心有无黑产,这点主要看开发团队的人文品质吧。真要不放心,自己刷一套放个抓包环境测几个月就有数了;这问题倒不是针对集客,ikuai和梅林也是同一个路子,再说那些原厂(不免费)的路由器系统就能绝保没后门没黑产?

以下纯截图:

AC界面:wifi配置模板下发

完整阅读本篇»