Posted by : 86Gems 22 October 2014


Ta đã biết cách thiết lập quan hệ hàng xóm trong OSPF và nó khá là mất nhiều công sức. Ta phải gửi một vài bản tin hello, trở thành neighbors, gửi một DBD ... kiểm tra xem LSDB được đồng bộ và sau đó gửi một loạt các LSRs và LSUs để cập nhật tất cả mọi thứ.
Xét một topo với 8 router chạy OSPF kết nối trên một switch. Mỗi con router sẽ trở thành hàng xóm OSPF với tất cả các router khác ... gửi gói tin hello, kiểm tra LSDB, vv vv

Đây là những gì ta nhận được. Một mạng lưới neighbor full-mesh. Mỗi router sẽ trở thành neighbor OSPF của tất cả router còn lại và trao đổi thông tin định tuyến. Ta sẽ có rất nhiều các gói tin OSPF qua lại trên mạng này chỉ để thiết lập và duy trì OSPF quan hệ neighbor. Liệu có cách nào hiệu quả hơn ?

Điều gì xảy ra nếu tất cả các router OSPF chỉ gửi cập nhật với một router và router này sẽ chuyển tiếp các cập nhật đó tới các router còn lại ? Tất cả các router chạy OSPF sẽ biết về tất cả các thông tin định tuyến, nhưng sẽ tốn ít lưu lượng cho việc trao đổi các bản tin OSPF. Đây chính là cách thức hoạt động của một DR (Designated router). Router chạy OSPF sẽ chỉ thiết lập quan hệ neighbor đầy đủ với DR và ​​không phải với tất cả các router khác!

Tránh sự cố có thể xảy ra đối với mạng nếu DR không hoạt động, ta cần một router làm dự phòng. Nếu DR không hoạt động thì BDR (Backup Designated Router) sẽ lên thay thế. Tất cả các router OSPF sẽ chỉ hình thành full neighbor với các DR và ​​BDR và không phải với tất cả các router khác. Ta chỉ sử dụng DR / BDR trên mạng multi-access. Không cần phải làm điều này trên mạng point-to-point vì PPP chỉ có 2 router kết nối với nhau nên không cần DR / BDR.
Làm thế nào để ta lựa chọn một DR/BDR? Ta sẽ xem xét quá trình thiết lập neighbor của OSPF. Ngay sau trạng thái two-way , OSPF sẽ bắt đầu quá trình chọn DR hoặc BDR. Router nào sẽ chiến thắng trong cuộc bầu chọn?
Router với priority cao nhất sẽ trở thành DR.
Router với priority cao thứ hai sẽ trở thành BDR.
Nếu có cùng mức priority thì OSPF sẽ dùng router-ID để lựa chọn, router-ID cao càng tốt.
Việc lựa chọn DR/BDR  non-preemptive. Điều này có nghĩa nếu ta thay đổi priority hoặc router-ID, ta phải thiết lập lại OSPF để chọn một DR/BDR mới. 
Router không phải là DR hoặc BDR thì được hiển thị là DROTHER.

Đây là một ví dụ về một mạng chạy 3 router sử dụng định tuyến OSPF qua cổng FastEthernet. Nhìn vào hình ta thấy có 1 DR và  1 DROTHER. Router sử dụng lệnh show ip ospf neighbor được bầu làm BDR.

Ta có thể thay đổi giá trị priority bằng cách sử dụng lệnh ip ospf priority:
Priority mặc định bằng 1.
Nếu router đặt priority bằng 0 thì sẽ không bao giờ được bầu làm DR hoặc BDR.
Bạn cần dùng lệnh clear ip ospf process trước khi thay đổi này có hiệu lực.

Trên đây là một ví dụ về kết nối point-to-point chạy HDLC. Ta có thể thấy rằng có một neighbor nhưng không bầu chọn DR hoặc BDR. Vì đơn giản là chỉ có một router chạy song song với router đang xét.
Ta đã nói một chút về mạng multi-accesspoint-to-point, giờ ta sẽ nghiên cứu sâu hơn hơn một chút. Sau đây là các kiểu mạng của OSPF (OSPF network type) :
  Non-Broadcast (NBMA)
  Point-to-multipoint
  Point-to-multipoint non-broadcast
  Broadcast
  Point-to-Point
