Tại sao nên bỏ Static Route để chuyển sang Dynamic Routing?
Quản trị mạng thủ công là “ác mộng” khi quy mô hệ thống phình to. Nếu bạn đang quản lý khoảng 50-100 Virtual Machines, việc gõ tay từng dòng ip route add cho mỗi node rất dễ gây sai sót. Chỉ cần một switch trung gian gặp sự cố, toàn bộ traffic sẽ bị nghẽn nếu bạn không kịp cập nhật route thủ công ngay lập tức.
Dynamic Routing giải quyết vấn đề này bằng cách cho phép các thiết bị tự trao đổi thông tin. Thay vì chỉ đường cố định, các giao thức như OSPF hay BGP sẽ giúp server tự tìm đường đi mới khi có sự cố. Trên Linux, FRRouting (FRR) hiện là tiêu chuẩn vàng. Nó kế thừa từ Quagga nhưng nhanh và ổn định hơn nhiều, với bộ lệnh cực kỳ giống Cisco IOS.
Sức mạnh của FRRouting trong môi trường hiện đại
FRR không chỉ là một phần mềm định tuyến thông thường. Nó là một fork của Quagga được tối ưu cho cloud và container, hỗ trợ đầy đủ BGP, OSPF, IS-IS, và thậm chí cả MPLS.
Kiến trúc đa tiến trình (multi-daemon) là điểm cộng lớn nhất của FRR. Mỗi giao thức chạy một tiến trình độc lập. Nếu OSPF gặp lỗi, phiên BGP của bạn vẫn hoạt động bình thường, không gây gián đoạn toàn hệ thống. Công cụ vtysh đi kèm cung cấp một shell quản trị tập trung, giúp bạn cấu hình mọi giao thức tại một nơi duy nhất.
Cài đặt FRRouting trên Ubuntu/Debian
Để đảm bảo tính ổn định và nhận được các bản vá bảo mật mới nhất, bạn nên sử dụng repository chính thức từ FRR thay vì bản có sẵn trong kho của Ubuntu.
# Cài đặt các gói hỗ trợ và FRR
sudo apt update
sudo apt install -y frr frr-pythontools
Sau khi cài đặt, các giao thức định tuyến mặc định sẽ ở trạng thái tắt. Bạn cần mở file /etc/frr/daemons để kích hoạt những giao thức mình cần.
sudo nano /etc/frr/daemons
Hãy chuyển giá trị từ no thành yes tại các dòng sau:
ospfd=yes
bgpd=yes
Cuối cùng, khởi động lại dịch vụ để áp dụng thay đổi:
sudo systemctl restart frr
Cấu hình OSPF (Interior Gateway Protocol) thực tế
OSPF là lựa chọn số một để chạy trong nội bộ datacenter hoặc mạng doanh nghiệp nhờ khả năng hội tụ cực nhanh (thường dưới 1 giây). Giả sử bạn có 2 node Linux kết nối trực tiếp qua dải IP 10.0.0.0/30.
Đầu tiên, hãy truy cập vào shell quản trị:
sudo vtysh
Tiến hành cấu hình tương tự như trên thiết bị Cisco:
conf t
router ospf
ospf router-id 1.1.1.1
network 10.0.0.0/30 area 0
network 192.168.1.0/24 area 0
exit
write memory
Lưu ý nhỏ: Khi chia subnet cho hàng chục VLAN, mình thường dùng IP Subnet Calculator để tránh nhầm lẫn IP. Công cụ này giúp tính nhanh network range và broadcast cho các dải /30 hoặc /31 cực kỳ chính xác.
Triển khai BGP cho kiến trúc Leaf-Spine
BGP không còn chỉ dành cho Internet ISP. Trong các hệ thống lớn, BGP được dùng để kết nối các vùng mạng khác nhau (Autonomous Systems). Dưới đây là cách thiết lập phiên eBGP cơ bản giữa AS 65001 và AS 65002.
conf t
router bgp 65001
bgp router-id 1.1.1.1
neighbor 10.0.0.2 remote-as 65002
!
address-family ipv4 unicast
network 192.168.10.0/24
exit-address-family
exit
write memory
Kiểm tra và xử lý lỗi (Troubleshooting)
Đừng vội mừng khi vừa gõ xong lệnh. Bạn cần kiểm tra xem các node đã thực sự “thấy” nhau chưa bằng các lệnh kiểm tra trạng thái sau:
show ip route: Kiểm tra bảng định tuyến. Route có chữ O là học từ OSPF, chữ B là từ BGP.show ip ospf neighbor: Đảm bảo trạng thái phải làFull. Nếu đứng ởInithoặcExStart, hãy kiểm tra lại MTU hoặc Firewall.show ip bgp summary: Xem số lượng prefix nhận được.
Nếu trạng thái BGP hiển thị Active hoặc Idle, kết nối đang bị chặn hoặc sai thông số AS. Khi hiện lên một con số cụ thể, lúc đó hệ thống của bạn mới thực sự thông suốt.
3 kinh nghiệm “xương máu” khi chạy FRR
1. Quên bật IP Forwarding: Đây là lỗi phổ biến nhất khiến traffic không thể đi qua server. Bạn phải cho phép Linux chuyển tiếp gói tin bằng lệnh:
echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
2. Sử dụng Dummy Interface: Luôn đặt Router-ID dựa trên một interface Loopback (Dummy). Interface vật lý có thể bị rút cáp, nhưng interface ảo thì luôn tồn tại, giúp các phiên định tuyến không bị reset vô lý.
3. Kiểm soát Prefix List: Đừng bao giờ tin tưởng tuyệt đối vào láng giềng. Hãy dùng prefix-list để lọc những dải IP lạ, tránh việc bảng định tuyến bị đầu độc bởi các route không mong muốn.
Lời kết
FRRouting biến một chiếc server Linux rẻ tiền thành một router chuyên nghiệp có khả năng xử lý hàng triệu route. Việc nắm vững OSPF và BGP trên FRR giúp bạn làm chủ hạ tầng mạng mà không phụ thuộc vào các thiết bị phần cứng đắt đỏ. Hãy bắt đầu dựng một mô hình lab nhỏ với 3 máy ảo để thấy sức mạnh thực sự của Dynamic Routing.

