那昨天介紹完路由表,我們今天要來部署我們的路由器啦!
那筆者還是推薦大家使用這些系統來當作路由器。
題外話,如果想直接使用 Upstream 的網路也可以不安裝路由器,直接讓 VM 與 Host 的網卡 bridge。
那今天筆者使用的是 VyOS,因為他可以是使用 CLI 來設定。很像 Juniper, Cisco 等系統,其 Routing Daemon 則是使用 FRRouting,若想直接在 Linux 上作為路由器,也是可以的!
install image
來進行安裝vyos
剛安裝完後,我們需要來設定一下網路。否則無法上網,也不能使用 SSH 連接。
set interface ethernet eth0 address dhcp
commit
來儲存設定文件。show interface
來查看現在的所有網路介面set service dhcp-server shared-network-name {custom} subnet {你想要設定的網段} range {name} start {該網段內開始的發放的 IP}
set service dhcp-server shared-network-name {custom} subnet {你想要設定的網段} range {name} stop {該網段內開始的發放的最後一個 IP}
set service dhcp-server shared-network-name {custom} subnet {你想要設定的網段} default-router {該網段內的路由器}
ip a
及 ip r
來查看 IP Address 及路由表。mtr 8.8.8.8
來看看能不能連上網際網路囉!你可能會有點疑惑,為什麼上面這張圖到了路由器後就沒有進一步了呢?
因為我們使用的是私網 IP,路由器可以識別 10.99.0.2 的路由在哪,但路由器的上游 ISP 並不知道要怎麼抵達 10.99.0.2 這個 IP,所以就會丟棄封包了。
那一般來說,我們上網都會將內網 IP 轉換為公網 IP,目的是為了讓封包可以抵達網際網路。
我們在 VyOS 可以直接使用這個指令,來讓內網 IP 轉換為公網 IP。
# 註:eth0 為我的公網 IP 網卡
vyos@vyos# set nat source rule 10 outbound-interface 'eth0'
[edit]
vyos@vyos# set nat source rule 10 translation address 'masquerade'
接著,ISP 就會將回程封包發回來了