Non-broadcast (NBMA)point-to-multipoint được định nghĩa trong RFC 2328. Point-to-multipoint non-broadcast, broadcastpoint-to-point được Cisco đưa ra. Để có thể xem kiểu mạng OSPF đã dùng trên interface ta sử dụng lệnh show ip ospf interface.

Đây là đường dây serial và network type là point-to-point.

Đây là giao diện FastEthernet. Network Type tự động được chọn  :)

Ta sẽ bắt đầu với mạng non-broadcast. Nếu cấu hình kiểu mạng non-broadcast thì OSPF sẽ cho rằng mạng đang chạy một mạng multi-access. Vài điều quan trọng cần nhớ ở đây:
Multi-access có nghĩa là phải chọn một DR và ​​BDR.
Non-broadcast có nghĩa là OSPF không tự quảng bá thông tin đi, cần phải cấu hình lệnh neighbor
Bây giờ hãy nhìn vào mạng frame-relay trong hình trên và giả sử đang ta đang chạy kiểu mạng non-broadcast. Thế đây có phải mạng multi-access?
Có kết nối nào giữa  router Spoke1 và Spoke2? Ta có thể thấy rằng chỉ có 2 PVC và không có kết nối nào giữa Spoke1 và Spoke2. Nếu ta chọn kiểu mạng non-broadcast thì có nghĩa là ta đang nói mạng OSPF này là multi-access nhưng trong thực tế không phải vậy ... chỉ có kết nối giữa router Hub và router Spoke, không có giữa 2 router Spoke.
Ta có rằng các router chỉ có một quan hệ neighbor đầy đủ với DR/BDR và không phải với tất cả các router khác. Sẽ có chuyện gì xảy ra nếu Spoke1 được bầu làm DR?
Spoke2 không thể tới Spoke1, có nghĩa là nó sẽ không thể thiết lập quan hệ neighbor. Làm thế nào để giải quyết được vấn đề này? Ta phải đảm bảo rằng router Hub luôn là DR và ​​Spoke1 hoặc Spoke2 sẽ không bao giờ trở thành DR hoặc BDR!
Router Hub có thể tới được cả Spoke1 và Spoke2 vì vậy nếu nó là DR thì ta sẽ có một bảng neighbor hoàn chỉnh cho việc cập nhật thông tin định tuyến.

Đây là cấu hình trong router Hub. Ta có thể dùng lệnh ip ospf network non-broadcast để thay đổi kiểu mạng OSPF. Ở đây dùng thêm lệnh neighbors để OSPF chuyển sang unicast.

Sử dụng lệnh ip ospf priority 0 là cách để chắc chắn rằng router này sẽ không bao giờ trở thành một DR hoặc BDR. Ngoài ra còn có một lệnh bạn có thể sử dụng trên router Hub để đảm bảo các router Spoke không bao giờ trở thành một DR hoặc BDR. Gõ lệnh neighbor <ip address> priority 0  và phải thực hiện nó trước quá trình thiết lập neighbor trong OSPF.

Tiếp theo ta sẽ nói về mạng broadcast. Nó tương tự mạng non-broadcast chỉ khác việc ta không cần phải cấu hình các neighbor. OSPF sẽ sử dụng multicast và tđộng khám phá neighbor. Kiểu mạng broadcast là mặc định cho giao diện Ethernet.
Chú ý:
  • y chắc chắn rằng khi dùng lệnh frame-relay map ta phải thêm tbroadcast nếu không sẽ không thể gửi multicast trên mạng frame-relay đó!
  • Chỉ 2 kiểu mạng broadcast and non-broadcast cần DR hoặc BDR. Các loại mạng khác thì không!

Ta còn 3 kiểu mạng để tìm hiểu đó là:
  Point-to-multipoint
  Point-to-multipoint non-broadcast
  Point-to-point
