2. Introduction
Objectives:
- Nắm rõ các khái niệm cơ bản của giao thức OSPF
- Hiểu được phương pháp tìm đường đi của OSPF
- Cấu hình cơ bản và nâng cao.
3. Introduction to OSPF
OSPF là giao thức được sử dụng phổ biến nhất. Việc nắm
được nó là một điều rất quan trọng.
Gói tin OSPF:
- Data Link Frame:
- IP Packet:
+ Địa chỉ gửi: multicast (224.0.0.5 (sử dụng cho all router) /
224.0.0.6 (sử dụng cho DR/BDR)).
+ Protocol Field = 89
- OSPF Packet Header:
+ Type code: Chỉ ra loại gói tin (Hello, Database Desc, Link
state Request, Link state Upate, Stae Ack.)
+ Router ID & Area ID: Phân biệt giữa các router và khu vực
sử dụng.
4. OSPF Packet Types
1. Hello: Phát hiện và tái phát hiện các router hàng xóm, thiết
lập mối quan hệ adjacency.
2. Database Description (DBD): Đồng bộ cơ sở dữ liệu giữa
các router. Trong một area, các router phải có một csdl
(topology) giống hệt nhau.
3. Link-state Request (LSR): Yêu cầu về một vùng mạng.
4. Link-state Update (LSD): gửi trả vè các thông tin cho
request hoặc cập nhật sự thay đổi trong vùng mạng.
5. Link-state Acknowledgement (LSAck): Đảm bảo việc truyền
tin tin cậy.
5. Hello Packet
- Gói tin hello được trao đổi giữa 2 con neighbor với nhau
trước khi thiết lập mối quan hệ adjency.
Các trường thông tin:
- Type:
- Router ID:
- Area ID:
- Network Mask: subnet mask của interface gửi đi
- Hello Interval: 10s vs 30s
- Router Priority: Lựa chọn router DR hay BDR trong các vùng
mạng Broadcast multiaccess.
- Router Dead Interval: = 4 lần hello interval (tương tự holdtime
của EIGRP).
- Designated Router (DR):
- Backup DR (BDR):
- List of neighbor(s):
6. Link-state Upade Packet
LSU chia thành 10 loại gói tin khác nhau, phụ thuộc vào các
loại router:
Type Description
1 Router LSAs
2 Network LSA: gởi bởi router DR, liệt kê các router ID
của các router trong vùng multiaccess.
3/4 Summary LSA: Sử dụng ở các router biên, quảng bá
OSPF vào các area khác.
8. OSPF Configuration
R(config)#router ospf <proccess_ID>
process_ID kô cần phải giống nhau. (khác vs EIGRP)
--> R(config-router)#network <network_address>
<wildcard_mask> area <area_number>
Trong giáo trình CCNA, ta sử dụng đơn vùng nên
<area_number> = 0.
Giá trị này phải chung nhất.
VD:
R(config)#router ospf 1
network 172.16.1.16 0.0.0.15 area 0
Còn một vài cách làm khác:
- Thực hiện summary luôn các vùng mạng sau đó quảng bá.
- Ko quan tâm đến địa chỉ các interface:
câu lệnh: network 0.0.0.0 255.255.255.255 area 0.
9. Cấu hình chuẩn
Khuyến cáo sử dụng cách sau đây:
Chỉ ra chính xác địa chỉ của interface và wildcard mask =
0.0.0.0
--> Giám sát được việc chạy ospf trên interface nào.
Ex:
Router(config-router)#network 192.168.1.17 0.0.0.0 area 0
10. Router ID
Sử dụng định danh cho các router trong 1 area.
- Để định danh router id cho một router sử dụng ospf, ta có thể
dùng câu lệnh router-id với việc sử dụng 1 dải ip để định danh:
(config-router)#router-id 1.1.1.1 (example - nó chỉ là 1 địa chỉ).
- Trong trường hợp trên router ko thiết lập router id, router sẽ
lựa chọn interface loopback có địa chỉ ip cao nhất làm router id
(nhớ là loopback nhé :D) --> khuyến nghị
- Trong trường hơp ko sử dụng router id và loopback, nó sẽ lấy
địa chỉ cao nhất của interface mà đang hoạt động (active) làm
router id (điều này có nghĩa là interface đó ko nhất thiết xài
OSPF).--> fương fáp này kô khuyến nghị, do cổng vật lý có thể
hỏng.
11. Kiểm tra Router ID
#show ip protocols
Details:
- Router ID 192.168.10.5
Sử dụng Loopback làm ID: chỉ cần tạo ra loopback và gán địa
chỉ IP cho nó.
Kiểm tra hoạt động của OSPF:
#show ip ospf neighbor
(Như EIGRP)
Details:
Router ID Pri State Dead Time Address Interface
(neighbor) (local)
13. Metric của OSPF
Metric: cost
Đối với các router của cisco, cost đc tính dựa trên nghịch đảo
của băng thông. (10^8/bps)
ex:
Fast Ethernet 10^8/100,000,000 bps = 1
Ethernet 10^8/10,000,000 bps = 10.
v.v...
14. Default Bandwidth vs Actual Bandwidth
- OSPF sử dụng băng thông mặc định, nên có thể tính toán sai
so với thực tế. Do đó ta cần cấu hình lại.
(config-if)#bandwidth 64 (kbps)
hoặc:
(config-if)#ip ospf cost 1562 (tính toán dựa trên bandwidth).
Đôi khi trong thực tế, ta lại muốn "bẻ cong" giá trị này so vs
thực tế.
16. OSPF Network Type
- Point - to - Point
- Broadcast Multiaccess
- Nonbroadcast Multiaccess. VD: Frame Relay
- Point - to - Multipoint
- Virtual links.
17. Challenges in multiaccess Network
- Adjacency có j khác neighbors?
DR và BDR.
Trong vùng mạng multiaccess sẽ bầu chọn ra một router là DR,
một router sẽ là BDR.
DR và BDR sẽ thiết lập adjacency với tất cả router còn lại.
Sending & Receiving LSA
18. DR/BDR Election
Lựa chọn DR/BDR như thế nào?
- DR được lấy từ router có Priority cao nhất, tiếp theo là BDR
Nếu cùng priority? Sử dụng Router ID.
Thay đổi Priority
(config-if)#ip ospf priority {0 - 255}
Chú ý:
- Quá trình thực hiện lựa chọn DR và BDR sẽ được thực hiện
ngay khi router đầu tiên chạy ospf.
- Khi DR đc lựa chọn, nó tiếp tục làm cho đến khi xảy ra:
+ DR fail.
+ OSPF ko còn chạy trên DR fail.
+ Interface đang kết nối vào vùng mạng multiaccess ko
chạy.
19. Force Election DR/BDR
Tắt hết interface đi rồi mở lại
shutdown
no shutdown
Chọn router có priority cao nhất đầu tiên.
20. Redistributing an OSPF Default route
tương tự RIPv2:
(config-router)#default-information originate
Detail:
O*E2 (External Type 2).
Type 2: metric không thay đổi.
Type 1: cộng thêm cost của đường link.
21. Reference Bandwidth
Có thể tăng số tham chiếu (10^8) lên:
(config-router)#auto-cost reference-bandwidth 10000 (Mbps)
22. Modifying OSPF Timers
(config-if)#ip ospf hello-interval seconds
(config-if)#ip ospf dead-interval seconds
Các giá trị timer giữa hai neighbor phải giống nhau, để đảm
bảo đồng bộ topology giữa 2 router.
25. Redistribution
Quảng bá giữa các giao thức định tuyến khác nhau: RIPv2,
EIGRP, OSPF.
1. Quảng bá EIGRP, OSPF vào RIP
router rip
redistribute eigrp 100 metric 1
redistribute ospf 1 metric 1
2. Quảng bá RIP, OSPF --> EIGRP
router eigrp 100
redistribute ospf 1 metric 100000 100 255 1 1500
redistribute rip metric 100000 100 255 1 1500
3. Quảng bá RIP, EIGRP --> OSPF
router ospf 1(mặc định nhận vào là metric = 20)
redistribute rip [subnets] [metric-type 1] [metric 30]
redistribute eigrp 100 ....
Hinweis der Redaktion
Để đảm bảo 2 con router là hàng xóm thì gói tin Hello ở 2 con phải có những trường sau đây là giống nhau: - Area ID; - Authentication type; - Network Mask: - Hello Interval ; - Router Dead Interval; - Router hiện tại fải thấy mình trong list of neighbor của router hàng xóm. Chú ý: Chỉ cần sai khác một trong số các thông số này là chịu chết!
Trong OSPF, ta có Area Backbone, các area khác sẽ kết nối với area này. Do đó tồn tại khác nhiều loại router khác nhau.