我的私人家庭网络最早用的是Zerotier,但是发现连接不稳定,即使我的两个节点都有公网IP有时也会连不上,后来换了WireGuard就非常稳定。但最近新买了几个VPS,又有朋友家加入了网络,节点变多,安全规则也更复杂,WireGuard维护起来有点力不从心了,于是下定决心部署Headscale切换到Tailscale网络。
最近新买了一个J1900小主机打算送给朋友做软路由。到手后照常安装Proxmox,结果遇到了一个以前没有遇到过的问题,在进度条已经到100%的时候,报了这个错:failed to prepare EFI boot using Grub on ‘/dev/sda2’: unable to install the EFI boot loader on ‘/dev/sda’。然后又是折腾了一下午才解决。
又双叒叕踩坑了。这回的坑是我尝试把原本Proxmox的虚拟机ImmortalWrt(OpenWrt的一个编译版本)迁移到Docker中,同时保留IP地址不变的过程中遇到的。这个ImmortalWrt里面跑着我的WireGuard服务。迁移很顺利,启动Docker容器后,可以正常ping通,我的手机也能连上WireGuard,唯独一个24小时开机的节点死活连不上,表现为无法握手,WireGuard里一直显示接收为0KB,一个包都收不到。
本文副标题为我的野路子Docker网络环境,主要介绍我在配置Docker桥接宿主网络过程中遇到的坑。
Docker的bridge网络是一个内部网络,与外界的通信都要通过三层路由和NAT转发,这在某些应用中不是很方便。而如果要桥接宿主机网络,最简单的方式是使用macvlan。但是macvlan有不能和宿主机通信的缺陷,并不是完美解。
在项目中应用Kotlin Coroutine一年多了,虽然用到的都是一些非常基本的功能,但是也踩了不少坑,本文将这些坑记录下来做个笔记。
最近升级NAS之后,空余出来2块10T的硬盘组不进阵列,原本想拿来多做一份ZFS的备份,结果发现zrepl不支持多目的地,就不想折腾了。正好又折腾好了WebVirtCloud, 就想试试看搞个黑群晖,将两块硬盘直通进去,这样又能多一个折腾的玩具。
这两天在死磕Kotlin协程的原理。看了很多资料,从一开始感觉混乱没有头绪到现在稍微有了点感觉,本文记录了我目前对Kotlin协程的理解。