Một ghi chú cho dễ nhớ:
Tất cả những kiểu mạng có từ "point" đều không đòi hỏi có DR/BDR! Thậm chí nếu sử dụng point-to-multipoint có nghĩa là ta đang sử dụng nhiều point-to-point ... Sau đây là một ví dụ để làm rõ sự khác biệt giữa point-to-point với multiaccess.

Vẫn dùng mô hình frame-relay lúc nãy nhưng giờ ta sẽ thêm mạng 2.2.2.0/24 vào trong router Spoke1 và sử dụng OSPF để quảng bá mạng này.
Nếu ta dùng theo multi-access và sử dụng kiểu mạng broadcast hoặc non-broadcast, Spoke2 sẽ nghĩ rằng nó có thể tới Spoke1 trực tiếp. Chúng ta sẽ thấy mạng 2.2.2.0/24 trong bảng định tuyến của nó như thế này:

2.2.2.0 /24 NEXT-HOP IP ADDRESS: 192.168.123.2

Spoke2 nghĩ rằng nó có thể tới Spoke1 trực tiếp, nhưng trong thực tế nó đã đi qua router Hub để đạt được điều đó.

Nếu ta thiết lập cho OSPF sử dụng mạng point-to-point bằng cách sử dụng point-to-point, point-to-multipoint hoặc point-to-multipoint non-broadcast, OSPF sẽ thấy mạng này như một tập hợp các mạng point-to-point. Ta sẽ thấy gì trong bảng định tuyến ?

2.2.2.0 /24 NEXT-HOP IP ADDRESS: 192.168.123.1

See the difference? The next-hop IP address is different. Since we are telling OSPF we are using point-to-point it believes it can reach 2.2.2.0 /24 through the router on the other side.
Why do we care about all this? Well you might have reachability issues. You might see entries in your routing table but you can’t reach them because your next-hop IP address is unreachable. This is something to be aware of…
Let’s continue with the other 3 network types!

Sự khác biệt được thấy rõ ràng. Địa chỉ IP next-hop là khác nhau. Vì ta đang nói cho OSPF biết là ta đang sử dụng point-to-point, nó tin rằng nó có thể tới 2.2.2.0/24 thông qua router ở phía bên kia.
Tại sao ta lại phải quan tâm đến tất cả điều này? Vấn đề ở đây là reachability. Ta thấy các mục trong bảng định tuyến, nhưng chưa chắc có thể tới được vì có thể địa chỉ IP next-hop không thể truy cập. Vấn đề nay rất hay gặp, hãy cẩn thận !

Hãy tiếp tục với các 3 kiểu mạng khác!

Đầu tiên ta sử dụng kiểu mạng point-to-multipoint. Một số điều cần phải nhớ:
Tự động phát hiện neighbor vì vậy không cần phải cấu hình lệnh neighbor.
Không có bầu chọn DR/BDR, OSPF sẽ xem mạng như tập hợp nhiều mạng point-to-point.
Chỉ có một dải địa chỉ IP được sử dụng
y chắc chắn rằng mạng frame-relay được cấu hình với từ khóa broadcast.

Đây là những gì cần phải cấu hình trên giao diện. Sử dụng lệnh ip ospf network point-to-multipoint.
Thế còn về mạng point-to-multipoint non-broadcast ? Đó là chính xác giống như point-to-multipoint nhưng sự khác biệt là non-broadcast. Ta sẽ phải tự xác định neighbor bằng lệnh "neighbor".

Kiểu mạng cuối cùng là mạng point-to-point: 
Tự động phát hiện neighbor vì vậy không cần phải cấu hình neighbor OSPF.
Không có bầu chọn DR/BDR, OSPF thấy mạng nhu tập hợp các liên kết point-to-point. 
Thông thường sử dụng cho point-to-point sub-interfaces với một dải mạng cho mỗi liên kết.
Cũng có thể được sử dụng cho một dải mạng duy nhất.

Bảng sau đây lài nhìn tổng quan của tất cả các kiểu mạng:

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © Kiến thức tổng quan - Vòng Đá 5A - Powered by Blogger - Designed by SnowBlack -