Công thức đơn giản để tính toán phân tách cáp mạng và cáp điện cho hệ thống cáp TTDL

Trong môi trường có mật độ cao như trung tâm dữ liệu, việc tách biệt giữa cáp nguồn và cáp dữ liệu là rất quan trọng để giảm thiểu nhiễu điện từ (EMI) đảm bảo truyền dữ liệu sạch và độ tin cậy của hệ thống.

Mặc dù có các khuyến nghị chi tiết trong các tiêu chuẩn như BICSI 002 , TIA-569-D  National Electrical Code (NEC), chúng ta  cần một phương pháp ước tính nhanh khi lập kế hoạch khẩn cấp.

Trong đó:

– S = Khoảng cách tách biệt (tính bằng inch hoặc mm)

– k = Hằng số môi trường (phụ thuộc vào loại cáp và phương pháp định tuyến)

– I = Dòng điện trong dây cáp điện (tính bằng Ampe)

+ Cáp điện không được che chắn (ngoài trời): Cáp điện không được che chắn có khả năng gây nhiễu điện từ cao nhất vì không có lớp che chắn để ngăn chặn từ trường do dòng điện tạo ra. Việc lắp đặt ngoài trời càng làm trầm trọng thêm tình trạng này vì không có lớp che chắn hay rào cản. Do đó, k = 0,5 inch trên mỗi Ampe.

+ Cáp điện có vỏ bọc hoặc ống dẫn kim loại: Việc che chắn hoặc kéo cáp trong ống dẫn kim loại làm giảm lượng EMI. Ống dẫn hoạt động như một lồng Faraday, ngăn trường điện từ thoát ra ngoài. Do đó, k = 0,25 inch trên mỗi Ampe.

+ Cáp điện áp cao (>480V): Cáp điện áp cao vốn mang trường điện từ cao hơn, làm tăng nguy cơ nhiễu với các cáp dữ liệu gần đó. Ngay cả khi được che chắn, điện áp cao hơn vẫn đòi hỏi khoảng cách lớn hơn để ngăn ngừa nhiễu xuyên âm và đảm bảo tính toàn vẹn của tín hiệu. Do đó, k = 1,0 inch trên mỗi Ampe

+ Ống dẫn kim loại riêng biệt: Khi cả cáp nguồn và cáp dữ liệu được đặt trong các ống dẫn kim loại riêng biệt, mức độ nhiễu EMI là tối thiểu vì các cáp được che chắn vật lý với nhau. Thiết lập này mang lại khả năng bảo vệ tối ưu, giảm nhu cầu về khoảng cách xa. Do đó, k = 0,1 inch trên mỗi Ampe.

Ví dụ: Khoảng cách cáp mạng và cáp điện 30A

Các hằng số này không được lấy từ một mã quy định duy nhất mà thay vào đó nó được lấy từ:

– BICSI 002 (Data Center Design and Implementation Best Practices)

TIA-569-D (Pathways and Spaces Standard)

– NEC (National Electrical Code)

Các tài liệu này thường chỉ định khoảng cách tách biệt tối thiểu dựa trên mức điện áp, lớp che chắn cáp và pathway, nhưng vẫn để lại cho kỹ sư đưa ra phán đoán dựa trên các điều kiện thực tế.

Công thức đơn giản này cung cấp một cách nhanh chóng và hiệu quả để ước tính khoảng cách tách biệt an toàn EMI trong giai đoạn thiết kế, đặc biệt là khi không thể tiếp cận ngay lập tức các tiêu chuẩn đầy đủ.

Để có kế hoạch chi tiết, hãy luôn tham khảo các tiêu chuẩn BICSI hoặc TIA và phối hợp với các quy định địa phương và hướng dẫn kỹ thuật cụ thể tại địa điểm thi công lắp đặt

Đảm bảo an ninh vật lý cho hệ thống cáp dữ liệu

Trong bối cảnh các hệ thống dữ liệu đang phát triển không ngừng, an ninh mạng thường được chú trọng , nhưng bảo mật cơ sở hạ tầng vật lý  đặc biệt là đối với hệ thống cáp cấu trúc cũng quan trọng không kém. Vi phạm lớp vật lý có thể gây thiệt hại không kém việc vi phạm kỹ thuật số.

Để giải quyết vấn đề này, tiêu chuẩn ANSI/TIA 5017 nêu ra các biện pháp bảo mật và các phương pháp tốt nhất mà trung tâm dữ liệu phải áp dụng để bảo vệ hệ thống cáp viễn thông khỏi bị truy cập trái phép, hư hỏng hoặc giả mạo.

Định tuyến cáp an toàn: Không bao giờ được đi cáp qua khu vực công cộng hoặc khu vực mà người thuê có thể tiếp cận trừ khi được bao bọc hoàn toàn trong ống dẫn an toàn hoặc lối đi có khóa .

– Ngăn chặn truy cập vật lý trái phép

– Giảm nguy cơ bị chạm hoặc hư hỏng do tai nạn

Giám sát các vị trí hộp box trung gian

Tất cả các hộp trung gian hoặc điểm truy cập cáp phải được giám sát thông qua hệ thống an ninh của trung tâm dữ liệu .

– Giám sát video và/hoặc

– Hệ thống báo động từ xa

Đảm bảo phản ứng kịp thời với các mối đe dọa tiềm ẩn hoặc nỗ lực phá hoại.

Sử dụng ống dẫn kim loại

Khi đường dẫn cáp không thể khóa hoặc cô lập:

– Lắp đặt ống kim loại hoặc đường ống bọc thép

– Giúp duy trì tính toàn vẹn vật lý của hệ thống cáp

– Ngăn chặn sự can thiệp hoặc phá vỡ cố ý

Việc thực hiện các biện pháp này không chỉ tăng cường việc tuân thủ các tiêu chuẩn mà còn:

– Giảm nguy cơ vi phạm dữ liệu thông qua xâm nhập vật lý .

– Đảm bảo tính liên tục của hoạt động kinh doanh bằng cách bảo vệ các đường truyền thông quan trọng.

– Tăng cường chiến lược bảo mật phòng thủ chuyên sâu bằng cách thêm một lớp bảo vệ vật lý

– Sàn nâng có tấm mở

– Trần treo với máng cáp không được giám sát

– Hộp đấu nối, hộp kéo cáp  hoặc điểm nối cáp nằm ngoài khu vực hạn chế

– Đường cáp chung trong các tòa nhà có nhiều người vận hành hoặc dùng chung

CM, CMR hay CMP? Cách chọn cáp phù hợp với nhu cầu

Khi thiết kế và triển khai hạ tầng mạng, việc lựa chọn đúng loại cáp là vô cùng quan trọng. Hiểu rõ sự khác biệt giữa các loại cáp, chuẩn cáp CM/CMG, CMR và CMP là chìa khóa để đảm bảo an toàn và hiệu suất trong các khu vực triển khai khác nhau. Dưới đây là một số hướng dẫn nhanh:

I. CM/CMG

– Cáp CM/CMG (Communications Multipurpose) là loại cáp truyền thông cho mục đích đa năng, phù hợp để lắp đặt trong tường, tuân thủ tiêu chuẩn chống cháy UL CM, CSA FT-4, và UL 1581. Cáp này không có khả năng chống cháy cao như các loại cáp CMG (General) hoặc CMP, do không có lớp phủ Teflon, vì vậy nó chỉ được phép dùng cho các kết nối ngắn, trong nhà và không được dùng trong ống thông gió hoặc các ứng dụng yêu cầu tiêu chuẩn an toàn cao.

Đặc điểm của cáp CM/CMG

  • Ứng dụng: Dùng cho các kết nối cáp ngang trong nhà, như từ ổ cắm tường đến máy tính hoặc các ứng dụng kết nối mạng LAN ngắn trong nhà.
  • Vỏ cáp: Vỏ cáp CM/CMG thường làm bằng PVC, không có lớp phủ Teflon chống cháy.
  • Tiêu chuẩn chống cháy: Cáp CM/CMG phải vượt qua bài kiểm tra Phân biệt FT-4 (CSA) (Thử nghiệm đốt cháy theo chiều dọc), trong đó cáp tự tắt trong vòng 5 mét.
  • Hạn chế: Không được sử dụng trong ống thông gió hoặc các không gian yêu cầu tiêu chuẩn an toàn cao do khả năng sinh khói và khói độc khi cháy.

