3、交換機IP路由功能

每個用例前自己最好先畫個圖,不然容易繞暈,這篇文章寫好久了,自己都覺得有點繞
一、直連路由
如果一個交換機與另一個交換機時直連著的并且他們用來連接的端口屬于同網段,那么這種情況下他們就屬于直連路由。不需要做任何配置便可以通信
但是如果用來連接的兩個端口不屬于同一網段,那么在 IP 層上這兩個設備是不能直接通信的,但它們仍然可以在數據鏈路層(Layer 2)進行通訊。這是因為數據鏈路層的通信機制與網絡層的 IP 地址無關(前面講過)

二、靜態路由
場景:交換機A(swA)端口1的ip 10.1.1.1/24,交換機B(swB)的端口2的ip 11.1.1.1/24。交換機C(swC)的端口1的ip是 10.1.1.2/24 交換機C端口2的ip是 11.1.1.2/24
swA的port1和sw2的port2是屬于不同網段的兩個端口,他們如果想實現通信,就需要通過路由實現

具體如何實現:
讓swA的port1和swC的port相連,swB的port2和swC的port2相連
這里swA與swC之間的兩個port1是可以直接通信的,他們屬于同網段10.1.1.0,這里swB與swC之間的兩個port2也是可以直接通信的,他們屬于同網段11.1.1.0,然后swC的port1和port2是可以直接通信的(同一個交換機上的端口是可以直接通信的)
備注:這里大部分人都認為路由swA已經可以和swB直接通信了,實際不行,還需要配置一個路由(這里你可以在swA的后臺去ping 10.1.1.2是能ping通的,然后ping 11.1.1.2無法ping通,會提示網關不可達,也就是要配置路由)
這里我們配置靜態路由:
1、在swA上配置靜態路由的頁面配置一條靜態路由,包括目的網絡(這里是11.1.1.0的網段),下一跳(這里下一跳10.1.1.2),這條路由的作用也就是發送到11.1.1.0網段的報文,會轉發到ip是10.1.1.2的端口,
前提是這個下一跳是可達的,這里swA的port1 10.1.1.1與swC的port2 10.1.1.2直連,所以是可達的
2、這時swA可以ping通swC交換機上的11.1.1.2這個端口了,但我們的目的是ping通swB上的11.1.1.1這個port2這個端口,這里你ping一下發現還是無法ping通(原因是因為想要ping通這個過程是雙向的,swA后臺ping swB上的port2,原理是發送一個報文,
然后swB上port2接受到報文后會返回一個報文,這才是ping通整個流程,現在這個報文能通過路由到swB的11.1.1.1port2這個端口,但是swB返回的這個報文無法回到swA的10.1.1.1port1這個端口,因為swB這個交換機上沒有到達10.1.1.0這個網段的路由)
3、所以配置靜態路由不能只在swA上配置,還要在swB上配置一個目的網絡10.1.1.0,下一跳11.1.1.2的靜態路由
這時你再swA ping 11.1.1.2,能ping通

三、策略路由
場景:pc1的ip是 10.1.1.1 交換機A(swA)的端口port1的ip是10.1.1.2 端口2的ip是11.1.1.2 端口3的ip是12.1.1.2,交換機B(swB)的端口port2的ip是11.1.1.3 端口3的ip是12.1.1.3,端口4的ip是13.1.1.3,pc2的ip,13.1.1.4
連線狀態:pc1與swA的port1相連,swA和swb之間port2互連,port3互連,pc2與swB的port4相連

這里pc1和pc2屬于不同網段的ip,他們如果想實現通信,就需要實現路由
這里pc1想ping通pc2如果想通過靜態路由就采用上面的方法,在swA上配置目的網絡13.1.1.0,下一跳11.1.1.3的靜態路由,在swB上配置目的網絡10.1.1.0,下一跳11.1.1.2的靜態路由,這樣便可以pc1 ping 通pc2了(這里我選擇的路由路線是通過swA和swB之間port2端口互連的那一條線)
注意(這里pc1和pc2配置ip時的配置的默認網關需要和對應連接交換機端口的ip一樣,也就是說這里pc1的網關是10.1.1.2,這里pc2的網關是13.1.1.3),如果不這樣配置那么你會發現pc1甚至連直連交換機A上的11.1.1.2都無法ping通,pc2甚至連直連交換機B上的11.1.1.3都無法ping通)
這里的默認網關的作用是比如當pc1想ping pc2時,pc1沒有和pc2的13.1.1.4直連,所以不能直達,像這種不能直達的報文就會轉發給默認網關

