Loading...

Bài 49b: Thực hành OSPFv2 single-area — Router ID, passive-interface, cost và quảng bá default route

⏱️ Thời lượng: 60 phút · 📶 Độ khó: Trung bình · 🧰 Công cụ: Cisco Packet Tracer 8.x · 📌 Cần học trước: Bài 48, Bài 49

Sơ đồ lab Bài 49b

Sơ đồ lab Bài 49b · ⬇️ Tải sơ đồ (SVG) · 🔍 Mở cỡ lớn

💡 Liên hệ thực tế

Ở Bài 46b, chỉ cần tắt một dây R2–R3 là static route "không biết" đường phía sau đã hỏng và chi nhánh mất liên lạc. Công ty ABC mở thêm chi nhánh thì số lệnh ip route còn tăng nhanh hơn. Anh Nam quyết định chuyển sang OSPF: các router tự trao đổi thông tin, tự tính đường ngắn nhất và tự đổi đường khi có sự cố.

Quy tắc ghi nhớ: OSPF chỉ chạy trên interface khớp với lệnh network. Interface nào không có router OSPF bên kia (LAN của người dùng) thì đặt passive-interface để không gửi Hello ra đó.

🎯 Mục tiêu bài lab

  • Bật OSPFv2 single-area (area 0), đặt router ID thủ công.
  • Viết lệnh network với wildcard mask đúng cho từng mạng.
  • Dùng passive-interface cho cổng LAN.
  • Đọc show ip ospf neighbor, show ip route ospf, show ip protocols.
  • Đổi cost để điều khiển đường đi; quảng bá default route bằng default-information originate.

📋 Bảng địa chỉ và đấu nối

Thiết bịInterfaceĐịa chỉ IPGhi chú
R1 (RID 1.1.1.1) G0/0 192.168.1.1/24 LAN1 — passive
G0/1 10.0.12.1/30 Tới R2
G0/2 10.0.13.1/30 Tới R3
R2 (RID 2.2.2.2) G0/0 10.0.12.2/30 Tới R1
G0/1 10.0.23.1/30 Tới R3
G0/2 203.0.113.1/30 Tới ISP — không chạy OSPF
R3 (RID 3.3.3.3) G0/0 192.168.3.1/24 LAN3 — passive
G0/1 10.0.23.2/30 Tới R2
G0/2 10.0.13.2/30 Tới R1
ISP G0/0 203.0.113.2/30 Tới R2
Loopback0 8.8.8.8/32 "Internet"
PC1 NIC 192.168.1.10/24 GW 192.168.1.1
PC3 NIC 192.168.3.10/24 GW 192.168.3.1
TừCổngĐếnCổngCáp
R1 G0/1 R2 G0/0 Copper Cross-Over
R2 G0/1 R3 G0/1 Copper Cross-Over
R1 G0/2 R3 G0/2 Copper Cross-Over
R2 G0/2 ISP G0/0 Copper Cross-Over
R1 G0/0 PC1 FastEthernet0 Copper Cross-Over
R3 G0/0 PC3 FastEthernet0 Copper Cross-Over

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

⚙️ Bước 1 — Dựng sơ đồ và dán cấu hình địa chỉ

Kéo ra 4 router 2911 (R1, R2, R3, ISP) và 2 PC, nối cáp theo bảng. Phần địa chỉ IP đã luyện ở Bài 46b nên cho sẵn:

! R1
hostname R1
interface gigabitEthernet 0/0
 ip address 192.168.1.1 255.255.255.0
 no shutdown
interface gigabitEthernet 0/1
 ip address 10.0.12.1 255.255.255.252
 no shutdown
interface gigabitEthernet 0/2
 ip address 10.0.13.1 255.255.255.252
 no shutdown
end

! R2
hostname R2
interface gigabitEthernet 0/0
 ip address 10.0.12.2 255.255.255.252
 no shutdown
interface gigabitEthernet 0/1
 ip address 10.0.23.1 255.255.255.252
 no shutdown
interface gigabitEthernet 0/2
 ip address 203.0.113.1 255.255.255.252
 no shutdown
end

! R3
hostname R3
interface gigabitEthernet 0/0
 ip address 192.168.3.1 255.255.255.0
 no shutdown
