iT邦幫忙

2021 iThome 鐵人賽

DAY 3
1
Modern Web

從 0 開始 - 打造 Home Lab 及家用網路系列 第 3

Day 3 - 部署 Home Lab 網路 - 上

https://ithelp.ithome.com.tw/upload/images/20210918/20119484XOMoGyl4jq.png

在 Day 2 時,我們有與大家分享並安裝 Proxmox VE 虛擬化管理平台。

那今天,我們要來部署一下獨立的 Home Lab,在 2020 年的 iTHome 鐵人賽,我有寫一篇介紹 Linux 路由的基本概念,有興趣的可以到 這邊 參考一下。

那我們今天則快速的複習一下靜態路由及路由表。

靜態路由

每台路由器都會有對應的路由表,其中包含了「動態路由」及「靜態路由」

靜態路由,顧名思義就是「非動態的路由」。

我們需要手動指定某一條路由的 Gateway 或 Port,路由器會將發往該路由的封包,往那個 Gateway 或 Port 發送。

以 Linux 為例,靜態路由使用 ip route 的指令來建立。

要將 Linux 作為路由器前...

你需要在 Linux Kernel 中打開封包轉發的功能,否則你無法將其他 VM 的封包轉發到其他網卡上

echo "
net.ipv4.conf.all.forwarding = 1
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.default.forwarding = 1
net.ipv6.conf.all.forwarding = 1
net.ipv6.conf.all.proxy_ndp = 1
net.ipv6.conf.all.accept_ra = 2
" | sudo tee -a /etc/sysctl.conf

sudo sysctl -p

範例 1

假設我們今天想要讓 8.8.8.8/32 這條路由走 10.99.0.1 出去,我們可以使用這個指令來新增

ip route add 8.8.8.8/32 via 10.99.0.1

範例 2

假設今天我們有兩個內網,分別隸屬於不同的路由器。兩台路由器在同一個 LAN 上或有互連

R1 的資訊如下

  • IPv4 Address: 10.0.0.1/24
  • Route: 192.168.0.0/24

R2 的資訊如下

  • IPv4 Address: 10.0.0.2/24
  • Route: 192.168.1.0/24

我們要讓兩個網段 (192.168.0.0/24 與 192.168.1.0/24) 可以彼此互連,我們可以使用此指令來新增。

R1: ip route add 192.168.1.0/24 via 10.0.0.2

R2: ip route add 192.168.0.0/24 via 10.0.0.1

路由追蹤的結果會像這樣

https://ithelp.ithome.com.tw/upload/images/20210918/20119484ATqqKOv28U.png

路由表

講完靜態路由後,我們稍微還提一下路由表的概念吧。

每台裝置都有路由表,無論是 Windows、Linux 或是 macOS,路由表是不可或缺的!

舉例來說,我們常使用的 Windows 系統。

當電腦接上網路,從 DHCP 拿到 IP 後,會有一個預設閘道,我們也可以稱之為「預設路由」。
這條預設路由,可以將系統的所有網路封包(發往 0.0.0.0/0 的封包)往那條 Gateway 送,閘道會再將其送給其他路由器。

https://ithelp.ithome.com.tw/upload/images/20210918/20119484d89NXcOZks.png

而在一般的路由器上,可能還會包括其他動態路由 ex: BGP, OSPF 等。

以下為 Juniper 路由器的截圖,收了整個 IPv4 Full Table,所以共有 86 萬條路由左右。

https://ithelp.ithome.com.tw/upload/images/20210918/20119484CuK1QiUFRS.png


上一篇
Day 2 - Home Lab 事前準備 - 安裝篇
下一篇
Day 4 - 部署 Home Lab 網路 - 安裝路由器
系列文
從 0 開始 - 打造 Home Lab 及家用網路30

尚未有邦友留言

立即登入留言