Lý do lựa chọn cáp CM/CMG

  • Chi phí thấp: Đây là lựa chọn tiết kiệm chi phí cho các ứng dụng kết nối mạng trong nhà.
  • Dễ dàng lắp đặt: Phù hợp cho việc lắp đặt trong tường cho các công trình dân cư hoặc thương mại một tầng.
  • Thích hợp cho các ứng dụng đa mục đích.
  • Tiết kiệm chi phí cho việc lắp đặt theo chiều ngang.
  • Không thích hợp cho không gian nhiệt độ cao hoặc trục đứng do khả năng chống cháy hạn chế.

II. CMR

CMR (Communications Multipurpose, Riser) là một xếp hạng an toàn cho vỏ cáp, chỉ định rằng cáp này được thiết kế để lắp đặt theo trục đứng giữa các tầng trong các tòa nhà, ví dụ trong riser hoặc tường. CMR có khả năng chống cháy cao hơn cáp CM và được thử nghiệm trong một buồng đốt thẳng đứng dài 3,6m (12 feet) để đảm bảo ngọn lửa không lan quá 3,6m, ngăn chặn cháy lan giữa các tầng. Vỏ cáp CMR thường được làm từ PVC có khả năng chống cháy, sử dụng vật liệu halogen trong quá trình cháy để tiêu thụ oxy và dập tắt lửa.

Đặc điểm chính của cáp CMR:

  • Chống cháy: Vỏ cáp CMR có khả năng chống cháy cao hơn cáp CM, phù hợp với tiêu chuẩn UL 1666.
  • Ứng dụng: Được sử dụng trong các tòa nhà nhiều tầng, lắp đặt theo chiều dọc trong các risers hoặc tường, không sử dụng trong không gian thông gió cho hệ thống HVAC.
  • Cơ chế dập lửa: Vỏ cáp được làm từ vật liệu PVC chứa halogen. Khi cháy, halogen (ví dụ: clo) sẽ phản ứng với oxy trong không khí, làm cạn kiệt nguồn cung cấp oxy và làm tắt lửa.
  • An toàn: Cáp CMR được coi là lựa chọn an toàn và đáng tin cậy cho các tòa nhà cao tầng, có thể thay thế cáp CM cho các ứng dụng đa dạng.

Sự khác biệt với các loại cáp khác:

  • So với CM: Cáp CMR có tiêu chuẩn chống cháy nghiêm ngặt hơn CM, phù hợp cho trục đứng giữa các tầng.
  • So với CMP: Cáp CMP có khả năng chống cháy cao nhất, được khuyên dùng trong các không gian thông gió (plenum) nơi hệ thống điều hòa không khí hoạt động.
  • So với CMX: Cáp CMX được thiết kế để lắp đặt ngoài trời, có khả năng chống lại các yếu tố môi trường.

III. CMP

  • CMP data cable (hoặc cáp Plenum) là loại cáp được xếp hạng chống cháy cao, có vỏ bọc làm bằng vật liệu chậm cháy và giảm thiểu khói độc, chuyên lắp đặt trong các không gian thông gió (không gian plenum) như trần giả, sàn nâng trong các tòa nhà văn phòng, bệnh viện, trường học. Tiêu chuẩn CMP yêu cầu cáp phải hạn chế sự lan truyền ngọn lửa tối đa 1.5 mét và giảm lượng khói phát ra khi bị cháy.

Đặc điểm của cáp CMP: 

  • Vật liệu vỏ cáp: Sử dụng vật liệu đốt sạch hơn như PTFEFEP, hoặc PVC ít khói, có khả năng tự dập tắt ngọn lửa.
  • An toàn chống cháy: Hạn chế tối đa sự lan truyền của ngọn lửa và phát ra ít khói độc, đảm bảo an toàn trong trường hợp hỏa hoạn.
  • Tiêu chuẩn: Được kiểm nghiệm và chứng nhận theo tiêu chuẩn UL910 hoặc CSA FT6.

Ứng dụng của cáp CMP:

  • Lắp đặt trong các không gian thông gió của tòa nhà, nơi luồng không khí di chuyển.
  • Sử dụng trong các công trình có yêu cầu an toàn cao như văn phòng, bệnh viện, trường học.

IV. NHỮNG CÂN NHẮC CHO KHÔNG GIAN TRIỂN KHAI

  • Không gian văn phòng: Cáp CM/CMG có giá thành hợp lý và phù hợp.
  • Không gian trục đứng (Riser): Chọn cáp CMR để tăng cường khả năng chống cháy.
  • Không gian Plenum: Cáp CMP là điều bắt buộc để đảm bảo an toàn và tuân thủ.

Hãy nhớ rằng việc tuân thủ các quy định xây dựng tại địa phương là rất quan trọng.

LƯU Ý: Đối với những người tham gia thiết kế, lắp đặt và bảo trì trung tâm dữ liệu, điều quan trọng là phải nắm rõ các yêu cầu cụ thể được nêu trong NFPA 70 (NEC) và các quy chuẩn, tiêu chuẩn liên quan khác. Việc lựa chọn cáp đáp ứng các tiêu chuẩn này góp phần đảm bảo an toàn và độ tin cậy tổng thể cho cơ sở hạ tầng điện trong các tòa nhà, bao gồm cả trung tâm dữ liệu. Hãy luôn tham khảo ý kiến ​​của các chuyên gia có trình độ và cập nhật những thông tin mới nhất về quy chuẩn và tiêu chuẩn trong quá trình thiết kế và thi công

 

Các phương pháp tốt nhất khi đấu nối cáp với Module hoặc Patch Panel

Trong quá trình làm việc, tôi nhận thấy rằng một số đơn vị thi công cáp thực hiện đấu nối không đúng theo kỹ thuật. Việc đấu nối cáp đúng rất quan trọng để đảm bảo hiệu suất, độ tin cậy và tính toàn vẹn lâu dài của hệ thống cáp có cấu trúc.

Dưới đây là những điểm cần chú ý khi thực hiện việc đấu nối

HẠN CHế việc loại bỏ vỏ cáp

– Bảo vệ tính toàn vẹn của cáp : Vỏ cáp loại C có tác dụng che chắn và bảo vệ các dây cáp nhỏ bên trong . Việc giữ vỏ cáp nguyên vẹn tối đa có thể giúp duy trì tính toàn vẹn về cấu trúc của cáp theo tiêu chuẩn của nhà sản xuất, giảm thiểu nguy cơ hư hỏng dây dẫn trong và sau khi đấu nối.

– Duy trì hiệu suất tín hiệu : Vỏ cáp giúp duy trì trở kháng đặc trưng của cáp, yếu tố thiết yếu cho tính toàn vẹn của tín hiệu và chất lượng truyền dẫn. Việc loại bỏ quá nhiều vỏ cáp có thể làm thay đổi trở kháng của cáp, dẫn đến suy giảm tín hiệu, tăng độ suy giảm và dễ bị nhiễu điện từ (EMI).

– Bảo vệ cáp khỏi các tác nhân bên ngoài : Vỏ cáp bảo vệ cáp khỏi các tác nhân môi trường như độ ẩm, nhiệt độ và hư hỏng vật lý. Việc giảm thiểu việc tháo vỏ cáp giúp duy trì khả năng bảo vệ này, kéo dài tuổi thọ của cáp và đảm bảo hiệu suất đáng tin cậy theo thời gian.

– Bảo toàn tính toàn vẹn của tín hiệu: Các vòng xoắn của cáp Category được thiết kế để giảm nhiễu xuyên âm (crosstalk) và duy trì tính toàn vẹn của tín hiệu. Việc hạn chế tháo xoắn giúp bảo toàn các vòng xoắn này, đảm bảo việc truyền dữ liệu đáng tin cậy và giảm nguy cơ nhiễu tín hiệu.

