OneMC
Kéo để xoay
Hồ sơ cá nhân

l2stack

  • Owner
  • System Administrator
  • Lead Infrastructure Engineer

Tôi xây dựng phần nền của OneMC — lớp mà người chơi không nhìn thấy nhưng cảm nhận được ở mỗi lần vào server: kết nối ổn định, độ trễ thấp và không gục ngã khi bị tấn công. Từ lớp lọc gói tin trong nhân Linux đến hệ thống định tuyến người chơi, gần như toàn bộ đều là mã nguồn tự viết.

7+Node biên đang chạy
24/7Giám sát hệ thống
XDPLọc gói ở tầng nhân
GoNgôn ngữ lõi
Giới thiệu

Người vận hành phần không ai nhìn thấy

Tôi bắt đầu từ chỗ quen thuộc với nhiều người chơi Minecraft Việt Nam: một máy chủ nhỏ, vài người bạn, và những lần sập server không rõ nguyên nhân. Khác biệt là thay vì đổi nhà cung cấp, tôi đi tìm hiểu vì sao nó sập.

Câu trả lời gần như luôn nằm ở hạ tầng: một lớp chống tấn công thuê ngoài hoạt động như hộp đen, một cấu hình mạng không ai kiểm soát, và không có số liệu nào để biết chuyện gì thực sự đang diễn ra. Từ đó tôi chuyển hướng sang tự xây: nếu OneMC muốn ổn định lâu dài, phần lõi phải nằm trong tay chính mình.

Hôm nay tôi phụ trách toàn bộ mảng kỹ thuật của OneMC — thiết kế kiến trúc, viết mã, triển khai, giám sát và xử lý sự cố. Đây không phải công việc phô trương: thước đo thành công là người chơi vào game mà không phải nghĩ đến bất cứ điều gì tôi vừa kể.

Chuyên môn

Những mảng tôi làm sâu

Không phải danh sách công nghệ cho đẹp hồ sơ — đây là các mảng đang chạy thật trong sản phẩm.

Phát triển hệ thống chống DDoS

Thiết kế và viết OneShield từ đầu: nhận diện lưu lượng bất thường, chấm điểm uy tín IP và chặn tấn công trước khi chạm tới máy chủ game.

Kiến trúc mạng

Thiết kế đường đi của người chơi và phân tách hệ thống sao cho một điểm hỏng không kéo sập toàn bộ.

Hệ thống sẵn sàng cao

Nâng cấp không gián đoạn, tự phục hồi sau sự cố và thiết kế để mất một node vẫn không làm rớt người chơi khỏi thế giới.

Kỹ thuật backend

Viết dịch vụ mạng bằng Go: xử lý đồng thời hàng nghìn kết nối, giao thức nhị phân, và các đường dữ liệu phải đúng ngay từ lần đầu.

Tối ưu hiệu năng

Đo trước, sửa sau. Cắt độ trễ ở từng chặng — từ lúc gói tin chạm card mạng đến khi người chơi thấy phản hồi trong game.

Tự động hoá & vận hành Linux

Triển khai lặp lại được, cấu hình theo mã, và các quy trình xử lý sự cố không phụ thuộc vào việc ai đó phải nhớ đúng thao tác lúc 3 giờ sáng.

Hạ tầng

Vận hành để không ai phải để ý tới nó

OneMC chạy trên hạ tầng riêng đặt tại Việt Nam, thiết kế để mở rộng và bảo trì mà không làm gián đoạn người chơi. Mục tiêu luôn là độ ổn định: server nên chạy êm đến mức không ai cần nghĩ tới nó.

Mọi thứ quan trọng đều đo được. Lưu lượng, độ trễ và tình trạng hệ thống được giám sát liên tục, nên mỗi quyết định vận hành đều dựa trên số liệu thật thay vì cảm giác — và sự cố thường được xử lý trước khi người chơi kịp nhận ra.

Sản phẩm

OneShield

Hệ thống chống DDoS chuyên cho Minecraft, viết từ con số không.

OneShield sinh ra vì các giải pháp sẵn có không hiểu Minecraft. Chúng thấy một luồng TCP và đoán; OneShield đọc đúng giao thức, biết đâu là cái bắt tay hợp lệ, đâu là lần ping danh sách máy chủ, và đâu là lưu lượng chỉ tồn tại để làm nghẽn đường truyền.

Hệ thống hỗ trợ cả Minecraft Java và Bedrock, kèm relay cho Voice Chat, và đang bảo vệ nhiều mạng máy chủ độc lập cùng lúc chứ không riêng OneMC. Người vận hành có bảng điều khiển riêng để xem lưu lượng theo thời gian thực, quản lý danh sách chặn và mở cổng theo từng dịch vụ.

