codesun 发布的文章

使用siri控制服务器开关的方案

从某种程度上来说,我是一个懒人,智能音箱在很大程度上满足了本人“懒”的需求。无奈的事,依旧有很多电器无法接入智能音箱的生态,比如服务器。

关于服务器的远程开关,尝试了很多方案,演化大致如下:从开始的WOL,到后来的ipmi,以及本文的homebridge方案。

严格来说,homebridge是一个转接平台,能作为一个主控让无法直接支持homekit的设备接入apple的生态,大致如下图。

+--------+     +------------+     +---------+
| iphone |-----| Homebridge |-----| Homekit |
+--------+     +------------+     +---------+

本文并不涉及homekit API以及IPMI协议细节的分析,只分享方案。

阅读剩余部分
关于SNAT在bridge中不生效的问题

本周在协助验证一套虚拟网络的方案,该方案包含一个bridge,向上对接容器的veth,并接管真实NIC作为tx口,方案中需要在bridge中做SNAT,具体hook点位于POST_ROUTING,命令如下:

iptables -t nat -A POSTROUTING -d 192.168.0.0/24 -j SNAT --to-source 192.168.0.5
阅读剩余部分
Wake-On-Lan程序解析

组装好NAS之后,我一直在考虑如何让其实现定时开机与关机,其中后者可以通过cron或者systemd-timer轻松解决,问题是开机,想到的方案主要有2个:

  1. 在机箱内安装一块Arduino/ESP开发板,配合时钟模块和锂电,定时接通PWR。
  2. 依靠网卡唤醒,也就是WOL(Wake-On-Lan),通过路由器实现定时唤醒(OpenWRT)。

对于我个人而言,2个方案都可以实现,但后者显然耗时更少,近期忙着毕业,没法抽出大段时间折腾。在编写LuCI插件过程中遇到了一点麻烦,单纯的cbi无法满足需求,所有这部分内容只能滞后了。

阅读剩余部分
NAS组装记——硬件篇

已经有几个月没更新博客了,原因是颓废了一段时间,以及接下来面临毕业,有很多东西需要准备,但折腾永不停止。

这段时间长草NAS,也因此观察了一段时间,曾一度想要剁手某牌的TS-563(以下简称563),然而最终还是没有下手。

阅读剩余部分
基础平台研发面经

秋招才刚开始,原则上是不应该放面经的。我个人十分不赞成投机取巧,知识面狭窄的问题,绝非面经能够解决,有时可能适得其反。

无奈的是应该有不少实验室做的研究和业界(客气点说)实在不太对口,相信大家在内推阶段或多或少的遇到过类似的困扰,面试不好并不是我平时偷懒,而是因为面试官只问他们感兴趣的/擅长的,对于自己不懂的,总有那么一点“不屑一顾”的感觉。

我的个人经历证实,这些情况确实是存在的,大多数面试官还是会尝试让你去解释研究工作(虽然对方并不一定感兴趣),只不过此时更多考察个人的表述能力。

阅读剩余部分