– Ngăn ngừa suy giảm hiệu suất (Performance Los): Việc tháo xoắn cáp vượt quá giới hạn khuyến nghị có thể dẫn đến suy giảm hiệu suất, bao gồm tăng nhiễu xuyên âm và suy hao. Bằng cách giảm thiểu việc tháo xoắn cáp, các đặc tính của cáp được duy trì tốt hơn, tối ưu hóa độ tin cậy.

– Tăng tuổi thọ cáp: Việc tháo xoắn quá mức có thể làm yếu cấu trúc cáp và tăng khả năng bị ảnh hưởng bởi nhiễu từ bên ngoài. Việc giảm thiểu việc tháo xoắn giúp bảo vệ tính toàn vẹn của cáp, kéo dài tuổi thọ và đảm bảo hiệu suất ổn định theo thời gian.

– Giảm nhiễu xuyên âm (Crosstalk): Khoảng hở giữa các đôi dây có thể dẫn đến nhiễu xuyên âm tăng cao, khi tín hiệu từ một cặp dây này gây nhiễu tín hiệu trên các cặp dây liền kề. Việc giảm thiểu khoảng hở giúp duy trì khoảng cách giữa các cặp dây dẫn, giảm nguy cơ nhiễu tín hiệu và đảm bảo hiệu suất tốt hơn.

– Duy trì hiệu suất điện : Cáp mạng được thiết kế với khoảng cách và lớp cách điện cụ thể để giảm thiểu suy giảm tín hiệu. Các khe hở giữa các cặp dây có thể phá vỡ lớp cách điện và khoảng cách này, dẫn đến sự không tương thích trở kháng và suy giảm tín hiệu. 

– Cải thiện độ tin cậy của hệ thống: Việc hạn chế các khe hở giữa những cặp dây giúp duy trì đặc tính đồng nhất trên toàn bộ cáp, giảm thiểu rủi ro về hiệu suất và thời gian ngừng hoạt động của mạng.

Khi lắp đặt cáp loại Category 5e hoặc cao hơn:

– Các cặp dây xoắn phải được giữ nguyên đến trong phạm vi 13mm (0.5 inch) từ điểm kết nối.

– Với cáp loại Category 3, có thể giữ đến 75mm (3 inch) từ điểm kết nối.

– Để đạt hiệu suất tốt nhất, nên giữ xoắn dây càng gần điểm kết nối càng tốt.

🔺 Lưu ý: Luôn tuân thủ hướng dẫn của nhà sản xuất về việc lắp đặt, kết nối và quản lý cáp.

Một số hình ảnh hướng dẫn cho việc đấu nối cáp đúng kỹ thuật từ Fluke Networks

DAC hay AOC Giải pháp cáp kết nối phạm vi ngắn cho trung tâm dữ liệu (DC)

Khi các trung tâm dữ liệu (DC) hiện đại tiếp tục mở rộng quy mô để thích ứng với nhu cầu ngày càng tăng của cloud computing, AI, và virtualization, việc lựa chọn cáp tốc độ cao phù hợp trở thành yếu tố then chốt nhằm đạt được hiệu suất và hiệu quả tối ưu.

Đặc biệt trong kiến trúc mạng spine-leaf và thiết lập switch Top-of-Rack (ToR) , việc lựa chọn cáp DAC và AOC có thể ảnh hưởng đáng kể đến thiết kế và chi phí.

  • DAC (Direct-Attached Cables) thường hiệu quả và thực tế hơn cho các kết nối khoảng cách ngắn trong cùng một rack nhờ tiêu thụ điện năng thấp và đơn giản.

  • AOC (Active Optical Cables) có lợi cho các kết nối khoảng cách xa hơn nhưng có thể kém linh hoạt và có thể cần đi lại dây khi nâng cấp mạng, điều này có thể làm tăng chi phí.

Bảng so sánh DAC và AOC

Tiêu chí Cáp DAC (Direct-Attached Cables) Cáp quang chủ động AOC (Active Optical Cable)
Vật liệu truyền dẫn Đồng Cáp quang
Phạm vi kết nối Tối đa 7 mét Từ 10 mét đến 100 mét
Chi phí Thường rẻ hơn Thường đắt hơn
Độ trễ Thấp Hơi cao hơn một chút
Tiêu thụ điện năng DAC thụ động: Không có
DAC chủ động: Thấp
Cao hơn do có bộ thu phát
Ứng dụng điển hình Kết nối khoảng cách ngắn trong trung tâm dữ liệu Kết nối khoảng cách xa, liên kết giữa các trung tâm dữ liệu
Loại đầu nối SFP+, QSFP+, QSFP28 SFP+, QSFP+, QSFP28

Cáp DAC là cáp đồng có bộ thu phát tích hợp, được thiết kế để kết nối trực tiếp giữa các thiết bị mạng như Server và Switch—mà không cần các module quang riêng biệt.

Các loại cáp DAC:

1️⃣ Passive DACs – Không có thiết bị điện tử bên trong; phù hợp với khoảng cách <=7 mét.

2️⃣ Active DACs – Bao gồm các thiết bị điện tử tăng cường tín hiệu, mở rộng phạm vi lên đến <=10 mét.

Các trường hợp sử dụng điển hình

✅ Kết nối Server-to-switch

✅ Switch stacking

✅Khoảng cách kết nối ngắn, mật độ cao

Ưu điểm chính

Tiêu thụ điện năng thấp

✅ Tiết kiệm chi phí cho các lần chạy ngắn

✅ Quản lý cáp đơn giản

✅ Lý tưởng cho kết nối tầm ngắn, thường là trong cùng một rack hoặc giữa các rack liền kề

Cáp AOC là cáp quang được tích hợp Module điện sang quang ở mỗi đầu. Chúng truyền dữ liệu tốc độ cao bằng tín hiệu ánh sáng qua sợi quang đa mode và lý tưởng cho khoảng cách xa hơn mà DAC không đáp ứng được.

Các trường hợp sử dụng điển hình

✅ Kết nối giữa các Rack và các dãy rack (cross-row) 

✅ Liên kết Spine, leaf, và core switch

✅ Liên kết High-speed backbone trong các trung tâm dữ liệu (DC)

Ưu điểm chính

Hỗ trợ khoảng cách xa hơn (lên đến 100 mét)

Nhẹ và linh hoạt

Truyền tốc độ cao với mức mất tín hiệu tối thiểu

Được đấu nối và kiểm tra trước, giảm thời gian lắp đặt

✅ Chọn cáp DAC cho các kết nối ngắn, trong tủ rack — đơn giản, đáng tin cậy và tiết kiệm chi phí.

✅  Chọn AOC khi cần khoảng cách xa hơn và tốc độ cao hơn trên nhiều rack hoặc trong mạng backbones của trung tâm dữ liệu.

Khắc phục sự cố liên quan đến OSPF Adjacency – Phần 3

Khắc phục sự cố liên quan đến OSPF Adjacency  Phần 1Phần 2

Trong bài viết hôm nay, chúng ta sẽ tiếp tục thảo luận về các nguyên nhân có thể dẫn đến sự cố thiết lập quan hệ OSPF (OSPF adjacency), và sẽ tìm hiểu hai nguyên nhân sau:

+ Không khớp giá trị Hello và Dead Interval

+ Không khớp giá trị MTU

Chúng ta sẽ tiếp tục làm việc trên cùng một sơ đồ mạng (topology) như trước.

Không khớp giá trị Hello và Dead Interval

Như chúng ta đã biết, để thiết lập và duy trì quan hệ OSPF, các router phải có giá trị hellodead interval giống nhau. OSPF không đàm phán các giá trị này — nếu không khớp, quan hệ lân cận sẽ bị coi là down (mất kết nối).

thuongndh@Router1# run show log OSPFLOG
Jan 2 00:04:47.362239 OSPF rcvd Hello 10.100.12.2 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.0)
Jan 2 00:04:47.362261 Version 2, length 48, ID 163.121.1.2, area 0.0.0.0
Jan 2 00:04:47.362266 checksum 0x0, authtype 1
Jan 2 00:04:47.362273 mask 255.255.255.252, hello_ivl 7, opts 0x12, prio 128
Jan 2 00:04:47.362279 dead_ivl 21, DR 0.0.0.0, BDR 0.0.0.0
Jan 2 00:04:47.362285 OSPF packet ignored: hello interval mismatch 7 from 10.100.12.2 on intf ge-0/0/1.112 area 0.0.0.0

