ospf là một giao thức định tuyến trạng thái liên kết điển hình được sử dụng rộng rãi trong các mạng doanh nghiệp lớn. Trong chương trình ccna, đây cũng là một chủ đề liên quan đến rất nhiều. Do đó, việc nắm vững ospf là gì và cách thức hoạt động của nó có thể giúp các bạn đang theo học chương trình ccna hoàn thành tốt việc học của mình đồng thời đáp ứng được nhu cầu của công việc thực tế.
ospf là gì?
ospf là viết tắt của Open Shortest Path First. Nó là một giao thức định tuyến được sử dụng rộng rãi và được hỗ trợ. Đây là một giao thức định tuyến nội bộ, có nghĩa là nó được sử dụng trong một vùng hoặc mạng. Nó dựa trên thuật toán định tuyến trạng thái liên kết, trong đó mỗi bộ định tuyến chứa thông tin về từng miền và xác định đường đi ngắn nhất dựa trên thông tin này. Mục tiêu của định tuyến là học cách định tuyến.
ospf thực hiện điều này bằng cách biết mọi bộ định tuyến và mạng con trong toàn bộ mạng. Mọi bộ định tuyến đều chứa thông tin giống nhau về mạng. Cách các bộ định tuyến tìm hiểu về điều này bằng cách gửi lsa (quảng cáo trạng thái liên kết). Các lsa này chứa thông tin về từng bộ định tuyến, mạng con và thông tin mạng khác. Khi lsas đầy, ospf lưu trữ thông tin trong cơ sở dữ liệu trạng thái liên kết được gọi là lsdb. Mục tiêu chính là lấy thông tin giống nhau về từng bộ định tuyến trong lsdb.
ospf hoạt động như thế nào?
Bộ định tuyến chạy trên giao thức định tuyến ospf, giao thức này phải trải qua 4 bước sau:
- ID bộ định tuyến
- Xây dựng mối quan hệ hàng xóm
- Exchange lsdb (Cơ sở dữ liệu trạng thái liên kết)
- Xây dựng bảng định tuyến
- Theo interface nào có địa chỉ ip cao nhất thì lấy ip đó làm router-id Ví dụ: router có f0 / 0 = 10.0.0.1 f0 / 1 = 172.16.1.1 s0 / 0/0 = 192.168. 1.1 => id bộ định tuyến = 192.168.1.1
- Nếu có một bộ định tuyến có lặp lại và tham gia vào tuyến đường, mã định tuyến sẽ được lặp lại trước tiên Ví dụ: lookback 0 = 4.1.1.1; lookback1 = 4.2.2.2; f0 / 0 = 172.16.1.1; f0 / 1 = 192.168.1.1 => id bộ định tuyến = 4.2.2.2
- Định danh router-id không cần thiết để chọn ip trên giao diện. Ví dụ: lookback 0 = 4.1.1.1; lookback1 = 4.2.2.2; f0 / 0 = 172.16.1.1; f0 / 1 = 192.168.1.1 Bạn có thể định cấu hình tùy chọn router-id = 100.100.100.100. IP này không thuộc về bất kỳ giao diện nào của bộ định tuyến.
- Lệnh cấu hình thực hiện những việc sau:
- same area-id: Khi mạng lớn, mọi người được chia thành nhiều khu vực và nếu một khu vực nào đó bị lỗi thì chỉ khu vực đó bị ảnh hưởng. Mỗi khu vực được cấp một id khu vực. Id khu vực của khu vực trung tâm phải bằng 0. Tất cả các vùng khác phải có đường truyền trực tiếp đến vùng 0 để truyền dữ liệu.
- Cùng một mạng con: 2 ips phải ở trên cùng một mạng con để ping và trao đổi thông tin.
- Phải có cùng thông số: hello / dead-time trên 2 cổng, mặc định là 10 giây / 40 giây.
- Yêu cầu xác thực trên 2 cổng: Đối với Metro. Khi xác thực được đặt, các bộ định tuyến khác không thể nhận thông tin.
- Phải có cùng cờ vùng gốc: cho ospf đa vùng.
- Cấu trúc liên kết ảo: Khi tất cả các bộ định tuyến được kết nối với nhau, nó được gọi là cấu trúc liên kết ảo.
- Cấu trúc liên kết thực tế: Khi có một số lượng bộ định tuyến được chỉ định trong mạng, nó được gọi là cấu trúc liên kết thực tế. Bộ định tuyến được chỉ định ở đây là bộ định tuyến mà tất cả các bộ định tuyến được kết nối. Tất cả các gói được gửi bởi bộ định tuyến sẽ được định tuyến thông qua bộ định tuyến được chỉ định.
- Xin chào
- Mô tả Cơ sở dữ liệu
- Yêu cầu trạng thái liên kết
- Cập nhật trạng thái liên kết
- Xác nhận Trạng thái Liên kết
Cụ thể:
Chọn router-id
Để chạy ospf, nó phải tạo một định danh gọi là router-id để chạy, ở định dạng địa chỉ ip a.b.c.d (ví dụ: ipv4: 192.168.1.1). Có hai cách để tạo router-id:
Phương pháp 1: Do bộ định tuyến tạo tự động
Phương pháp 2: Tự làm
router (config) # router ospf 1router (config-router) # router-id a.b.c.d
Xây dựng mối quan hệ láng giềng
Một bộ định tuyến chạy ospf sẽ gửi các gói hello đến tất cả các cổng chạy ospf, cứ 10 giây một lần theo mặc định. Gói tin được gửi đến địa chỉ multicast cụ thể cho ospf 224.0.0.5 tới tất cả các bộ định tuyến khác đang chạy ospf trên cùng một phân đoạn mạng. Mục đích của gói hello là giúp các bộ định tuyến tìm thấy hàng xóm và thiết lập và duy trì mối quan hệ này.
Hai bộ định tuyến được gọi là hàng xóm của nhau nếu chúng đáp ứng các điều kiện sau:
Để xem hàng xóm, hãy sử dụng lệnh: hiển thị ip ospf hàng xóm.
hoán đổi lsdb
lsdb là bản đồ mạng mà từ đó bộ định tuyến sẽ tính toán các tuyến đường. Lsdb phải giống hệt nhau giữa các bộ định tuyến trong cùng một khu vực. Các bộ định tuyến không trao đổi toàn bộ bảng lsdb với nhau, nhưng trao đổi các đơn vị thông tin được gọi là lsa (quảng cáo trạng thái liên kết) với nhau. Các đơn vị thông tin này lần lượt được chứa trong các gói cụ thể được gọi là lsu (cập nhật trạng thái liên kết), thực sự được trao đổi giữa các bộ định tuyến.
Tính toán và xây dựng bảng định tuyến
Nó không còn được gọi là hạn chế trong ospf nữa mà là chi phí (chi phí trên giao diện).
Phí được tính khi bạn vào cửa, nhưng không được tính khi bạn rời đi.
Chỉ số = chi phí = 108 / băng thông tính bằng bps.
Ethernet (bw = 10mbps) → chi phí = 10.
Fast Ethernet (bw = 100mbps) → chi phí = 1.
serial (bw = 1.544mbps) → cost = 64 (loại bỏ số thập phân trong phép chia).
Bộ định tuyến tạo thành một mạng liên quan
Điều đầu tiên xảy ra trước khi mối quan hệ được hình thành là mỗi bộ định tuyến chọn một id bộ định tuyến.
id bộ định tuyến (rid): Id bộ định tuyến là một số nhận dạng duy nhất từng bộ định tuyến trên mạng. Id bộ định tuyến ở định dạng địa chỉ ipv4. Có một số cách để đặt id bộ định tuyến, cách đầu tiên là đặt id bộ định tuyến theo cách thủ công và cách khác là để bộ định tuyến tự quyết định.
Sau đây là logic để bộ định tuyến chọn đặt id bộ định tuyến:
Gán thủ công: Bộ định tuyến sẽ kiểm tra xem id bộ định tuyến có được đặt theo cách thủ công hay không. Nếu nó được đặt theo cách thủ công, nó là một id bộ định tuyến. Nếu không được thiết lập theo cách thủ công thì nó sẽ chọn địa chỉ ip giao diện trùng lặp ‘lên’ cao nhất. Nếu không có giao diện trùng lặp, hãy chọn địa chỉ ip giao diện không trùng lặp ‘lên’ cao nhất.
Hai bộ định tuyến được kết nối với nhau thông qua điểm-điểm hoặc nhiều bộ định tuyến được kết nối có thể giao tiếp với nhau thông qua giao thức ospf. Hai bộ định tuyến chỉ ở gần nhau khi chúng gửi gói tin chào cho nhau. Khi cả hai bộ định tuyến nhận được thông báo gói hello, chúng đang ở trạng thái hai chiều. Bởi vì ospf là một giao thức định tuyến trạng thái liên kết, nó cho phép các mối quan hệ láng giềng giữa các bộ định tuyến.
Chỉ hai bộ định tuyến thuộc cùng một mạng con và chia sẻ cùng một id khu vực, mặt nạ mạng con, bộ hẹn giờ và xác thực để trở thành hàng xóm của nhau. Mối quan hệ ospf là mối quan hệ được hình thành giữa các bộ định tuyến để chúng có thể biết về nhau. Hai bộ định tuyến có thể là hàng xóm của nhau nếu ít nhất một trong số chúng là Bộ định tuyến được chỉ định hoặc Bộ định tuyến được chỉ định dự phòng trong mạng hoặc được kết nối bằng liên kết điểm-điểm.
Các loại liên kết trong ospf
Khi bạn hiểu giao thức định tuyến ospf là gì. Cần biết loại liên kết trong ospf Một liên kết về cơ bản là một kết nối, vì vậy kết nối giữa hai bộ định tuyến được gọi là liên kết.
Có bốn loại liên kết trong ospf:
1. Liên kết điểm-điểm : Liên kết điểm-điểm kết nối trực tiếp hai bộ định tuyến mà không có máy chủ hoặc bộ định tuyến ở giữa.
2. Liên kết tạm thời : Khi nhiều bộ định tuyến được kết nối với mạng, chúng được gọi là liên kết tạm thời. Các ràng buộc tạm thời được thực hiện theo hai cách khác nhau:
3. Liên kết cố định : Đây là mạng được kết nối với một bộ định tuyến duy nhất. Dữ liệu đi vào mạng thông qua một bộ định tuyến duy nhất và rời khỏi mạng thông qua cùng một bộ định tuyến.
4. Liên kết ảo : Nếu liên kết giữa hai bộ định tuyến gặp sự cố, quản trị viên sẽ tạo một đường dẫn ảo giữa các bộ định tuyến, đường dẫn này cũng có thể rất dài. p>
định dạng tin nhắn ospf
Sau đây là các trường ở định dạng thông báo ospf:
Phiên bản: Đây là trường 8 bit chỉ định phiên bản giao thức ospf.
Loại: Đây là trường 8 bit. Nó chỉ định loại gói ospf.
Thông báo: Đây là trường 16 bit chỉ định tổng độ dài của thông báo, bao gồm cả các tiêu đề. Vì vậy, tổng độ dài bằng tổng độ dài của thông báo và tiêu đề.
Địa chỉ IP nguồn: Nó xác định địa chỉ mà gói được gửi đến. Nó là một địa chỉ ip định tuyến gửi.
ID khu vực: ID này xác định khu vực diễn ra định tuyến.
Checksum: Được sử dụng để sửa lỗi và phát hiện lỗi.
Loại xác thực: Có hai loại xác thực, 0 và 1. Ở đây, 0 có nghĩa là không có xác thực và 1 có nghĩa là xác thực dựa trên mật khẩu được chỉ định.
Xác thực: Đây là trường 32 bit chứa giá trị thực của dữ liệu xác thực.
gói ospf
Có năm loại gói tin khác nhau trong ospf:
1. xin chào
Gói
hello được sử dụng để tạo mối quan hệ hàng xóm và kiểm tra khả năng truy cập của hàng xóm. Vì vậy, gói hello được sử dụng khi cần thiết lập kết nối giữa các bộ định tuyến.
2. Mô tả cơ sở dữ liệu
Sau khi kết nối được thiết lập, nếu bộ định tuyến lân cận giao tiếp với hệ thống lần đầu tiên, nó sẽ gửi thông tin cơ sở dữ liệu của cấu trúc liên kết mạng đến hệ thống để hệ thống có thể cập nhật hoặc chỉnh sửa cho phù hợp.
3. Yêu cầu trạng thái liên kết
Yêu cầu trạng thái liên kết được gửi bởi bộ định tuyến được sử dụng để lấy thông tin của tuyến đường đã chỉ định. Giả sử có hai bộ định tuyến, bộ định tuyến 1 và bộ định tuyến 2, bộ định tuyến 1 muốn biết về bộ định tuyến 2, vì vậy bộ định tuyến 1 gửi một yêu cầu trạng thái liên kết đến bộ định tuyến 2. Khi bộ định tuyến 2 nhận được yêu cầu trạng thái liên kết, nó sẽ gửi thông tin trạng thái liên kết đến bộ định tuyến 1.
4. Cập nhật trạng thái liên kết
Bộ định tuyến sử dụng cập nhật trạng thái liên kết để quảng cáo trạng thái liên kết của chúng. Nếu bất kỳ bộ định tuyến nào muốn quảng bá trạng thái liên kết của nó, nó sẽ sử dụng các bản cập nhật trạng thái liên kết.
5. Xác nhận trạng thái liên kết
Xác nhận trạng thái liên kết làm cho việc định tuyến trở nên đáng tin cậy hơn bằng cách buộc mỗi bộ định tuyến gửi xác nhận trên mỗi bản cập nhật trạng thái liên kết. Ví dụ: bộ định tuyến a gửi bản cập nhật trạng thái liên kết tới bộ định tuyến b và bộ định tuyến c, sau đó bộ định tuyến b và c gửi xác nhận trạng thái liên kết tới bộ định tuyến a, cho bộ định tuyến a biết rằng cả hai bộ định tuyến đã nhận được bản cập nhật trạng thái liên kết.
Trạng thái của ospf
Các thiết bị chạy giao thức ospf trải qua các trạng thái sau:
không hoạt động: Nếu thiết bị không hoạt động, điều đó có nghĩa là không nhận được gói hello. down không có nghĩa là thiết bị bị sập mà là quá trình ospf chưa bắt đầu.
init: Nếu thiết bị ở trạng thái init, điều đó có nghĩa là thiết bị đã nhận được gói hello từ một bộ định tuyến khác.
2way: Nếu thiết bị ở trạng thái 2way, điều đó có nghĩa là cả hai bộ định tuyến đã nhận được gói hello từ các bộ định tuyến khác và kết nối đã được thiết lập giữa các bộ định tuyến.
exstart: Khi quá trình trao đổi giữa các bộ định tuyến bắt đầu, cả hai bộ định tuyến đều vào trạng thái khởi động. Ở trạng thái này, máy chủ và khách được chọn dựa trên id bộ định tuyến. Người chủ kiểm soát chuỗi số và bắt đầu trao đổi.
Exchange: Ở trạng thái trao đổi, hai bộ định tuyến gửi cho nhau danh sách lsa chứa mô tả cơ sở dữ liệu.
Đang tải: Ở trạng thái tải, lsr, lsu và lsa được trao đổi.
full: Sau khi trao đổi lsa hoàn tất, bộ định tuyến sẽ chuyển sang trạng thái đầy đủ.
Định cấu hình định tuyến ospf
Để chạy ospf trên bộ định tuyến, các lệnh sau là bắt buộc:
router (config) # router ospf process-id
bộ định tuyến (config-router) # network dia_chi_ip wildcard_mask area area_id
Trong đó, process-id là ID tiến trình ospf đang chạy trên bộ định tuyến, chỉ có ý nghĩa cục bộ trên bộ định tuyến.
Để thêm một cổng vào ospf, bạn cần “nối mạng hóa” địa chỉ mạng của cổng. Với ospf, bạn phải sử dụng thêm một ký tự đại diện-mặt nạ để có được các mạng con chính xác tham gia vào quá trình định tuyến. Để tính toán giá trị mặt nạ ký tự đại diện, bạn cần trừ giá trị mạng con cho 255.255.255.255 – mặt nạ 255.255.255.0 octet sẽ cho bạn những gì bạn đang tìm kiếm. Tuy nhiên, cách tính này chỉ áp dụng cho các dải ip liền nhau và không đúng trong mọi trường hợp.
Định cấu hình ospf của bộ định tuyến như sau:
Định cấu hình bộ định tuyến r1: sử dụng ospf
r1 (config) #router ospf 1
r1 (config-router) #network 192.168.1.0 0.0.0.255 khu vực 0
r1 (config-router) #network 192.168.3.0 0.0.0.255 khu vực 0
Định cấu hình bộ định tuyến r12: sử dụng ospf
r2 (config) #router ospf 1
r2 (config-router) #network 192.168.2.0 0.0.0.255 khu vực 0
r2 (config-router) #network 192.168.3.0 0.0.0.255 khu vực 0
Vậy là bạn đã hiểu ospf là gì và cách hoạt động của nó rồi, mong bài viết này mang lại nhiều thông tin hữu ích cho bạn, chúc bạn may mắn!