DAY16有提到路由器主要工作在OSI L3網路層
主要是根據 IP Address(IP位址)
來決定 Packet(封包) 下一步要往哪裡送簡單來說:
替IP封包選擇要去網路的路徑
路由表:
可以簡單理解成導航表
負責讓路由器查詢某網段,要去往哪一個路由器
把IP當成一個地址,而Prefix就是區域的部分
例如:
新北市天龍區XX路XX號
新北市天龍區就是前綴
回到IP:
192.168.1.10/24
其中
192.168.1 -> 就是前綴Prefix,你在哪一區(網段)
.10 -> 代表你是那一區的哪一戶(哪一台主機)
/24 代表你的區有多大 (前面24bit是Prefix)
"/"後面的數字最大是32bit
簡單來說就是告訴你前面幾個bit是網段,剩下是主機
最常見為24代表前三段是網段後面一組是主機號
192.168.1.10
8.8.8.8
一組是8bit
10.0.0.0/8
10.10.0.0/16
10.10.10.0/24
通常路由表會採用最詳細最具體的路
一樣以上面的:
10.0.0.0/8
10.10.0.0/16
10.10.10.0/24
假設目的地IP是10.10.10.50
路由表會優先取 10.10.10.0/24(最精確)
這就是最長前綴比對
簡單來講就是找路由表後還是不知道要送去哪
那就都送到預設路由這它的前綴會是最短優先度最低的
通常是:
0.0.0.0/0
人工設定的路由
優點:
缺點:
Router透過路由協定Routing Protocol交換路由資訊
簡單來說就是路由器自己交換資訊,自己學怎麼走
優點:
缺點:
常見協定:
它們的差別在於用在哪個範圍
IGP Interior Gateway Protocol
內部閘道協定
同一個組織內部的路由器之間使用
例如:OSPF
EGP Exterior Gateway Protocol
外部閘道協定
不同組織AS(自治系統)之間要互相交換路由資訊時使用
例如:BGP
Autonomous System,AS
自治系統
由單一管理政策控制的一組大型IP網路與Router
例如:
ISP
學校

Autonomous System Number,ASN
自治系統編號
例如:
AS 100
AS 200
AS 300
網際網路Internet可以想像是由很多的AS接在一起
例如:
AS100 -> AS200 -> AS300 -> 目標網站
有了編號,才能紀錄是從哪個AS來的
以一個BGP Advertisement(BGP路由公告)
舉例:
AS 300擁有 10.10.10.0/24
它會跟鄰居說:
10.10.10.0/24 可以從我這邊到
鄰居再把資訊傳給其他AS
最後整個internet很多地方就會知道
要找10.10.10.x去AS300那邊
BGP是EGP(外部閘道協定)的一種
但它還分成兩類
eBGP (外部BGP)
iBGP (內部BGP)
eBGP是在處理不同的AS之間
例如:
AS100 -> AS200
補充:AS_PATH
BGP路由經過的AS路徑
像上面的舉例AS_PATH會紀錄為:
100 200
避免路由迴圈Routing Loop
就是避免走到重複的路
iBGP則是在同一個AS裡面
把eBGP收到的外部資訊,傳給內部的其他路由器
BGP Hijacking (BGP劫持)
如果有人錯誤或惡意宣布(某個前綴是我的),其他網路可能會接受這項公告
正常AS100: 10.10.10.0/24從我這走
攻擊者跳出來宣布 AS900:10.10.10.0/24是從我這走
這樣網路流量就會被送到攻擊者那邊
可能造成:
- 流量錯誤導向
- 服務中斷
- 流量被攔截
簡單來說就是會讓流量走錯地方
Resource Public Key Infrastructure
資源公鑰基礎建設
DAY13有提到過 PKI 公鑰基礎建設
RPKI是網際網路路由安全版本
RPKI主要是為了解決:
我這邊可以到10.10.10.0/24這句話是真還是假
RPKI會幫BGP路由公告上加上身分驗證
來確定這個網段真偽
用憑證來證明:這個AS真的有權公告這段IP (ROA)
防止別人冒充或劫持路由
ROA
一張寫著某個AS被授權可以公告某個IP網段的授權書
實際上會長:
IP網段 : 10.10.10.0/24
授權的AS :AS 100 (Authorized Origin 授權來源)
最大前綴長度/24
ROV
就是路由器實際去驗證公告合不合法的動作
流程通常是:
路由器收到BGP公告->
執行ROV檢查合不合法(去查ROA看授權書)
比對結果:
有效 -> 接受
無效 -> 丟掉
查無此號 -> 看組織決策
IPAS 115-1 Q5
下列何種防禦機制最有效驗證邊界閘道器協定(BGP)路由的合法性,以降低BGP劫持的風險
B :RPKI資源公鑰基礎建設