Và bằng cách kiểm tra kết quả đầu ra của lệnh show ospf interface detail, chúng ta có thể thấy rằng Router1 đang sử dụng các giá trị mặc định

+ Hello interval: 10 giây

+ Dead interval: 40 giây

→ Điều này cho thấy rõ sự không khớp nếu router bên kia sử dụng các giá trị khác (ví dụ: 7/21 giây), và là nguyên nhân khiến quan hệ OSPF không được thiết lập.

thuongndh@Router1# run show ospf interface ge-0/0/1.112 detail
Interface      State       Area         DR ID        BDR ID       Nbrs
ge-0/0/1.112   PtToPt      0.0.0.0      0.0.0.0      0.0.0.0      0
Type: P2P, Address: 10.100.12.1, Mask: 255.255.255.252, MTU: 1500, Cost: 1
Adj count: 0
Hello: 10, Dead: 40, ReXmit: 5, Not Stub
Auth type: Password
Protection type: None
Topology default (ID 0) -> Cost: 1

Bằng cách kiểm tra kết quả đầu ra của lệnh monitor traffic interface <interface> detail, chúng ta có thể thấy rõ các giá trị Hello Dead interval trong:

  • Các gói tin IN (nhận vào)

  • Các gói tin OUT (gửi ra)

Từ đó, chúng ta có thể đối chiếu và đảm bảo rằng các giá trị này được cấu hình giống nhau trên cả hai router

00:22:44.059611 In IP (tos 0xc0, ttl 1, id 16613, offset 0, flags [none], proto: OSPF (89), length: 76) 10.100.12.2 > 224.0.0.5: OSPFv2, Hello, length 56 [len 44]
Router-ID 163.121.1.2, Backbone Area, Authentication Type: simple (1)
Simple text password: Jun!p3r
Options [External, LLS]
Hello Timer 7s, Dead Timer 21s, Mask 255.255.255.252, Priority 128
LLS: checksum: 0xfff6, length: 3
Extended Options (1), length: 4
Options: 0x00000001 [LSDB resync]00:22:50.412662 Out IP (tos 0xc0, ttl 1, id 25235, offset 0, flags [none], proto: OSPF (89), length: 76) 10.100.12.1 > 224.0.0.5: OSPFv2, Hello, length 56 [len 44]
Router-ID 163.121.1.1, Backbone Area, Authentication Type: simple (1)
Simple text password: Jun!p3r
Options [External, LLS]
Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.252, Priority 128
LLS: checksum: 0xfff6, length: 3
Extended Options (1), length: 4
Options: 0x00000001 [LSDB resync]

Không khớp giá trị MTU

OSPF rất nhạy cảm với sự không khớp về MTU, và nếu có bất kỳ sự khác biệt nào trong giá trị MTU của family INET, thì quan hệ OSPF sẽ không được thiết lập.


 Lưu ý:

+ Nếu không cấu hình MTU logic (logical MTU) cho bất kỳ family giao thức nào (ví dụ: inet, inet6), thì:

– MTU của family INET sẽ thấp hơn 14 byte so với MTU vật lý (physical MTU) đã cấu hình.

+ Nếu bạn sử dụng VLAN tagging hoặc inner VLAN tagging, thì:

– MTU sẽ thấp hơn 18 byte hoặc 22 byte so với MTU vật lý tương ứng.


Triệu chứng lỗi:

Khi có sự khác biệt về MTU giữa hai router

+ Router 1 sẽ bị kẹt ở trạng thái ExStart

+ Router 2 sẽ bị kẹt ở trạng thái Exchange

→ Đây là dấu hiệu kinh điển cho lỗi MTU mismatch trong OSPF.

thuongndh@Router1# run show ospf neighbor
Address         Interface              State     ID               Pri  Dead
10.100.12.1     ge-0/0/1.112           ExStart   163.121.1.1      128    37
thuongndh@Router2# run show ospf neighbor
Address         Interface           State      ID               Pri  Dead
10.100.12.2      ge-0/0/1.112       Exchange   163.121.1.2      128    36

Bạn có thể phát hiện và xác nhận lỗi này bằng cách dùng các lệnh:

show interfaces <interface-name> detail
show ospf neighbor 
monitor traffic interface <interface-name> detail

Bằng cách xem nhật ký traceoptions, chúng ta có thể thấy rằng sự không khớp MTU chính là vấn đề.

thuongndh@Router2# run show log OSPFLOG
Jan  2 00:56:22.289619 OSPF rcvd DbD 10.100.12.1 -> 224.0.0.5 (ge-0/0/1.112 IFL 78 area 0.0.0.0)
Jan  2 00:56:22.289626   Version 2, length 172, ID 163.121.1.1, area 0.0.0.0
Jan  2 00:56:22.289632   checksum 0x0, authtype 1
Jan  2 00:56:22.289638   options 0x52, i 0, m 0, ms 0, r 0, seq 0xa377cd12, mtu 1500
Jan  2 00:56:22.289713 OSPF restart signaling: Received DBD with LLS data from nbr ip=10.100.12.1 id=163.121.1.1.
Jan  2 00:56:22.289719 OSPF packet ignored: MTU mismatch from 10.100.12.1 on intf ge-0/0/1.112 area 0.0.0.0
Jan  2 00:56:23.586559 OSPF rcvd LSUpdate 10.100.12.1 -> 224.0.0.5 (ge-0/0/1.112 IFL 78 area 0.0.0.0)
Jan  2 00:56:23.586568   Version 2, length 112, ID 163.121.1.1, area 0.0.0.0
Jan  2 00:56:23.586574   checksum 0x0, authtype 1
Jan  2 00:56:23.586580   adv count 3
Jan  2 00:56:25.459808 OSPF hello from 163.121.1.1 (IFL 78, area 0.0.0.0) absorbed
Jan  2 00:56:27.091553 OSPF resend last DBD to 10.100.12.1
Jan  2 00:56:27.091607 OSPF sent DbD 10.100.12.2 -> 224.0.0.5 (ge-0/0/1.112 IFL 78 area 0.0.0.0)
Jan  2 00:56:27.091613   Version 2, length 32, ID 163.121.1.2, area 0.0.0.0
Jan  2 00:56:27.091619   options 0x52, i 1, m 1, ms 1, r 0, seq 0xa377cd12, mtu 1482
Jan  2 00:56:27.091656 OSPF restart signaling: Add LLS data for DbD packet on interface ge-0/0/1.112.

Những gì chúng ta có thể nhận thấy từ O/P bên trên là các gói mô tả cơ sở dữ liệu được gửi và nhận với kích thước MTU tương ứng, do đó OSPF đã phát lại tín hiệu do sự không khớp MTU này và sẽ bị kẹt ở trạng thái Exstart/Exchange.

Cuối cùng, chúng ta có thể sử dụng monitor traffic interface detail, tìm kiếm các gói DBD và tôi nghĩ đây là cách nhanh nhất theo tôi để giải quyết vấn đề này.

01:05:42.805146 Out IP (tos 0xc0, ttl   1, id 30892, offset 0, flags [none], proto: OSPF (89), length: 204) 10.100.12.1 > 224.0.0.5: OSPFv2, Database Description, length 184 [len 172]
Router-ID 163.121.1.1, Backbone Area, Authentication Type: simple (1)
Simple text password: Jun!p3r
Options [External, LLS, Opaque], DD Flags [none], MTU: 1500, Sequence: 0xa377cd12
Advertising Router 163.121.1.1, seq 0x80000014, age 21s, length 28
Router LSA (1), LSA-ID: 163.121.1.1
Options: [External, Demand Circuit]
Advertising Router 163.121.1.2, seq 0x80000019, age 87s, length 76
Router LSA (1), LSA-ID: 163.121.1.2
Options: [External, Demand Circuit]01:08:30.249575  In IP (tos 0xc0, ttl   1, id 20471, offset 0, flags [none], proto: OSPF (89), length: 64) 10.100.12.2 > 224.0.0.5: OSPFv2, Database Description, length 44 [len 32]
Router-ID 163.121.1.2, Backbone Area, Authentication Type: simple (1)
Simple text password: Jun!p3r
Options [External, LLS, Opaque], DD Flags [Init, More, Master], MTU: 1482, Sequence: 0xa377cd12
LLS: checksum: 0xfff6, length: 3
Extended Options (1), length: 4
Options: 0x00000001 [LSDB resync]