如果想通過策略路由實現通信:1、在上面配置了靜態路由的基礎上在swA上配置策略路由的頁面新增一條策略路由首先選擇端口,這個端口是入端口,也就是報文傳入的端口,這里是指和pc1相連的swA上的port1,意思就是接下來的規則只針對這個端口
2、在增加一條規則:這里源IP填入10.1.1.1,目的ip不填、協議不限、動作選路由,然后確定。然后下一跳填12.1.1.3。這里意思就是只要是目的ip是10.1.1.1的報文都能直接路由到12.1.1.3。(前提是12.1.1.3可達)
3、選擇高于其它類型路由或者低于其它類型路由。如果這里選高于其它類型路由,那么你pc1 ping pc2時便不會走上面swA和swB之間port2端口互連的那一條線,而是swA和swB之間port3的那一條線

現在這里的場景就是swA和swB之間有兩條路由線路,一條是靜態路由pc1 10.1.1.1-》swA的port1 10.1.1.2-》swA的port2 11.1.1.2-》swB的port2 11.1.1.3-》swB的port4 13.1.1.3-》pc2 13.1.1.4
一條是策略路由pc1 10.1.1.1-》swA的port1 10.1.1.2-》swA的port3 12.1.1.2-》swB的port3 12.1.1.3-》swB的port4 13.1.1.3-》pc2 13.1.1.4
選擇那一條就看誰的優先級更高,策略路由要么高于其它,要低于其它。(可能不同公司對優先級的先后順序設定不一樣)

上面兩種路由都是屬于靜態的,都是屬于手動配置的,接下來講兩種常用的動態路由,RIP路由和OSPF路由
四、RIP路由
給大家看一段復制過來的話:RIP路由是距離矢量路由協議,路由是以矢量(距離,方向)的方式被通告出去的,這里的距離是根據度量來 決定的。每個路由器都不了解整個網絡拓撲,它們只知道與自己直接相連的網絡情況,
并根據從鄰居得 到的路由信息更新自己的路由。通俗點就是往某個方向上的距離。
看看就行了,具體怎么樣看實操

RIP路由形成的過程:(這段也是復制過來的,比較清楚)
RIP協議啟動之后,SwitchA會向相鄰的交換機廣播一個Request報文。
SwitchB從接口接收到SwitchA發送的Request報文后,把自己的RIP路由表封裝在Response報文內,然后向該接口對應的網絡廣播。
SwitchA根據SwitchB發送的Response報文,形成自己的路由表。

場景:交換機A(swA)的port1的ip 10.1.1.1/24 交換機B(swB)的port1的ip 10.1.1.2/24、port2的ip 20.1.1.2/24,交換機C(swC)的port2的ip 20.1.1.1/24
連線狀態:swA的port1連swB的port1,swB的port2連swC的port2

如果想要用靜態路由那么直接在swA上配一個目的網絡20.1.1.0,下一跳10.1.1.2的靜態路由,和swC上配一個目的網絡10.1.1.0,下一跳20.1.1.2的靜態路由即可(這樣swA能ping通swC的port2,也就是20.1.1.1或者swC能ping通swA的port1,也就是10.1.1.1)
上面是手動在頁面配置的靜態路由,靜態路由是必須手動配置的,在網絡復雜的情況下,手動配置就比較費時,所以就有了動態路由
如果用RIP路由會輕松很多,如果想通過RIP路由實現通信:
?? ?在需要開啟RIP路由的交換機的配置RIP路由頁面勾選開啟RIP路由的選項,選擇對應接口即可。
?? ?在這里就是在swA的配置RIP路由頁面開啟RIP路由,選擇port1,在swB的配置RIP路由頁面開啟RIP路由,選擇port1和port2.在swC的配置RIP的路由頁面開啟RIP路由,選擇port2.
(這樣swA能ping通swC的port2,也就是20.1.1.1或者swC能ping通swA的port1,也就是10.1.1.1)