Đây là phần công việc tôi dành nhiều thời gian nhất, và cũng là phần khó nhất: một lỗi trong lớp chống tấn công không chỉ làm sập một máy chủ — nó chặn nhầm người chơi thật, điều còn tệ hơn cả việc bị tấn công.

Đang thực hiện

Dự án hiện tại

Mở rộng mạng lưới node biên

Thêm điểm vào tại nhiều nhà mạng khác nhau để người chơi ở mọi vùng đều có đường đi ngắn nhất tới máy chủ.

Quản lý cổng theo chính sách

Chuyển từ mở cổng thủ công sang mô hình mặc định đóng, mọi truy cập phải có luật rõ ràng — an toàn hơn và dễ kiểm toán.

Phân tích độ trễ từng chặng

Đo riêng từng đoạn đường đi của gói tin để biết chính xác độ trễ phát sinh ở đâu, thay vì chỉ nhìn con số ping tổng.

Hạ tầng cho Bedrock

Đưa trải nghiệm của người chơi Bedrock lên ngang bằng Java: cùng thế giới, cùng mức bảo vệ, cùng độ ổn định.

Công cụ

Công nghệ sử dụng

  • Go
  • Linux
  • eBPF / XDP
  • PostgreSQL
  • Cloudflare
  • và nhiều hơn nữa…
Hành trình

Từ một server nhỏ đến hạ tầng riêng

  1. Khởi đầu Vận hành máy chủ Minecraft đầu tiên Tự dựng, tự sửa, và học mọi thứ từ những lần server sập lúc đông người nhất.
  2. Bước ngoặt Rời bỏ giải pháp chống DDoS thuê ngoài Không kiểm soát được thứ đang bảo vệ mình là rủi ro lớn hơn chính cuộc tấn công. Bắt đầu tự viết.
  3. Phát triển OneShield phiên bản đầu tiên Một proxy hiểu giao thức Minecraft, lọc kết nối trước khi chúng tới được máy chủ game.
  4. Mở rộng Chuyển sang mô hình nhiều node biên Tách vai trò trung tâm và biên, cho phép thêm điểm vào mới mà không dừng dịch vụ.
  5. Hiện tại Vận hành OneMC và OneShield cho nhiều mạng máy chủ Hạ tầng phục vụ cả người chơi OneMC lẫn các máy chủ khác dùng OneShield.
Triết lý

Cách tôi làm việc

Hạ tầng tốt là hạ tầng không ai nhắc đến. Khi người chơi bắt đầu nói về server, thường là vì có gì đó đã hỏng. — nguyên tắc tôi dùng để quyết định nên làm gì tiếp theo

Hiểu trước khi sửa. Mỗi sự cố đều được truy tới nguyên nhân gốc rồi mới vá. Một bản vá không hiểu vấn đề chỉ dời lỗi sang chỗ khác.

Đo được thì mới cải thiện được. Không tối ưu dựa trên cảm giác. Nếu không có số liệu chứng minh thay đổi làm mọi thứ tốt lên, thay đổi đó chưa xong.

Tự chủ phần lõi. Những thứ quyết định sống còn của hệ thống thì phải nằm trong tầm kiểm soát và sửa được ngay, không phụ thuộc lịch hỗ trợ của bên thứ ba.

Đơn giản đến mức có thể. Hệ thống phức tạp hỏng theo những cách phức tạp. Mỗi thành phần thêm vào đều phải trả lời được câu hỏi: nếu nó hỏng lúc nửa đêm thì chuyện gì xảy ra?

Sắp tới

Định hướng

Mục tiêu gần là đưa OneShield tới mức hoàn thiện đủ để bất kỳ máy chủ Minecraft Việt Nam nào cũng có thể dùng mà không cần đội kỹ thuật riêng — bảo vệ tốt phải là mặc định, không phải đặc quyền của server lớn.

Xa hơn, tôi muốn OneMC trở thành nơi chứng minh rằng một mạng máy chủ Việt Nam có thể vận hành với tiêu chuẩn kỹ thuật ngang các hệ thống quốc tế: không reset map vì sự cố, không mất dữ liệu người chơi, và tồn tại đủ lâu để những gì người chơi xây dựng còn nguyên sau nhiều năm.

Trao đổi công việc

Hợp tác kỹ thuật, dùng thử OneShield, hoặc bất cứ câu hỏi nào về hạ tầng.

Discord @l2stack