观 世 变 ,展 未 来

📚Time to fly💻 | Dream High

My VPS provider's entire IP range got DDoS'd. So I learned XDP

💥 The Incident A few days ago, someone decided to DDoS the entire IP range of my Hong Kong VPS provider. My machine had fail2ban running. It did its job — maybe a little too enthusiastically. Within minutes it had banned over 20,000 IPs, allocating memory for each rule until the box ran out of RAM entirely and triggered a kernel panic. The VPS went dark… Great… :/ So here’s the irony: fail2ban didn’t fail because it was badly configured. It failed because of a fundamental architectural problem. Every packet in a flood still has to be received by the kernel, handed up the networking stack, and then evaluated before fail2ban can react. Under a real volumetric flood, that cost alone — tens of thousands of soft interrupts per second — is enough to saturate a single vCPU and collapse the machine before any rule can take effect. ...

February 24, 2026 · 6 min · 1258 words · Yunheng

I love cloudflare sooo much!

I noticed something frustrating: while my Hugo frontend (hosted on Netlify’s Edge) was lightning fast, images and videos were lagging. Every time I opened a post, there was a noticeable “pop-in” delay for media — the text would render instantly, then the images would trickle in a second or two later. The issue lies on my storage backend. I recently migrated my assets to a MinIO instance running on a BuyVM storage slab in Switzerland 🇨🇭. I love it — 80GB SSD, full S3-compatible API, and the data privacy story is hard to beat. But physics doesn’t care about any of that. Switzerland is physically far from most of my readers, and every uncached image request had to make a full round trip there. ...

February 16, 2026 · 4 min · 797 words · Yunheng

[2025] Happy Birthday to Kenneth

Living in the fast lane is getting kinda lonely — Ferrari, Bebe Rexha I just discovered that I can add html blocks in my blog posts… which is actually kinda cool! 😎 However, this blog post actually goes live in February 2026. I wouldn’t call it a ‘delayed post,’ though. According to Einstein, time is relative—it depends on the observer’s motion. So, in my mind, I’m still sitting in 2025-09-08, just armed with some futuristic knowledge. ...

September 8, 2025 · 3 min · 578 words · Yunheng

Vex Prep For Competition

I dropped my 🏊‍♂️ swimming team competition just to work at the 🤖 robotics club… AND I DON’T REGRET THAT CHOICE ONE BIT!!! (Coach Fiore, please forgive me 🙏). I think I’ve told you about our lab before, but sadly, I lost some posts during the migration of my blog site (so frustrating 😓). I’m both a coder 💻 and an engineer 🔧 on our team, which means I can literally do ANYTHING! If you’ve never heard of the VEX Robotics Competition, check this out: VEX Robotics Competition Introduction. (Trust me, everyone would love it! 😄) ...

January 23, 2025 · 2 min · 240 words · Yunheng

My Servers and Why

Let me tell you about my servers! Right now, I’ve got several running—one in Hong Kong 🇭🇰 and others in the United States 🇺🇸 (One of them is my content delivery machine dedicated to this website). I host some fun stuff on them, such as some of my hobby projects like TinyUrls and Transcribly but mainly I use them to set up proxies so I can access YouTube and Google Scholars. I can’t remember exactly when I first started messing around with Virtual Private Servers. Probably sometime around 2021, during the pandemic. My parents kept saying, “Staying home all the time is just making you play more video games.” ...

January 18, 2025 · 3 min · 619 words · Yunheng

A New start

It’s been a while since I last updated my blog… 😅 Life has been busy as a beeeeee🐝 as I’ve been adjusting to a new lifestyle after starting high school here in the United States. 🇺🇸 I’ve been having a greaaaaat time exploring the swimming pool 🏊‍♂️ and diving into the robotics club 🤖—both are absolutely awesome! Oh, and you might have noticed a big 💥 change in the blog’s theme. Yup, I switched from Cleanwhite to Papermod! 📝 It feels so much more refreshing, don’t you think? 🎨 Also, I finally figured out how to use git in Vscode, it’s sooooo convenient! ...

January 5, 2025 · 1 min · 126 words · Yunheng