原理:每個開啟RIP的交換機會定期發送其路由信息給鄰近的設備。swB會將自己的路由(即它知道的網絡信息)通過Port1發送給swA。swB會將自己的路由(即它知道的網絡信息)通過Port2發送給swC。這樣swA學習到了如何通往swC的路由,swC也知道了如何通往swA的路由


五、OSPF路由(主流) ? ospf原理這里講解不夠詳細(可以去b站搜一下)
給大家看一段復制過來的話:OSPF協議是一個鏈路狀態內部網關路由協議,運行OSPF協議的路由器會將自己擁有的鏈路狀態信息,通過啟用OSPF協議的接口發送給其他OSPF協議設備,
同一個OSPF協議區域中的每臺設備都會參與鏈路狀態信息的創建、發送、接收與轉發,直至這個區域中的所有OSPF協議設備都獲得了相同的鏈路狀態信息為止。
鏈路狀態:OSPF協議是一種基于鏈路狀態的路由協議,鏈路狀態也指路由器的接口狀態,其核心思想是,每臺路由器都將自己的各個接口的接口狀態(鏈路狀態)共享給其他路由器。

一個OSPF協議網絡可以被劃分成多個區域(Area),至于為什么要劃分區域,你想想要是當一個網絡規模特別大的時候,如果不劃分區域,所有的路由信息都會傳遞到每一個路由器,導致路由表十分龐大。所以通過劃分區域,可以將路由信息限制在特定區域內,從而減少每個路由器的路由表大小。
如果一個OSPF協議網絡只包含一個區域,則被稱為單區域OSPF協議網絡;
如果一個OSPF協議網絡包含多個區域,則被稱為多區域OSPF協議網絡。
(1)一個OSPF協議網絡中只有一個區域就是單區域,有多個區域就是多區域,每一個區域都有一個區域ID號標識,這個ID號是32位的二進制數表示;
(2)骨干區域:區域ID為0的區域,單區域OSPF網絡的區域為骨干區域;
(3)普通區域:區域ID為非零的區域,在多區域中,除骨干區域外都為普通區域;
(4)普通區域之間的通信需要骨干區域的中轉,當兩者沒直連時,需要虛鏈路技術實現。

原理:
1、通過交互Hello報文形成鄰居關系
路由器運行OSPF協議后,會從所有啟動OSPF協議的接口上發送Hello報文。如果兩臺路由器共享一條公共數據鏈路,并且能夠成功協商各自Hello報文中所指定的某些參數,就能形成鄰居關系。
2、通過泛洪LSA通告鏈路狀態信息
形成鄰居關系的路由器之間進一步交互LSA形成鄰接關系,每臺路由器根據自己周圍的網絡拓撲結構生成LSA,LSA描述了路由器所有的鏈路、接口、鄰居及鏈路狀態等信息,路由器通過交互這些鏈路信息來了解整個網絡的拓撲信息。
3、通過組建LSDB形成帶權有向圖
通過LSA的泛洪,路由器會把收到的LSA匯總記錄在LSDB中。最終,所有路由器都會形成同樣的LSDB。
4、通過SPF算法計算并形成路由
當LSDB同步完成之后,每一臺路由器都將以其自身為根,使用SPF算法來計算一個無環路的拓撲圖來描述它所知道的到達每一個目的地的最短路徑(最小的路徑代價)。
5、維護和更新路由表
根據SPF算法得出最短路徑樹后,每臺路由器將計算得出的最短路徑加載到OSPF路由表形成指導數據轉發的路由表項,并且實時更新。同時,鄰居之間交互Hello報文進行保活,維持鄰居關系或鄰接關系,并且周期性地重傳LSA。

下面舉的例子是一個單區域的場景,避免太過復雜
場景:交換機A(swA)的port1的ip 10.1.1.1/24 交換機B(swB)的port1的ip 10.1.1.2/24、port2的ip 20.1.1.2/24,交換機C(swC)的port2的ip 20.1.1.1/24
連線狀態:swA的port1連swB的port1,swB的port2連swC的port2

