[技術] 路由器中的路由表如何決定路徑步驟?

看板Network作者 (brotherD)時間6年前 (2018/11/13 17:28), 編輯推噓3(3017)
留言20則, 4人參與, 6年前最新討論串1/1
不曉得可不可以來這裡問...不行的話小弟我自D>< 圖: https://imgur.com/a/wAcfTUO 不太清楚目的位址與網路遮罩做AND運算的目的是為了什麼。 目的位址: 封包的目的位址 網路遮罩: 用來劃分更多子網路 這兩個and起來的東西會有意義嗎? 謝謝指教QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.216.18 ※ 文章網址: https://www.ptt.cc/bbs/Network/M.1542101281.A.96E.html

11/13 20:02, 6年前 , 1F
兩筆相同的route都命中,比較精準的會先走
11/13 20:02, 1F

11/13 21:55, 6年前 , 2F
這算是偏實作的說法,以概念來講就是找出符合的記錄
11/13 21:55, 2F

11/13 21:57, 6年前 , 3F
然後依據精確程度決定封包方向
11/13 21:57, 3F

11/13 21:58, 6年前 , 4F
預設路由可以視作是一定會命中,但是最不精確的
11/13 21:58, 4F

11/14 02:02, 6年前 , 5F
這個運算是為了比對目的IP位於路由表哪一筆紀錄中
11/14 02:02, 5F

11/14 02:08, 6年前 , 6F
路由表就是多筆網段(網路ID/前綴長度)與目的IP的對應表
11/14 02:08, 6F

11/14 02:09, 6年前 , 7F
IP與遮罩AND運算以後會得到網路ID,比對就知道目的IP落
11/14 02:09, 7F

11/14 02:09, 6年前 , 8F
在哪一筆(或多筆)路由紀錄內
11/14 02:09, 8F

11/14 14:03, 6年前 , 9F
舉個簡單點的例子,假設你把三個網段串起來做靜態路由
11/14 14:03, 9F

11/14 14:04, 6年前 , 10F
三個網段是192.168.1.0,192.168.2.0,192.168.3.0
11/14 14:04, 10F

11/14 14:04, 6年前 , 11F
你必定會需要設1網段要去2網段/3網段要走哪個Port
11/14 14:04, 11F

11/14 14:06, 6年前 , 12F
然後有一個從1網段來,目的是2網段的封包的時候
11/14 14:06, 12F

11/14 14:07, 6年前 , 13F
就是把192.168.2.X(目的IP)跟255.255.255.0做and運算
11/14 14:07, 13F

11/14 14:08, 6年前 , 14F
得到192.168.2.0,這個網段有被你寫在靜態路由裡
11/14 14:08, 14F

11/14 14:08, 6年前 , 15F
所以路由器就知道要走哪個Port了
11/14 14:08, 15F

11/14 14:13, 6年前 , 16F
囧...我說的實作是指,硬體電路的實作
11/14 14:13, 16F

11/14 14:14, 6年前 , 17F
觀念上是包含,但是邏輯沒有這功能,所以要拐彎
11/14 14:14, 17F

11/14 14:18, 6年前 , 18F
先跟遮罩做AND,推出對應的目的網路範圍
11/14 14:18, 18F

11/14 14:21, 6年前 , 19F
然後再看看跟這一項有沒有完全符合
11/14 14:21, 19F

11/14 14:23, 6年前 , 20F
基本上只用到AND閘跟現有資料,不用計算頭尾什麼的
11/14 14:23, 20F
文章代碼(AID): #1RwfaXbk (Network)
文章代碼(AID): #1RwfaXbk (Network)