Khắc phục sự cố liên quan đến OSPF Adjacency – Phần 2

Trong bài viết trước (Khắc phục sự cố liên quan đến OSPF Adjacency – Phần 1) , chúng ta đã thảo luận về một số lý do có thể dẫn đến vấn đề  thiết lập OSPF neighbors, trong bài viết hôm nay, chúng ta sẽ xem xét các lý do dưới đây và sẽ tiếp tục đề cập đến các lý do còn lại trong bài viết tiếp theo trong phần 3.

– Kiểu giao diện (interface type) không khớp.

– OSPF priority được đặt là 0 ở cả hai phía.

– ID vùng (area ID) hoặc loại vùng (area type) không khớp.

Chúng ta sẽ tiếp tục làm việc trên cùng một mô hìng như phần 1 

Kiểu giao diện (interface type) không khớp.

Các loại giao diện không khớp nhau có thể gây ra lỗi thiết lập quan hệ OSPF (OSPF adjacency), tuy nhiên một số tổ hợp vẫn có thể hoạt động, và quan hệ OSPF có thể đạt đến trạng thái Full.

Ví dụ:

– Một bên của kết nối OSPF được cấu hình ở chế độ point-to-point (điểm-điểm)

– Bên còn lại được cấu hình ở chế độ point-to-multipoint (điểm-đa điểm),

→ Trong một số trường hợp, vẫn có thể thiết lập quan hệ OSPF thành công.

thuongndh@Router1# show protocols ospf
area 0.0.0.0 {
   interface ge-0/0/1.112 {
   interface-type p2p;
   authentication {
      simple-password “$9$uXoJBRcKMXbs4B1X-ws4oz36”; ## SECRET-DATA
       }
   }
interface lo0.0;
thuongndh@Router2# show protocols ospf
area 0.0.0.0 {
   interface lo0.0;
   interface ge-0/0/1.112 {
   interface-type p2mp;
      authentication {
      simple-password “$9$ZyDH.QF/0BEDj/tOBEhVwY”; ## SECRET-DATA
   }
}

Và chúng ta có thể thấy OSPF đang hoạt động như sau.

thuongndh@Router2# run show ospf neighbor detail
Address       Interface        State     ID           Pri    Dead
10.100.12.1   ge-0/0/1.112     Full      163.121.1.1  128    36

Area 0.0.0.0, opt 0x52, DR 0.0.0.0, BDR 0.0.0.0
Up 00:02:40, adjacent 00:02:35

Tuy nhiên, nếu một phía của router trong OSPF được cấu hình ở chế độ mặc định là broadcast, trong khi phía còn lại được cấu hình ở chế độ point-to-point hoặc point-to-multipoint, thì quan hệ OSPF sẽ không được thiết lập (sẽ thất bại).

Điều này có thể được kết luận thông qua:

– Kết quả lệnh show ospf interfaces cho thấy sự không tương thích cấu hình

– Nhật ký từ traceoptions cho thấy lỗi,

– Kết quả lệnh monitor traffic interface detail giúp xác định vấn đề.

Ngoài ra, ta cũng có thể nhận thấy trên một trong hai router, quan hệ OSPF bị kẹt ở trạng thái Init, như hiển thị trong kết quả lệnh show ospf neighbor.

Trên Router 1

thuongndh@Router1# run show ospf interface
Interface        State      Area         DR ID          BDR ID     Nbrs ge-0/0/1.112     PtToPt    0.0.0.0       0.0.0.0      0.0.0.0      0 
thuongndh@Router1> show ospf neighbor
thuongndh@Router1> show log OSPFLOG
Jan 1 20:50:23 Router1   clear-log[1166]: logfile cleared
Jan  1 20:50:24.565357   OSPF rcvd Hello 10.100.12.2 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.0)
Jan  1 20:50:24.565388   Version 2, length 48, ID 163.121.1.2, area 0.0.0.0
Jan  1 20:50:24.565394   checksum 0x0, authtype 1
Jan  1 20:50:24.565400   mask 255.255.255.252, hello_ivl 10, opts 0x12, prio 128
Jan  1 20:50:24.565406   dead_ivl 40, DR 10.100.12.2, BDR 0.0.0.0
Jan  1 20:50:24.565412   OSPF packet ignored: configuration mismatch from 10.100.12.2 on intf ge-0/0/1.112 area 0.0.0.0

Router 02

thuongndh@Router2> show ospf interface
Interface       State     Area        DR ID           BDR ID        Nbrs
ge-0/0/1.112    DR        0.0.0.0     163.121.1.2     0.0.0.0       1

thuongndh@Router2> show ospf neighbor
Address          Interface        State     ID               Pri    Dead
10.100.12.1      ge-0/0/1.112     Init      163.121.1.1      128    36
thuongndh@Router2> monitor traffic detail interface ge-0/0/1.112
20:54:52.997098 Out IP (tos 0xc0, ttl   1, id 4355, offset 0, flags [none], proto: OSPF (89), length: 80) 10.100.12.2 > 224.0.0.5: OSPFv2, Hello, length 60 [len 48]
Router-ID 163.121.1.2, Backbone Area, Authentication Type: simple (1)
Simple text password: Jun!p3r
Options [External, LLS]
Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.252, Priority 128
Designated Router 10.100.12.2
Neighbor List:
163.121.1.1
LLS: checksum: 0xfff6, length: 3
Extended Options (1), length: 4
Options: 0x00000001 [LSDB resync]
20:54:58.775551  In IP (tos 0xc0, ttl   1, id 1718, offset 0, flags [none], proto: OSPF (89), length: 76) 10.100.12.1 > 224.0.0.5: OSPFv2, Hello, length 56 [len 44]
Router-ID 163.121.1.1, Backbone Area, Authentication Type: simple (1)
Simple text password: Jun!p3r
Options [External, LLS]
Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.252, Priority 128
LLS: checksum: 0xfff6, length: 3
Extended Options (1), length: 4
Options: 0x00000001 [LSDB resync]

OSPF priority được đặt là 0 ở cả hai phía

Trong OSPF, mỗi router trên một mạng kiểu broadcast (ví dụ như Ethernet) đều có một giá trị gọi là priority (ưu tiên), được dùng để bầu chọn

– DR (Designated Router) – Router đại diện chín

– BDR (Backup Designated Router) – Router dự phòng

 Ý nghĩa của OSPF Priority

– Giá trị priority càng cao, càng ưu tiên được chọn làm DR.

– Giá trị 0 có nghĩa là không tham gia bầu chọn DR/BDR.

Vấn đề: Cả hai router đều có priority = 0

– Không có router nào đủ điều kiện làm DR hoặc BDR

– Do đó, quan hệ OSPF sẽ không được thiết lập, vì không thể có DR để điều phối trao đổi thông tin.

Chúng ta có thể giải quyết vấn đề trên thông qua lệnh show ospf interfaces detail và sử dụng lệnh traceoptionsmonitor traffic detail interface.

Nếu giá trị OSPF priority được đặt là 0 trên các giao diện kiểu broadcast, quan hệ OSPF sẽ bị kẹt ở trạng thái 2-Way

Điều này xảy ra vì cả hai router đều tin rằng trên phân đoạn mạng (segment) đang có những router khác có thể đóng vai trò là DR (Designated Router)BDR (Backup Designated Router).→ Kết quả là không router nào tiến hành xây dựng quan hệ đầy đủ (Full adjacency) với nhau.

thuongndh@Router2# run show ospf neighbor
Address        Interface        State     ID               Pri   Dead
10.100.12.1    ge-0/0/1.112     2Way      163.121.1.1      0     32
thuongndh@Router2# run show ospf interface detailInterface     State      Area            DR ID      BDR ID      Nbrs 
ge-0/0/1.112   DRother    0.0.0.0         0.0.0.0    0.0.0.0     1 
Type: LAN, Address: 10.100.12.2, Mask: 255.255.255.252, MTU: 1500, Cost: 1 
Priority: 0 
Adj count: 0 
Hello: 10, Dead: 40, ReXmit: 5, Not Stub 
Auth type: Password 
Protection type: None 
Topology default (ID 0) -> Cost: 1
Jan  1 21:34:01.861330   OSPF rcvd Hello 10.100.12.2 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.0)
Jan  1 21:34:01.861334   Version 2, length 48, ID 163.121.1.2, area 0.0.0.0
Jan  1 21:34:01.861339   checksum 0x0, authtype 1
Jan  1 21:34:01.861346   mask 255.255.255.252, hello_ivl 10, opts 0x12, prio 0
Jan  1 21:34:01.861351   dead_ivl 40, DR 0.0.0.0, BDR 0.0.0.0
Jan  1 21:34:01.861397   RPD_OSPF_NBRUP: OSPF neighbor 10.100.12.2 (realm ospf-v2 ge-0/0/1.112 area 0.0.0.0) state changed from Init to 2Way due to 2WayRcvd (event reason: neighbor detected this router)Jan  1 21:34:01.861562 OSPF sent Hello 10.100.12.1 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.0)
Jan  1 21:34:01.861568   Version 2, length 48, ID 163.121.1.1, area 0.0.0.0
Jan  1 21:34:01.861574   mask 255.255.255.252, hello_ivl 10, opts 0x12, prio 0
Jan  1 21:34:01.861580   dead_ivl 40, DR 0.0.0.0, BDR 0.0.0.0