interface gigabitEthernet 0/1
 ip address 10.0.23.2 255.255.255.252
 no shutdown
interface gigabitEthernet 0/2
 ip address 10.0.13.2 255.255.255.252
 no shutdown
end

! ISP (nhà mạng chỉ cần route tĩnh về mạng của công ty)
hostname ISP
interface gigabitEthernet 0/0
 ip address 203.0.113.2 255.255.255.252
 no shutdown
interface loopback 0
 ip address 8.8.8.8 255.255.255.255
ip route 192.168.0.0 255.255.0.0 203.0.113.1
ip route 10.0.0.0 255.0.0.0 203.0.113.1
end

Đặt IP cho PC1, PC3 theo bảng.

⚙️ Bước 2 — Bật OSPF trên R1

R1(config)# router ospf 1
R1(config-router)# router-id 1.1.1.1
R1(config-router)# network 192.168.1.0 0.0.0.255 area 0
R1(config-router)# network 10.0.12.0 0.0.0.3 area 0
R1(config-router)# network 10.0.13.0 0.0.0.3 area 0
R1(config-router)# passive-interface gigabitEthernet 0/0
📎 Giải thích:
• Số 1 trong router ospf 1 là process ID, chỉ có ý nghĩa trên chính router đó — hai router không cần trùng số này.
• router-id: tên định danh của router trong OSPF. Đặt tay cho dễ đọc; nếu không đặt, router tự lấy IP loopback cao nhất, hoặc IP interface đang up cao nhất.
• Wildcard mask = 255.255.255.255 trừ subnet mask: /24 → 0.0.0.255, /30 → 0.0.0.3.
• passive-interface: mạng 192.168.1.0/24 vẫn được quảng bá, nhưng R1 không gửi Hello ra LAN — vừa đỡ tốn, vừa không cho máy lạ trong LAN giả làm router OSPF.

⚙️ Bước 3 — Bật OSPF trên R2 và R3

R2(config)# router ospf 1
R2(config-router)# router-id 2.2.2.2
R2(config-router)# network 10.0.12.0 0.0.0.3 area 0
R2(config-router)# network 10.0.23.0 0.0.0.3 area 0

R3(config)# router ospf 1
R3(config-router)# router-id 3.3.3.3
R3(config-router)# network 192.168.3.0 0.0.0.255 area 0
R3(config-router)# network 10.0.23.0 0.0.0.3 area 0
R3(config-router)# network 10.0.13.0 0.0.0.3 area 0
R3(config-router)# passive-interface gigabitEthernet 0/0

Mỗi khi kết bạn thành công, console hiện thông báo dạng:

%OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on GigabitEthernet0/1 from LOADING to FULL, Loading Done

R2 không có lệnh network cho 203.0.113.0/30 — link tới nhà mạng không chạy OSPF.

⚙️ Bước 4 — Kiểm tra neighbor và bảng định tuyến

Trên R1 chạy show ip ospf neighbor (phải có 2 neighbor ở trạng thái FULL) và show ip route ospf. PC1 ping PC3 phải thành công.

Quan sát kỹ dòng route tới 10.0.23.0/30 trên R1: có hai next-hop. Đi qua R2 hay qua R3 đều tốn cost 2 bằng nhau, nên OSPF dùng cả hai (chia tải trên đường bằng cost — ECMP).

⚙️ Bước 5 — Đổi cost để đi đường vòng qua R2

Giả sử dây R1–R3 là đường thuê bao đắt tiền, chỉ nên dùng khi cần. Tăng cost trên cả hai đầu dây:

R1(config)# interface gigabitEthernet 0/2
R1(config-if)# ip ospf cost 10

R3(config)# interface gigabitEthernet 0/2
R3(config-if)# ip ospf cost 10

Từ PC1 chạy tracert 192.168.3.10: gói giờ đi R1 → R2 → R3 (tổng cost 3) thay vì đi thẳng (cost 10 + 1 = 11).

📎 Cost mặc định tính thế nào? Cost = reference bandwidth ÷ bandwidth của cổng, mặc định reference là 100 Mbps. Cổng GigabitEthernet và FastEthernet đều ra cost 1 (kết quả nhỏ hơn 1 được làm tròn lên 1) — OSPF không phân biệt được. Vì vậy mạng thật thường đặt auto-cost reference-bandwidth lớn hơn, và đặt giống nhau trên mọi router.