如果想通過ospf路由實現通信:
?? ?在需要開啟ospf路由的交換機的配置ospf路由頁面勾選開啟ospf路由的選項,配置路由標識符(唯一標識一臺 OSPF 路由器,不同的路由器必須有不同的路由器 ID。)、然后再新增一個區域(配置區域ID,選擇接口、選擇區域類型)、配置基礎帶寬(每個鏈路都有一個成本值,該值與鏈路帶寬的反比有關。帶寬越高,成本值越低,反之亦然。)
?? ?在這里就是在swA的配置OSPF路由頁面開啟OSPF路由,設置路由標識符(1.1.1.1)、設置基準帶寬(100)、新增區域(區域ID:1、區域類型:普通區域、接口:port1)、其余默認
?? ??? ? ?在swB的配置OSPF路由頁面開啟OSPF路由,設置路由標識符(1.1.1.2)、設置基準帶寬(100)、新增區域(區域ID:1、區域類型:普通區域、接口:port1、port2)、其余默認
?? ??? ? ?在swC的配置OSPF路由頁面開啟OSPF路由,設置路由標識符(1.1.1.3)、設置基準帶寬(100)、新增區域(區域ID:1、區域類型:普通區域、接口:port2)、其余默認
?? ?備注:想要正確建立鄰居關系,則首先路由標識符不能一致,另外區域的區域ID和區域類型需要一樣,只有區域ID和類型一致的區域才能建立鄰居關系

配置完成后:swA則能與swC通信
?? ?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/63693.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/63693.shtml
英文地址,請注明出處:http://en.pswp.cn/web/63693.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

分層架構 IM 系統之多媒體功能設計與實現

現在 IM 系統已經不僅限于文本消息的通訊了,多媒體數據占據越來越多的比重,比如:文件傳輸、語音通話、視頻通話等。 在前面的文章(《基于需求分析模型來結構化剖析 IM 系統》)中我們分析過,“多媒體消息”…

0.gitlab ubuntu20.04 部署問題解決

安裝依賴: ① sudo apt-get update 出現: 解決方式: 去 /etc/apt/sources.list.d 這個目錄刪除或注釋對應的list文件 第三方軟件的源一般都以list文件的方式放在 /etc/apt/sources.list.d 這個目錄 重新運行sudo apt-get update 安裝…

Next.js v15 - 服務器操作以及調用原理

約定 服務器操作是在服務器上執行的異步函數。它們可以在服務器組件和客戶端組件中調用,用于處理 Next.js 應用程序中的表單提交和數據修改。 服務器操作可以通過 React 的 “use server” 指令定義。你可以將該指令放在 async 函數的頂部以將該函數標記為服務器操…

什么是3DEXPERIENCE SOLIDWORKS,它有哪些角色和功能?

將業界領先的 SOLIDWORKS 3D CAD 解決方案連接到基于單一云端產品開發環境 3DEXPERIENCE 平臺。您的團隊、數據和流程全部連接到一個平臺進行高效的協作工作,從而能快速的做出更好的決策。 目 錄: ★ 1 什么是3DEXPERIENCE SOLIDWORKS ★ 2 3DEXPERIE…

【華為OD-E卷-開心消消樂 100分(python、java、c++、js、c)】

【華為OD-E卷-開心消消樂 100分(python、java、c、js、c)】 題目 給定一個 N 行 M 列的二維矩陣,矩陣中每個位置的數字取值為 0 或 1。矩陣示例如: 1 1 0 0 0 0 0 1 0 0 1 1 1 1 1 1 現需要將矩陣中所有的 1 進行反轉為 0&#…

[Unity]【圖形渲染】【游戲開發】Shader數學基礎4-更多矢量運算

在計算機圖形學和著色器編程中,矢量運算是核心的數學工具之一。矢量用于描述空間中的位置、方向、速度等各種物理量,并在圖形變換、光照計算、紋理映射等方面起著至關重要的作用。本篇文章將詳細講解矢量和標量之間的乘法與除法、矢量的加法與減法、矢量的模與單位矢量、點積…

【漏洞復現】CVE-2023-37461 Arbitrary File Writing

漏洞信息 NVD - cve-2023-37461 Metersphere is an opensource testing framework. Files uploaded to Metersphere may define a belongType value with a relative path like ../../../../ which may cause metersphere to attempt to overwrite an existing file in the d…

Bcrypt在線密碼加密生成器

具體前往:在線Bcrypt加密工具--使用bcrypt及生成salt的迭代次數強度參數計算生成哈希(摘要)

Django 模板分割及多語言支持案例【需求文檔】-->【實現方案】