Không khớp Area ID hoặc không khớp loại Area (Area Type)

+ Area ID không khớp: Hai router nằm cùng một liên kết (interface) nhưng được cấu hình với ID vùng khác nhau (ví dụ: một bên là 0.0.0.0, bên kia là 0.0.0.1) thì sẽ không thiết lập được quan hệ OSPF.

+ Loại vùng không khớp (mismatched area types): Cả hai router có thể cùng Area ID, nhưng nếu một bên cấu hình là Stub Area, còn bên kia là Regular Area, thì cũng sẽ không hình thành adjacency.

Không khớp Area ID sẽ khiến quan hệ OSPF không được thiết lập. Để kiểm tra vấn đề này, bạn có thể sử dụng lệnh: show ospf interface Lệnh này sẽ giúp bạn xác minh Area ID đang được cấu hình trên từng giao diện, từ đó dễ dàng phát hiện nếu hai thiết bị ở hai phía đang sử dụng Area ID khác nhau, dẫn đến lỗi không hình thành quan hệ lân cận (adjacency) trong OSPF.

thuongndh@Router2# run show ospf interface ge-0/0/1.112
Interface        State     Area        DR ID      BDR ID      Nbrs
ge-0/0/1.112     PtToPt    0.0.0.1     0.0.0.0    0.0.0.0     0
thuongndh@Router1# run show ospf interface ge-0/0/1.112
Interface         State     Area           DR ID         BDR ID      Nbrs
ge-0/0/1.112      PtToPt    0.0.0.0        0.0.0.0       0.0.0.0     0

Sử dụng traceoptions

Jan  1 21:54:04.694379 OSPF sent Hello 10.100.12.1 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.0)
Jan  1 21:54:04.694384   Version 2, length 44, ID 163.121.1.1, area 0.0.0.0
Jan  1 21:54:04.694391   mask 255.255.255.252, hello_ivl 10, opts 0x12, prio 128
Jan  1 21:54:04.694396   dead_ivl 40, DR 0.0.0.0, BDR 0.0.0.0
Jan  1 21:54:11.599084 OSPF packet ignored: area mismatch (0.0.0.1) from 10.100.12.2 on intf ge-0/0/1.112 area 0.0.0.0
Jan  1 21:54:11.599152 OSPF rcvd Hello 10.100.12.2 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.0)
Jan  1 21:54:11.599158   Version 2, length 44, ID 163.121.1.2, area 0.0.0.1
Jan  1 21:54:11.599164   checksum 0x46a6, authtype 1
Jan  1 21:54:11.599170   mask 255.255.255.252, hello_ivl 10, opts 0x12, prio 128
Jan  1 21:54:11.599176   dead_ivl 40, DR 0.0.0.0, BDR 0.0.0.0

Không khớp loại vùng (Stub Flag) cũng có thể ảnh hưởng đến quan hệ OSPF 

Trường Options trong gói tin Hello của OSPF sẽ thông báo loại vùng (area type) mà giao diện thuộc về. Nếu hai router cấu hình giao diện trong các loại vùng khác nhau — ví dụ: một bên là stub area, bên kia là normal area — thì các router sẽ không nhận diện nhau là hàng xóm (neighbor)quan hệ adjacency sẽ không được thiết lập.

Chúng tôi đã thay đổi Area ID từ 0 sang 1 để bật stub flag, cụ thể

+ Router2 được đặt trong area 1 (stub),

+ Router1 được đặt trong area 1 nssa (Not-So-Stubby Area).

Bạn có thể thấy sự khác biệt này khi kiểm tra đầu ra của lệnh show ospf interface detail

thuongndh@Router2# run show ospf interface ge-0/0/1.112 detail
Interface       State      Area         DR ID       BDR ID       Nbrs
ge-0/0/1.112    PtToPt     0.0.0.1      0.0.0.0     0.0.0.0      0
Type: P2P, Address: 10.100.12.2, Mask: 255.255.255.252, MTU: 1500, Cost: 1
Adj count: 0
Hello: 10, Dead: 40, ReXmit: 5, Not Stub
Auth type: None
Protection type: None
Topology default (ID 0) -> Cost: 1
thuongndh@Router1# run show ospf interface ge-0/0/1.112 detail
Interface       State     Area        DR ID      BDR ID      Nbrs
ge-0/0/1.112    PtToPt    0.0.0.1     0.0.0.0    0.0.0.0     0
Type: P2P, Address: 10.100.12.1, Mask: 255.255.255.252, MTU: 1500, Cost: 1
Adj count: 0
Hello: 10, Dead: 40, ReXmit: 5, Stub NSSA
Auth type: None
Protection type: None
Topology default (ID 0) -> Cost: 1

traceoptions

ali@Router1# run show log OSPFLOG | last 10
Jan  1 22:22:55.285989 OSPF periodic xmit from 10.100.12.1 to 224.0.0.5 (IFL 71 area 0.0.0.1)
Jan  1 22:22:57.548326 OSPF rcvd Hello 10.100.12.2 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.1)
Jan  1 22:22:57.548440   Version 2, length 44, ID 163.121.1.2, area 0.0.0.1
Jan  1 22:22:57.548446   checksum 0x0, authtype 0
Jan  1 22:22:57.548452   mask 255.255.255.252, hello_ivl 10, opts 0x12, prio 128
Jan  1 22:22:57.548458   dead_ivl 40, DR 0.0.0.0, BDR 0.0.0.0
Jan  1 22:22:57.548464 OSPF packet ignored: area stubness mismatch from 10.100.12.2 on intf ge-0/0/1.112 area 

Lệnh monitor traffic detail cho thấy sự khác biệt về loại vùng OSPF

Trong trường Options của gói tin OSPF Hello, lệnh monitor traffic interface detail sẽ hiển thị các thông tin cho biết loại vùng mà mỗi router đang tham gia.

Ví dụ:

+ Một bên hiển thị: External, LLS → Tức là router đó thuộc vùng bình thường (Normal Area)

+ Bên còn lại hiển thị: NSSA, LLS → Tức là router đó thuộc vùng NSSA (Not-So-Stubby Area)

Nếu một router nằm trong Stub area, nó sẽ chỉ báo hiệu LLS (Link Local Signaling) mà không có External hay NSSA, như minh họa bên dưới.

→ Điều này dẫn đến không thể thiết lập quan hệ lân cận (adjacency) nếu hai bên thuộc các loại vùng khác nhau.

