OSPF Troubleshooting: ACLs và MTU Mismatch – Hai Nguyên Nhân "Khó Chịu" Khi Neighbor Không Lên Full Khi troubleshooting OSPF, phần lớn kỹ sư thường kiểm tra: Interface Up/Up Cùng subnet Cùng Area Timer Authentication Tuy nhiên, có hai nguyên nhân rất dễ bị bỏ sót nhưng lại xuất hiện khá thường xuyên trong môi trường Enterprise: ACL chặn OSPF MTU không đồng nhất (MTU Mismatch) 1. ACL Chặn OSPF (ACLs) ACL có thể ngăn OSPF hình thành Neighbor Access Control List (ACL) là một trong những công cụ mạnh nhất trên router Cisco. Tuy nhiên, chỉ cần một dòng deny không đúng chỗ, OSPF có thể ngừng hoạt động hoàn toàn. OSPF không sử dụng: TCP UDP Mà sử dụng: IP Protocol Number = 89 Do đó, nếu ACL chặn Protocol 89, router sẽ không nhận được Hello Packet và Neighbor Adjacency sẽ không thể hình thành. Kiểm tra ACL trên Interface Sử dụng: show ip interface gigabitEthernet1/0 Ví dụ: Inbound access list is 100 Điều này cho thấy: ACL 100 đang được áp dụng inbound trên Gi1/0 Kiểm tra nội dung ACL show access-lists 100 Ví dụ: Extended IP access list 100 10 deny ospf any any 20 permit ip any any Nhìn vào đây, nguyên nhân đã rất rõ ràng: deny ospf any any Toàn bộ gói OSPF bị loại bỏ. Kết quả: Không nhận Hello Không hình thành Neighbor Tình huống thực tế Rất nhiều doanh nghiệp triển khai: deny ip any any log hoặc: permit tcp permit udp permit icmp nhưng quên permit OSPF. Khi đó: Ping được SSH được Telnet được nhưng: OSPF Down Điều này khiến kỹ sư mất rất nhiều thời gian troubleshooting vì IP Connectivity vẫn hoạt động bình thường. Cách khắc phục Cho phép Protocol 89: permit ospf any any hoặc: permit 89 any any Sau đó Neighbor sẽ bắt đầu trao đổi Hello và hình thành adjacency. 2. MTU Mismatch Đây là một trong những lỗi "kinh điển" của OSPF. Khác với EIGRP, OSPF sẽ so sánh MTU khi trao đổi Database Description (DBD) Packet. Nếu MTU không giống nhau: Hai router nhìn thấy nhau Nhận được Hello Hình thành Neighbor một phần Nhưng không thể đạt trạng thái Full. Triệu chứng điển hình Router R1 show ip ospf neighbor Kết quả: 10.1.23.2 EXCHANGE/DR Router R2 10.1.12.1 EXSTART/BDR Một router kẹt ở: EXSTART Router còn lại: EXCHANGE Gần như chắc chắn bạn đang gặp: MTU Mismatch Kiểm tra bằng Nbrs F/C Một dấu hiệu khác: show ip ospf interface brief Ví dụ: Interface PID Area State Nbrs F/C Gi1/0 1 1 BDR 0/1 Ý nghĩa: Nbrs = 1 Full Adjacency = 0 Router biết có một neighbor nhưng không thể lên trạng thái Full. Đây là triệu chứng cực kỳ điển hình của MTU Mismatch. Kiểm tra MTU Router R1 show run interface gigabitEthernet1/0 Kết quả: ip mtu 1476 Router R2 show run interface gigabitEthernet0/0 Không có dòng: ip mtu Điều này có nghĩa: MTU mặc định = 1500 Kết quả: R1 = 1476 R2 = 1500 Hai đầu không đồng nhất. OSPF dừng tại: EXSTART/EXCHANGE Tại sao MTU lại khác nhau? Lỗi này xuất hiện rất nhiều trong: GRE Tunnel MTU = 1476 DMVPN MTU = 1400-1476 MPLS VPN PPPoE MTU = 1492 IPSec VPN MTU nhỏ hơn 1500 Do overhead của các giao thức encapsulation. Cách khắc phục Phương pháp 1 (Khuyến nghị) Đồng bộ MTU: interface GigabitEthernet1/0 ip mtu 1500 hoặc: interface GigabitEthernet0/0 ip mtu 1476 Hai đầu phải giống nhau. Phương pháp 2 Bỏ qua kiểm tra MTU: interface GigabitEthernet1/0 ip ospf mtu-ignore Lệnh này yêu cầu OSPF: Đừng so sánh MTU khi hình thành Neighbor Có nên dùng ip ospf mtu-ignore? Trong lab: Có thể dùng. Trong Production: Không nên lạm dụng. Bởi vì: OSPF có thể lên Full, nhưng dữ liệu thực tế vẫn có thể bị: Fragmentation Packet Drop Hiệu năng thấp Ứng dụng timeout Lệnh này chỉ "che" triệu chứng mà không xử lý nguyên nhân gốc. Góc nhìn thực chiến CCNP/CCIE Nếu thấy: Neighbor State: INIT DOWN → Nghĩ đến: ACL Authentication Area Timer Nếu thấy: Neighbor State: EXSTART EXCHANGE → Nghĩ ngay đến: MTU Mismatch Đây gần như là "dấu vân tay" của lỗi MTU trong OSPF. Một quy trình troubleshooting rất hiệu quả là: show ip ospf neighbor show ip ospf interface brief show ip interface show access-lists show run interface Trong các hệ thống Enterprise sử dụng GRE, DMVPN, IPSec hoặc SD-WAN Overlay, MTU Mismatch và ACL chặn Protocol 89 là hai nguyên nhân xuất hiện thường xuyên nhất khiến OSPF không thể lên Full mặc dù toàn bộ Layer 1, Layer 2 và IP Connectivity đều hoạt động bình thường. Đây là những lỗi mà bất kỳ kỹ sư CCNP hoặc CCIE nào cũng nên nghĩ tới đầu tiên khi thấy OSPF bị kẹt ở trạng thái EXSTART hoặc EXCHANGE.