Raspberry Pi 5 có một cổng Ethernet Gigabit, một cổng PCIe riêng và bộ xử lý Arm Cortex-A76 bốn nhân – cấu hình đủ mạnh để biến nó thành một router thực thụ. Bài viết này hướng dẫn cài OpenWrt trên Raspberry Pi 5 từ bản SNAPSHOT, cấu hình cổng WAN, bật Wi-Fi và xử lý các lỗi thường gặp.
OpenWrt là hệ điều hành mã nguồn mở chuyên cho router, có giao diện quản trị LuCI, hỗ trợ DHCP, NAT, tường lửa, VPN và hàng nghìn gói mở rộng. Với OpenWrt trên Raspberry Pi 5, bạn có một router không khóa nhà mạng, không quảng cáo, cập nhật được từng gói, và có thể chạy thêm dịch vụ như AdGuard Home, WireGuard hay SQM để giảm bufferbloat.
Cần nói rõ ngay: Raspberry Pi 5 chưa nằm trong danh sách thiết bị được OpenWrt hỗ trợ chính thức, nên chỉ có bản SNAPSHOT (bản phát triển) chứ chưa có bản stable. Bản SNAPSHOT không có giao diện cài đặt sẵn gói, không có trình quản lý gói opkg mặc định như bản stable, nhưng thực tế chạy ổn định và đã được dùng làm router hằng ngày.
Mục lục
- Vì sao nên dùng Raspberry Pi 5 làm router
- Cần chuẩn bị gì
- Bước 1: Lắp phần cứng và xác định vai trò từng cổng
- Bước 2: Tải firmware OpenWrt SNAPSHOT cho Raspberry Pi 5
- Bước 3: Ghi ảnh ra thẻ nhớ hoặc SSD
- Bước 4: Cấu hình WAN ở lần khởi động đầu
- Bước 5: Bật Wi-Fi access point
- Bước 6: Bảo mật sau khi cài
- Hiệu năng thực tế và lựa chọn phần cứng
- Xử lý sự cố thường gặp
Vì sao nên dùng Raspberry Pi 5 làm router
Khi chạy OpenWrt trên Raspberry Pi 5, phần cứng của board tỏ ra phù hợp với vai trò router hơn nhiều người tưởng. Cổng Ethernet onboard là Gigabit, cổng PCIe 2.0 x1 cho phép gắn thêm card mạng hoặc SSD, và mức tiêu thụ điện chỉ vài watt khi rảnh. Trong bài kiểm tra của The Pi Hut, khi định tuyến một đường Internet 1 Gbit, CPU gần như không tải và RAM dùng tối đa khoảng 120 MB – nghĩa là bản Pi 5 2GB là quá đủ cho nhu cầu gia đình.
Điều đáng giá nhất là khả năng mở rộng. Router nhà mạng thường chỉ có một cổng WAN cố định và firmware đóng. Với OpenWrt trên Raspberry Pi 5, bạn toàn quyền quyết định cổng nào là LAN, cổng nào là WAN, đặt DHCP tĩnh theo MAC, chia VLAN, chạy DNS mã hóa, hay dựng VPN site-to-site. Cấu hình nằm trong các file văn bản nên sao lưu và khôi phục rất nhanh.
Cần chuẩn bị gì
Để cài OpenWrt trên Raspberry Pi 5, danh sách dưới đây bám theo hướng dẫn gốc của The Pi Hut cho board Pineboards HatNET! 1G/2.5G. Nếu bạn dùng HAT PCIe khác để có thêm cổng mạng, tên thiết bị và gói driver sẽ khác, nhưng các bước còn lại giữ nguyên.
- Raspberry Pi 5. Bản 2GB là đủ cho router gia đình, 4GB trở lên nếu bạn chạy thêm AdGuard Home hoặc VPN.
- Một HAT PCIe có cổng Ethernet để làm WAN, ví dụ HatNET! 1G hoặc 2.5G. Tại akd.vn, mạch PCIe sang 2 LAN 2.5G là lựa chọn tương đương về mục đích.
- Thẻ nhớ microSD hoặc SSD NVMe M.2 2230/2242. Router chạy 24/7 nên SSD bền hơn thẻ nhớ; nếu dùng thẻ, chọn loại chất lượng như thẻ 64GB Kioxia Exceria.
- Nguồn 5V/5A (27W). Pi 5 cộng HAT PCIe cộng SSD có thể vượt 3A khi khởi động, nên dùng nguồn PD 27W thay vì sạc điện thoại.
- Một máy tính để tải và ghi ảnh OpenWrt, kèm đầu đọc thẻ hoặc hộp gắn SSD.
- Cáp Ethernet từ modem và một đường Internet RJ45. Nếu nhà mạng dùng PPPoE, modem phải được đặt ở chế độ bridge trước khi làm theo bài này.
Bước 1: Lắp phần cứng và xác định vai trò từng cổng
Không giống các bản cài trên nền hệ điều hành có sẵn, OpenWrt trên Raspberry Pi 5 được ghi thẳng ra thẻ nhớ hoặc SSD, nên phần chuẩn bị chỉ là lắp ráp. Với OpenWrt trên Raspberry Pi 5, bạn gắn HAT PCIe vào board, cắm SSD vào khe M.2 nếu dùng SSD, siết ốc và kiểm tra HAT không chạm vào chân GPIO.
Nguyên tắc cổng rất quan trọng và cũng là chỗ nhiều người làm sai: cổng Ethernet onboard của Pi 5 là LAN, còn cổng trên HAT PCIe là WAN. Cáp từ modem hoặc từ router nhà mạng (đã bridge) cắm vào cổng trên HAT. Máy tính dùng để cấu hình cắm vào cổng onboard. Nếu cắm ngược, router vẫn chạy nhưng bạn sẽ không vào được giao diện quản trị.
Nên lắp thêm tản nhiệt hoặc quạt. Router hoạt động liên tục, và SSD NVMe nằm sát bo mạch sẽ làm nhiệt độ nền cao hơn đáng kể so với khi chạy Pi 5 không tải.
Bước 2: Tải firmware OpenWrt SNAPSHOT cho Raspberry Pi 5
Với OpenWrt trên Raspberry Pi 5, bạn mở trang tải firmware, gõ “Raspberry Pi 5” và chọn nhánh SNAPSHOT. Trang sẽ hiển thị thông tin bản dựng gồm model, platform bcm27xx/bcm2712 và ngày phát hành. Bản SNAPSHOT được dựng lại liên tục nên ngày có thể khác với ảnh minh họa bên dưới.
Điểm khác biệt so với router thông thường là bạn phải nhúng sẵn driver mạng vào ảnh, vì bản SNAPSHOT không cài thêm gói sau khi chạy. Mở mục Customize installed packages and/or first boot script và thêm ba gói sau vào danh sách:
r8169-firmware, kmod-r8169, pciutils
Hai gói đầu là firmware và driver cho chip mạng Realtek trên HAT (dòng RTL8169/8125), gói thứ ba là bộ công cụ PCI để bạn kiểm tra HAT có được nhận hay không. Nếu HAT của bạn dùng chip khác, hãy thay bằng gói driver tương ứng của chip đó; đây là lý do nên xem thông số HAT trước khi build.
Nhấn Request Build và đợi khoảng vài phút; bản OpenWrt trên Raspberry Pi 5 sẽ được dựng riêng cho cấu hình bạn vừa chọn. Khi trạng thái chuyển sang sẵn sàng, tải Factory image với một trong hai định dạng: ext4 cho hệ thống file quen thuộc, dễ gỡ lỗi khi cắm SSD vào máy tính; hoặc squashfs tiết kiệm dung lượng và cho phép khôi phục cấu hình gốc nhanh hơn. Với router, squashfs thường là lựa chọn an toàn hơn.
Bước 3: Ghi ảnh ra thẻ nhớ hoặc SSD
Ảnh OpenWrt trên Raspberry Pi 5 chỉ khoảng 185 MB, nên balenaEtcher hay Raspberry Pi Imager đều ghi rất nhanh., miễn là công cụ ghi được file .img thô. Mở balenaEtcher, chọn Flash from file và trỏ tới ảnh OpenWrt vừa tải, sau đó chọn đích là thẻ nhớ hoặc SSD. Kích thước ảnh vào khoảng 185 MB nên quá trình ghi chỉ mất chưa tới một phút.
Sau khi ghi xong, rút thiết bị an toàn rồi lắp vào Pi 5 hoặc khe M.2 trên HAT. Bước này giống nhau dù bạn chạy OpenWrt trên Raspberry Pi 5 bằng thẻ nhớ hay bằng SSD NVMe.
Trước lần khởi động đầu tiên của OpenWrt trên Raspberry Pi 5, nhớ tháo mọi thẻ nhớ khác: nếu còn một thẻ có hệ điều hành khác, Pi 5 sẽ ưu tiên khởi động từ đó thay vì từ ảnh OpenWrt bạn vừa ghi.
Bước 4: Cấu hình WAN ở lần khởi động đầu
Cấp nguồn để OpenWrt trên Raspberry Pi 5 khởi động, đợi khoảng 30 giây rồi mở trình duyệt trên máy tính và truy cập http://192.168.1.1. Giao diện LuCI hiện ra với hai thông tin mặc định: đăng nhập bằng root, mật khẩu để trống, và SSH mở ở cổng 22. Như vậy là OpenWrt trên Raspberry Pi 5 đã chạy; phần còn lại chỉ là cấu hình.
Lưu ý về địa chỉ: OpenWrt tự đặt LAN là 192.168.1.1, trùng với rất nhiều modem nhà mạng. Nếu bạn định cắm router mới vào mạng hiện có thay vì thay thế modem, hãy đổi LAN sang dải khác (ví dụ 192.168.10.1) trước khi nối hai mạng, nếu không sẽ xảy ra xung đột địa chỉ.
Để OpenWrt trên Raspberry Pi 5 có Internet, cần tạo interface WAN. Vào Network → Interfaces → Add new interface, đặt tên wan viết thường, chọn giao thức DHCP client và chọn thiết bị là eth1 – cổng mạng trên HAT PCIe. Nhấn Create interface, sau đó Save và Save & Apply.
Khởi động lại bằng System → Reboot, hoặc gõ reboot trong phiên SSH. Khi lên lại, vào Network → Interfaces và kiểm tra WAN đã có địa chỉ IPv4 chưa. Nếu có, toàn bộ thiết bị trong LAN đã ra Internet qua Pi 5.
Tên thiết bị eth1 phụ thuộc vào HAT và thứ tự nhận driver. Nếu danh sách thiết bị không có eth1, chạy ip link qua SSH để xem tên thực tế, hoặc dùng lspci (đã cài qua gói pciutils) để kiểm tra HAT có hiện trên bus PCIe hay không.
Bước 5: Bật Wi-Fi access point
Wi-Fi của OpenWrt trên Raspberry Pi 5 dùng chip Broadcom CYW43455, hỗ trợ 802.11ac hai băng tần. Chất lượng không bằng router chuyên dụng, nhưng đủ cho một phòng hoặc một căn hộ nhỏ, và tiện khi bạn muốn một SSID riêng cho thiết bị IoT.
Trên OpenWrt trên Raspberry Pi 5, vào Network → Wireless, tìm mục Cypress CYW43455 802.11ac/b/g/n và nhấn Add. Đặt SSID, chọn chế độ bảo mật WPA2-PSK hoặc WPA3-SAE, nhập mật khẩu, chọn kênh và băng tần rồi lưu lại. Nên đặt kênh cố định thay vì để tự động, vì chip Wi-Fi của Pi 5 đôi khi chọn kênh chồng lấn với hàng xóm và làm giảm tốc độ.
Một lưu ý thực tế: Wi-Fi của OpenWrt trên Raspberry Pi 5 dùng chung ăng-ten với Bluetooth và khá nhạy với nhiệt độ. Nếu router đặt trong hộp kín, hãy khoan lỗ thông gió hoặc dùng vỏ nhôm có tản nhiệt, nếu không tốc độ Wi-Fi sẽ giảm sau vài giờ chạy liên tục.
Bước 6: Bảo mật sau khi cài
Mặc định, OpenWrt trên Raspberry Pi 5 không đặt mật khẩu cho tài khoản root. Trong mạng gia đình, rủi ro thấp nhưng không nên giữ nguyên. Vào System → Administration, đặt mật khẩu mạnh cho root; mật khẩu này cũng là mật khẩu SSH.
Sau khi cài OpenWrt trên Raspberry Pi 5, ba việc nên làm thêm: tắt SSH từ phía WAN (mặc định đã chặn), đổi cổng quản trị nếu router có IP công khai, và bật Software Flow Offloading trong Network → Firewall nếu bạn cần định tuyến trên 1 Gbit. Với router chỉ dùng trong LAN, đặt mật khẩu root là đủ cho phần lớn trường hợp.
Hiệu năng thực tế và lựa chọn phần cứng
Trong thử nghiệm với đường 1 Gbit, OpenWrt trên Raspberry Pi 5 định tuyến NAT ở tốc độ tối đa của đường truyền, CPU chỉ vài phần trăm và RAM dùng khoảng 120 MB. Con số này giải thích vì sao bản Pi 5 2GB là lựa chọn hợp lý cho router: tiền mua RAM nên dành cho SSD hoặc HAT mạng.
Nếu chạy OpenWrt trên Raspberry Pi 5 kèm AdGuard Home, VPN WireGuard cho 5-10 thiết bị, hoặc SQM để giảm độ trễ khi tải nặng, nên chọn bản 4GB. SSD NVMe cũng đáng đầu tư hơn thẻ nhớ nếu router chạy 24/7, vì thẻ nhớ ghi log liên tục sẽ hỏng sau một đến hai năm.
Xử lý sự cố thường gặp
Phần lớn lỗi khi cài OpenWrt trên Raspberry Pi 5 đến từ hai chỗ: cắm sai cổng mạng và thiếu gói driver cho HAT PCIe. Bảng dưới đây tổng hợp các trường hợp hay gặp.
| Hiện tượng | Nguyên nhân thường gặp | Cách xử lý |
|---|---|---|
| Không mở được 192.168.1.1 | Cắm cáp vào cổng WAN thay vì cổng LAN onboard, hoặc máy tính không nhận DHCP | Cắm lại cáp vào cổng Ethernet của Pi 5, đặt IP tĩnh 192.168.1.2/24 cho máy tính rồi thử lại |
| WAN không có địa chỉ IPv4 | Sai tên thiết bị, thiếu gói driver, hoặc modem chưa bridge | Kiểm tra tên cổng bằng ip link, xem lại gói driver khi build, kiểm tra chế độ bridge của modem |
| Không thấy cổng mạng của HAT | Thiếu kmod-r8169 hoặc r8169-firmware, HAT chưa tiếp xúc | Chạy lspci xem HAT có hiện không, tháo ra cắm lại, build lại ảnh có driver |
| Không có mục Wireless | Ảnh thiếu firmware Wi-Fi hoặc gói wpad | Cài thêm gói Wi-Fi tương ứng hoặc build lại ảnh có sẵn các gói đó |
| Mất kết nối sau khi đổi IP LAN | Máy tính vẫn giữ địa chỉ cũ | Truy cập địa chỉ mới, hoặc đổi máy tính sang DHCP và kết nối lại |
Tóm lại, để dựng router từ OpenWrt trên Raspberry Pi 5 bạn cần đúng ba thứ: ảnh SNAPSHOT có sẵn driver cho cổng WAN, xác định đúng cổng nào là LAN cổng nào là WAN, và tạo interface wan trỏ vào eth1. Ba bước đó chiếm phần lớn thời gian; các phần còn lại như Wi-Fi, DNS hay VPN chỉ là cấu hình thêm.
Sau khi làm xong, OpenWrt trên Raspberry Pi 5 sẽ tự khởi động lại mỗi khi mất điện và giữ nguyên cấu hình. Điều đáng chú ý là bạn đang dùng một board máy tính phổ thông, có sẵn tài liệu và phụ kiện tại Việt Nam, để thay thế một thiết bị mạng đóng thường bị nhà mạng khóa firmware. Với chi phí thấp hơn nhiều router Wi-Fi 6 cao cấp, bạn nhận lại toàn bộ quyền kiểm soát đường mạng của mình.
Nguồn: The Pi Hut