ali@Router2# run monitor traffic detail interface ge-0/0/1.112
22:24:56.832460  In IP (tos 0xc0, ttl   1, id 12439, offset 0, flags [none], proto: OSPF (89), length: 76) 10.100.12.1 > 224.0.0.5: OSPFv2, Hello, length 56 [len 44]
Router-ID 163.121.1.1, Area 0.0.0.1, Authentication Type: none (0)
Options [NSSA, LLS]
Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.252, Priority 128
LLS: checksum: 0xfff6, length: 3
Extended Options (1), length: 4
Options: 0x00000001 [LSDB resync]
22:24:57.998158 Out IP (tos 0xc0, ttl   1, id 10319, offset 0, flags [none], proto: OSPF (89), length: 76) 10.100.12.2 > 224.0.0.5: OSPFv2, Hello, length 56 [len 44]
Router-ID 163.121.1.2, Area 0.0.0.1, Authentication Type: none (0)
Options [External, LLS]
Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.252, Priority 128
LLS: checksum: 0xfff6, length: 3
Extended Options (1), length: 4
Options: 0x00000001 [LSDB resync]

Trong bài viết tiếp theo, chúng ta sẽ tiếp tục hành trình cùng nhau kiểm tra những lý do khác gây ra vấn đề OSPF không thiết lập neighbor với hy vọng có thể hoàn thiện chủ đề này.

Tôi hy vọng điều này có giá trị với các bạn

Khắc phục sự cố liên quan đến OSPF Adjacency – Phần 1

Trong phần này, chúng ta sẽ thảo luận một số nguyên nhân ảnh hưởng đến việc thiết lập quan hệ lân cận (adjacency) OSPF giữa hai thiết bị ngang hàng (peers), và cách xử lý sự cố này trong hệ điều hành Junos của Juniper.

Trước tiên, chúng ta sẽ liệt kê các nguyên nhân có thể dẫn đến sự cố adjacency trong OSPF, và sau đó sẽ bàn chi tiết hơn tiếp theo.

1. Các nguyên nhân có thể gây ra sự cố OSPF adjacency:

– Trùng ID router (Router ID).

– Subnet mask không khớp hoặc địa chỉ IP sai.

– Không khớp xác thực (authentication).

– Kiểu giao diện (interface type) không khớp.

– OSPF priority được đặt là 0 ở cả hai phía.

– ID vùng (area ID) hoặc loại vùng (area type) không khớp.

– Giá trị hello interval và dead interval không khớp.

– Cấu hình MTU không khớp.

2. Cách xử lý sự cố adjacency:

Có một số lệnh cơ bản để kiểm tra và tìm ra nguyên nhân sự cố mà bạn đang gặp phải, bao gồm:

show ospf neighbors
show ospf interface
show ospf interface detail
show configuration protocols ospf

Ngoài các lệnh giám sát và quản trị (A/M commands), nếu không có lý do rõ ràng gây ra sự cố adjacency, bạn có thể kiểm tra kỹ hơn hoạt động bên trong của giao thức định tuyến nội bộ (IGP) bằng lệnh:

monitor traffic interface <tên-giao-diện> detail

Ngoài ra, sử dụng traceoptions cũng là một phương pháp hữu ích để xác định chính xác vấn đề gì đang xảy ra với adjacency. Hãy cân nhắc sử dụng các cờ (flag) hello detailerror detail để hỗ trợ việc xử lý sự cố.

Trong mô hình dưới đây, chúng ta có hai router kết nối trực tiếp:

Vấn đề về trùng Router ID (RID)

Trong mạng định tuyến trạng thái liên kết (link-state), điều cực kỳ quan trọng là không có hai router nào sử dụng cùng một giá trị RID, vì những lý do sau:

– RID là một trong những phương thức để xác định xem một LSA (Link-State Advertisement) đã tồn tại trong cơ sở dữ liệu hay chưa. Nếu hai router dùng cùng một RID, cơ sở dữ liệu LSDB có thể không đồng bộ giữa các router.

–  Thuật toán Dijkstra sử dụng RID để tính toán đường đi ngắn nhất. Nếu RID bị trùng, một router có thể không xây dựng được một sơ đồ định tuyến không có vòng lặp.

Trên Router1, chúng tôi đã thực hiện các lệnh sau:

thuongndh@Router1> show ospf interface
Interface       State    Area       DR ID            BDR ID     Nbrs
ge-0/0/1.112    PtToPt   0.0.0.0    0.0.0.0          0.0.0.0    0
lo0.0           DR       0.0.0.0    163.121.1.1      0.0.0.0    0

thuongndh@Router1> show ospf neighbor

thuongndh@Router1> show interfaces lo0.0
Logical interface lo0.0 (Index 66) (SNMP ifIndex 16)
Flags: SNMP-Traps Encapsulation: Unspecified
Input packets : 12
Output packets: 12
Security: Zone: Null
Protocol inet, MTU: Unlimited
Flags: Sendbcast-pkt-to-re
Addresses, Flags: Is-Default Is-Primary
Local: 163.121.1.1

thuongndh@Router1> show configuration routing-options
router-id 163.121.1.1;

Trên Router 2

thuongndh@Router2> show ospf interface
Interface       State       Area        DR ID         BDR ID      Nbrs
ge-0/0/1.112    PtToPt      0.0.0.0     0.0.0.0       0.0.0.0     0
lo0.0           DR          0.0.0.0     163.121.1.1   0.0.0.0     0

thuongndh@Router2> show ospf neighbors

thuongndh@Router2> show interfaces lo0.0
Logical interface lo0.0 (Index 66) (SNMP ifIndex 16)
Flags: SNMP-Traps Encapsulation: Unspecified
Input packets : 0
Output packets: 0
Security: Zone: Null
Protocol inet, MTU: Unlimited
Flags: Sendbcast-pkt-to-re
Addresses, Flags: Is-Default Is-Primary
Local: 163.121.1.2

thuongndh@Router2> show configuration routing-options
router-id 163.121.1.1;

Như bạn thấy, cả hai router đều dùng chung router-id163.121.1.1, gây ra xung đột.

Chúng tôi đã bật traceoptions trên Router1 với cờ helloerror, và nhận được nhật ký sau:

Apr 29 20:16:16.391667 OSPF rcvd Hello 10.100.12.2 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.0)
Apr 29 20:16:16.391678 Version 2, length 44, ID 163.121.1.1, area 0.0.0.0
Apr 29 20:16:16.391684 checksum 0x0, authtype 0
Apr 29 20:16:16.391690 mask 255.255.255.252, hello_ivl 10, opts 0x12, prio 128
Apr 29 20:16:16.391696 dead_ivl 40, DR 0.0.0.0, BDR 0.0.0.0
Apr 29 20:16:16.391702 OSPF packet ignored: our router ID received from 10.100.12.2 on intf ge-0/0/1.112 area 0.0.0.0

Sau khi khắc phục sự cố RID trùng, ta thấy trên Router2:

thuongndh@Router2> show ospf interface
Interface      State     Area         DR ID           BDR ID        Nbrs
ge-0/0/1.112   PtToPt    0.0.0.0      0.0.0.0         0.0.0.0       1
lo0.0          DR        0.0.0.0      163.121.1.2     0.0.0.0       0

thuongndh@Router2> show ospf neighbor
Address          Interface              State     ID               Pri  Dead
10.100.12.1      ge-0/0/1.112           Full      163.121.1.1      128    35

thuongndh@Router2>

Mặt nạ mạng không khớp (Mismatched subnet masks)

Mặt nạ mạng sai hoặc địa chỉ IP sai ở giao diện có thể khiến OSPF không thiết lập được. Trong ví dụ này, địa chỉ IP trên Router1 được cấu hình là /24 thay vì /30. Mặc dù vẫn ping được, nhưng quan hệ OSPF không hình thành. Nhật ký traceoptions cho biết lý do:

thuongndh@Router1> ping 10.100.12.2 rapid
PING 10.100.12.2 (10.100.12.2): 56 data bytes
!!!!!
— 10.100.12.2 ping statistics —
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.396/0.840/2.211/0.687 ms

thuongndh@Router1> show log OSPFLOG
Apr 29 20:30:03.878646   OSPF rcvd Hello 10.100.12.2 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.0)
Apr 29 20:30:03.878668   Version 2, length 44, ID 163.121.1.2, area 0.0.0.0
Apr 29 20:30:03.878674   checksum 0x0, authtype 0
Apr 29 20:30:03.878680   mask 255.255.255.252, hello_ivl 10, opts 0x12, prio 128
Apr 29 20:30:03.878686   dead_ivl 40, DR 0.0.0.0, BDR 0.0.0.0
Apr 29 20:30:03.878692   OSPF packet ignored: netmask 255.255.255.252 mismatch from 10.100.12.2 on intf ge-0/0/1.112 area 0.0.0.0