Django 模板分割及多語言支持案例 這個案例旨在提供一個清晰的示范,展示如何將復雜的頁面分解為多個可復用的模板組件,使代碼更加模塊化和易于管理。希望這篇案例文章對你有所幫助。 概述 在 Django 項目開發中,使用模板分割和多語言支持能…

wxWidgets使用wxStyledTextCtrl(Scintilla編輯器)的正確姿勢

開發CuteMySQL/CuteSqlite開源客戶端的時候,需要使用Scintilla編輯器,來高亮顯示SQL語句,作為C/C領域最成熟穩定又小巧的開源編輯器,Scintilla提供了強大的功能,wxWidgets對Scintilla進行包裝后的是控件類:…

構建高性能異步任務引擎:FastAPI + Celery + Redis

在現代應用開發中,異步任務處理是一個常見的需求。無論是數據處理、圖像生成,還是復雜的計算任務,異步執行都能顯著提升系統的響應速度和吞吐量。今天,我們將通過一個實際項目,探索如何使用 FastAPI、Celery 和 Redis …

介紹 Html 和 Html 5 的關系與區別

HTML(HyperText Markup Language)是構建網頁的標準標記語言,而 HTML5 是 HTML 的最新版本,包含了一些新的功能、元素、API 和屬性。HTML5 相對于早期版本的 HTML(比如 HTML4)有許多重要的改進和變化。以下是…

【win10+RAGFlow+Ollama】搭建本地大模型助手(教程+源碼)

一、RAGFlow簡介 RAGFlow是一個基于對文檔深入理解的開源RAG(Retrieval-augmented Generation,檢索增強生成)引擎。 主要作用: 讓用戶創建自有知識庫,根據設定的參數對知識庫中的文件進行切塊處理,用戶向大…

qwt 之 QwtPlotPicker

QwtPlotMarker 和 QwtPlotPicker 是 Qwt 庫中用于增強 QwtPlot 功能的兩個重要類。它們分別用于在圖中添加標記和實現交互式的選擇或拖動功能。 QwtPlotPicker 提供了交互式的選擇工具,它允許用戶通過鼠標點擊或拖動來選擇圖表中的數據點或區域。這對于實現縮放、平…

C/C++圣誕樹

系列文章 序號直達鏈接1C/C愛心代碼2C/C跳動的愛心3C/C李峋同款跳動的愛心代碼4C/C滿屏飄字表白代碼5C/C大雪紛飛代碼6C/C煙花代碼7C/C黑客帝國同款字母雨8C/C櫻花樹代碼9C/C奧特曼代碼10C/C精美圣誕樹11C/C俄羅斯方塊12C/C貪吃蛇13C/C孤單又燦爛的神-鬼怪14C/C閃爍的愛心15C…

lua dofile 傳參數

cat 1.lua arg[1] 111 arg[2] 222 dofile(./2.lua) cat 2.lua print("First argument is: " .. arg[1]) print("Second argument is: " .. arg[2]) 執行 lua 1.lua,結果為: First argument is: 111 Second argument is: 222 l…

電商數據流通的未來:API接口的智能化與自動化趨勢

在數字化時代,電子商務行業正在以前所未有的速度發展,而API(應用程序編程接口)接口作為電商領域的重要組成部分,其應用和發展趨勢也日益受到關注。API接口作為電商系統與外部服務或平臺交互的橋梁,對電商數…

投標心態:如何在“標海戰術”中保持清醒的頭腦?

在競爭激烈的市場環境下,“標海戰術”——即大規模參與投標——已經成為許多企業爭取市場份額的重要策略。然而,盲目追求投標數量可能導致資源浪費、團隊疲勞以及戰略目標的模糊化。在這種高強度的競爭模式中,如何保持清醒的頭腦,…

【蒼穹外賣】學習心得體會-隨筆

前言 寫了很久,終于可以完整運行項目了,記錄下這幾天的心得體會回顧一下知識點 第一天、Git 分布式版本控制工具 一、Git概述 定義:是分布式版本控制工具,用于管理軟件開發中的源代碼文件,像Java類、xml文件、html…

windows C#-使用構造函數

實例化類或結構時,將會調用其構造函數。 構造函數與該類或結構具有相同名稱,并且通常初始化新對象的數據成員。 在下面的示例中,通過使用簡單構造函數定義了一個名為 Taxi 的類。 然后使用 new 運算符對該類進行實例化。 在為新對象分配內存…