⚙️ Bước 6 — Quảng bá default route ra Internet

R2(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.2
R2(config)# router ospf 1
R2(config-router)# default-information originate

R1 và R3 nhận được route O*E2 0.0.0.0/0. PC1 và PC3 ping 8.8.8.8 phải thành công.

⚠️ default-information originate chỉ quảng bá khi chính R2 đang có default route trong bảng định tuyến. Thiếu dòng ip route 0.0.0.0 0.0.0.0 … thì R1, R3 không nhận được gì.

💾 Bước 7 — Lưu cấu hình

R1# copy running-config startup-config

Làm trên cả 4 router.

🔍 Kiểm tra kết quả

#Kiểm traLệnh / thao tácKết quả mong đợi
1 Neighbor show ip ospf neighbor R1, R3 thấy 2 neighbor; R2 thấy 2 neighbor; trạng thái FULL
2 Thông số OSPF show ip protocols Router ID đúng, các mạng đã khai báo, cổng passive
3 Route OSPF show ip route ospf trên R1 Có 192.168.3.0/24, 10.0.23.0/30 với mã O, AD 110
4 Cost trên cổng show ip ospf interface brief G0/2 cost 10 sau Bước 5
5 Đường đi PC1 tracert 192.168.3.10 Qua 10.0.12.2 rồi 10.0.23.2 (sau Bước 5)
6 Default route PC1 ping 8.8.8.8 ✅ Thành công; R1 có O*E2 0.0.0.0/0

🔍 Output mẫu trên R1 sau Bước 4 (cột DR/BDR có thể khác trên máy bạn)

R1# show ip ospf neighbor

Neighbor ID     Pri   State           Dead Time   Address         Interface
2.2.2.2           1   FULL/BDR        00:00:35    10.0.12.2       GigabitEthernet0/1
3.3.3.3           1   FULL/BDR        00:00:31    10.0.13.2       GigabitEthernet0/2
R1# show ip route ospf
      10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
O        10.0.23.0/30 [110/2] via 10.0.12.2, 00:01:12, GigabitEthernet0/1
                      [110/2] via 10.0.13.2, 00:01:12, GigabitEthernet0/2
O     192.168.3.0/24 [110/2] via 10.0.13.2, 00:01:12, GigabitEthernet0/2

🔍 Sau Bước 5 và Bước 6

R1# show ip route ospf
      10.0.0.0/8 is variably subnetted, 5 subnets, 2 masks
O        10.0.23.0/30 [110/2] via 10.0.12.2, 00:00:41, GigabitEthernet0/1
O     192.168.3.0/24 [110/3] via 10.0.12.2, 00:00:41, GigabitEthernet0/1
O*E2  0.0.0.0/0 [110/1] via 10.0.12.2, 00:00:12, GigabitEthernet0/1
📎 Trong [110/3]: 110 là AD của OSPF, 3 là tổng cost tới đích. Còn E2 nghĩa là route "từ ngoài OSPF đưa vào" (external type 2) — default route do R2 bơm vào.

🛠️ Lỗi thường gặp & cách xử lý

Triệu chứngNguyên nhân thường gặpCách kiểm tra & sửa
Hai router ping được nhau nhưng không thành neighbor Khác area, khác Hello/Dead timer, hoặc cổng đang passive show ip ospf interface g0/x trên hai đầu, so sánh area và timer; xem show ip protocols
Neighbor FULL nhưng thiếu route tới một LAN Lệnh network sai địa chỉ hoặc wildcard, LAN không được quảng bá show ip protocols xem danh sách mạng; show ip ospf interface brief xem cổng LAN có tên không
Đặt passive-interface xong mất neighbor Đặt nhầm vào cổng nối router khác Bỏ bằng no passive-interface g0/x
Đổi cost nhưng đường đi chỉ đổi một chiều Chỉ đặt cost ở một đầu dây — cost tính theo cổng ra của từng router Đặt cost giống nhau trên cả hai đầu
Router ID không như ý sau khi sửa Router ID chỉ đổi khi khởi động lại tiến trình OSPF clear ip ospf process rồi trả lời yes
R1, R3 không có route O*E2 R2 thiếu default route tĩnh, hoặc thiếu default-information originate show ip route static trên R2

🏆 Thử thách mở rộng

  1. Bỏ cost ở Bước 5 (no ip ospf cost). Tắt dây R1–R2 (cổng G0/1 của R1). Quan sát thông báo trên console và bảng định tuyến của R1. PC1 có còn ping được 8.8.8.8 không? So sánh với tình huống tương tự ở Thử thách 1 Bài 46b.
  2. Đặt auto-cost reference-bandwidth 10000 trên cả 3 router. Cost của cổng GigabitEthernet giờ là bao nhiêu? Vì sao phải đặt trên tất cả router?
  3. Trên R1 dùng một lệnh network duy nhất bao trùm mọi interface của R1 vào area 0. Có nhược điểm gì?
👉 Gợi ý đáp án

Thử thách 1: Console báo neighbor 2.2.2.2 chuyển xuống DOWN. Sau vài giây R1 tính lại đường: default route và 10.0.23.0/30 đi qua R3 (10.0.13.2). PC1 vẫn ping được 8.8.8.8. Khác với static route ở Bài 46b, OSPF biết cả cấu trúc mạng nên tự tìm đường vòng.

Thử thách 2: 10000 Mbps ÷ 1000 Mbps = cost 10. Nếu chỉ một router đổi, router đó tính cost khác hẳn các router còn lại, dẫn tới chọn đường không thống nhất.

! Thử thách 3
R1(config-router)# network 0.0.0.0 255.255.255.255 area 0

Nhược điểm: mọi interface (kể cả interface thêm sau này) đều tự chạy OSPF — dễ quảng bá nhầm mạng hoặc gửi Hello ra nơi không mong muốn.

💬 Hỏi & Đáp nhanh

❓ Trên link Ethernet chỉ có 2 router, vì sao vẫn có DR/BDR?

✅ Cổng Ethernet mặc định là kiểu mạng broadcast, OSPF luôn bầu DR/BDR trên kiểu mạng này dù chỉ có 2 router. Có thể đổi bằng ip ospf network point-to-point trên cả hai đầu để bỏ bầu chọn — chi tiết DR/BDR ở Bài 50.

❓ Process ID và area ID khác nhau thế nào?

✅ Process ID chỉ có ý nghĩa trong một router. Area ID thì phải khớp giữa hai đầu link mới thành neighbor.

❓ Có thể bật OSPF trên interface thay vì dùng lệnh network không?

✅ Có, với lệnh ip ospf 1 area 0 đặt trong interface. Kết quả tương đương; đề CCNA dùng cả hai cách.

📝 Bài tập đánh giá

Câu 1: Lệnh nào đưa interface có IP 10.0.12.1/30 vào area 0?

  • A. network 10.0.12.0 255.255.255.252 area 0
  • B. network 10.0.12.0 0.0.0.3 area 0
  • C. network 10.0.12.0 0.0.0.255 area 1
  • D. network 10.0.12.1 area 0

Câu 2: Trong O 192.168.3.0/24 [110/3] via 10.0.12.2, số 3 là gì?

  • A. Administrative distance
  • B. Số router trên đường đi
  • C. Tổng cost OSPF tới mạng đích
  • D. Process ID

👉 Đáp án

  • Câu 1: B — Lệnh network của OSPF dùng wildcard mask; /30 tương ứng 0.0.0.3. Đáp án C sai area và wildcard quá rộng (vẫn khớp nhưng vào area 1).
  • Câu 2: C — Số đầu là AD (110), số sau là metric — với OSPF là tổng cost.

💡 Output trong bài là output mẫu trên Packet Tracer, trên máy bạn có thể khác một chút (ví dụ địa chỉ MAC).

📚 Bài viết thuộc khóa học CCNA của VNExperts

🧭 Điều hướng

⬅️ Bài trước🏠 Mục lục khóa họcBài kế tiếp ➡️
Bài 49: OSPFv2 — cấu hình single-area cơ bản Mục lục khóa học CCNA Bài 50: OSPFv2 — DR/BDR election trên mạng multi-access