Không khớp xác thực (Authentication mismatches)

Nếu có sự không khớp về xác thực (authentication), quan hệ OSPF sẽ thất bại. Nếu dùng plain-text authentication, có thể kiểm tra mật khẩu bằng lệnh: monitor traffic interface ge-0/0/1.112 detail

monitor traffic interface ge-0/0/1.112 detail
Address resolution is ON. Use to avoid any reverse lookup delay.
Address resolution timeout is 4s.
Listening on ge-0/0/1.112, capture size 1514 bytesReverse lookup for 224.0.0.2 failed (check DNS reachability).
Other reverse lookup failures will not be reported.
Use to avoid reverse lookups on IP addresses.20:49:56.476501  In IP (tos 0xc0, ttl   1, id 21466, offset 0, flags [none], proto: OSPF (89), length: 76) 10.100.12.2 > 224.0.0.5: OSPFv2, Hello, length 56 [len 44]
Router-ID 163.121.1.2, Backbone Area, Authentication Type: simple (1)
Simple text password: Jun!p3r
Options [External, LLS]
Hello Timer 10s, Dead Timer 40s, Mask 255.255.255.252, Priority 128
LLS: checksum: 0xfff6, length: 3
Extended Options (1), length: 4
Options: 0x00000001 [LSDB resync]

Nếu sử dụng xác thực mã hóa, bạn không thể giải mã khóa và cần cấu hình lại mật khẩu trên cả hai router.

Và chúng ta cũng có thể tìm thấy sự không khớp loại xác thực trong nhật ký traceoptions (Đơn giản/không xác thực) theo O/P bên dưới

Apr 29 20:49:38.784663  OSPF sent Hello 10.100.12.1 -> 224.0.0.5 (ge-0/0/1.112 IFL 71 area 0.0.0.0)
Apr 29 20:49:38.784669  Version 2, length 44, ID 163.121.1.1, area 0.0.0.0
Apr 29 20:49:38.784675  mask 255.255.255.252, hello_ivl 10, opts 0x12, prio 128
Apr 29 20:49:38.784681  dead_ivl 40, DR 0.0.0.0, BDR 0.0.0.0
Apr 29 20:49:39.598405  OSPF packet ignored: authentication type mismatch (1) from 10.100.12.2

Ngoài ra, chúng ta có thể tìm thấy cờ xác thực trong lệnh show ospf interface detail O/P như sau trên cả hai bộ định tuyến.

Trên Router 1

thuongndh@Router1> show ospf interface ge-0/0/1.112 detail
Interface State Area DR ID BDR ID Nbrs
ge-0/0/1.112 PtToPt 0.0.0.0 0.0.0.0 0.0.0.0 0
Type: P2P, Address: 10.100.12.1, Mask: 255.255.255.252, MTU: 1500, Cost: 1
Adj count: 0
Hello: 10, Dead: 40, ReXmit: 5, Not Stub
  Auth type: None
Protection type: None
Topology default (ID 0) -> Cost: 1

Trên Router 2

thuongndh@Router2# run show ospf interface ge-0/0/1.112 detail
Interface State Area DR ID BDR ID Nbrs
ge-0/0/1.112 DR 0.0.0.0 163.121.1.2 0.0.0.0 0
Type: LAN, Address: 10.100.12.2, Mask: 255.255.255.252, MTU: 1500, Cost: 1
DR addr: 10.100.12.2, Priority: 128
Adj count: 0
Hello: 10, Dead: 40, ReXmit: 5, Not Stub
  Auth type: Password
Protection type: None
Topology default (ID 0) -> Cost: 1

Sự cố kết nối IPSEC VPN của Palo-Alto sau NAT

Gần đây tôi gặp vấn đề khi cấu hình VPN Site-to-Site giữa 2 firewall  Palo-Alto, 2 thiết bị firewall nằm sau router (NAT) nhà mạng, các IP WAN cho firewall được cấu hình là IP Private.

 

VPN Site-to-Site tunnel giữa 2 thiết bị PA không được thiết lập sau khi cấu hình, và chúng chỉ được hình thành khi khai báo 2 thông số Local Indentification và Peer Indentification

Fortigate SSL VPN Redistribution vào OSPF

Gần đây, tôi phải cấu hình truy cập từ xa bằng SSL VPN cho một khách hàng sử dụng firewall Fortinet. Mạng nội bộ của họ sử dụng OSPF, và khách hàng yêu cầu tích hợp SSL VPN vào giao thức định tuyến nội bộ.

Đây là cách triển khai OSPF đơn giản, sử dụng đường truyền MPLS thuê từ nhà cung cấp làm tuyến chính tới trung tâm dữ liệu (COLO) và tunnel IPSEC dự phòng nếu kết nối MPLS bị mất. OSPF đảm nhận việc chuyển mạch dự phòng tự động.

Cấu hình ban đầu

Trước tiên, chúng tôi tiến hành các bước cấu hình SSL VPN gồm:

  • Tạo dải IP mới cho truy cập từ xa

  • Thiết lập nhóm người dùng

  • Cấu hình LDAP

  • DNS

Sau khi xác nhận có thể kết nối từ xa thành công đến firewall, bước tiếp theo là cấu hình firewall để quảng bá dải IP SSL VPN vào OSPF.

Tôi đã thêm dải IP mới vào danh sách “advertised networks” trong OSPF. Tuy nhiên, khi kiểm tra bảng định tuyến của các router OSPF khác, dải IP mới không xuất hiện.

Sau khi tìm hiểu, tôi phát hiện ra rằng: Firewall Fortinet chỉ quảng bá dải IP SSL VPN thông qua việc phân phối lại định tuyến tĩnh (static route redistribution).

Do đó, ta cần tạo một route tĩnh “blackhole” cho dải IP này rồi cấu hình firewall để phân phối các route tĩnh vào OSPF.


Vấn đề:

“redistribute static” trong giao diện Fortinet là tùy chọn kiểu “tất cả hoặc không có gì” – nghĩa là nó sẽ phân phối tất cả các route tĩnh vào OSPF, tôi không mong muốn điều này.

Giải pháp: Sử dụng Route Map để lọc route cần phân phối

Route Map là một công cụ mạnh mẽ để tùy chỉnh chính sách định tuyến và kiểm soát quá trình phân phối vào OSPF (hoặc các giao thức khác).

Các bước thực hiện

Bước 1: Tạo static route kiểu blackhole

Vào giao diện web của Fortigate:

Network → Static Routes → Add Route

  • Destination: dải IP truy cập từ xa (SSL VPN IP range)

  • Device: chọn “blackhole”

Bước 2: Tạo danh sách IP prefix (Prefix List)

Truy cập vào CLI và nhập:

config router prefix-list
edit "NEW_PREFIX_LIST"
config rule
edit 1
set prefix 10.100.100.0 255.255.255.0
unset ge
unset le
next
edit 2
set action deny
set prefix any
unset ge
unset le
next
end
next
end

Bước 3: Tạo Route Map sử dụng prefix list

config router route-map
edit "A_New_RouteMap"
config rule
edit 1
set match-ip-address "NEW_PREFIX_LIST"
next
end
next
end

Bước 4: Kích hoạt phân phối static route vào OSPF và áp dụng Route 

FW1 # config router ospf
FW1 (ospf) # config redistribute static
FW1 (static) # set status enable
FW1 (static) # set routemap A_New_RouteMap
FW1 (static) # end
FW1 (ospf) # end
FW1 #

Kết quả mong đợi

Nếu dải IP SSL VPN đã nằm trong các network statement của OSPF trên firewall, sau các bước trên, dải IP mới sẽ được quảng bá vào bảng định tuyến OSPF, và các router khác trong cùng hệ thống sẽ học được route này.

Ghi chú: Bạn cũng có thể dùng Access List thay vì Prefix List, nhưng theo kinh nghiệm cá nhân, Prefix List dễ cấu hình và quản lý hơn.