<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Homelab on DowBlog</title>
        <link>https://dow1226.github.io/categories/homelab/</link>
        <description>Recent content in Homelab on DowBlog</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-tw</language>
        <copyright>Dow</copyright>
        <lastBuildDate>Sun, 22 Dec 2024 08:06:58 +0000</lastBuildDate><atom:link href="https://dow1226.github.io/categories/homelab/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>VyOS軟路由設定筆記</title>
        <link>https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/</link>
        <pubDate>Sun, 22 Dec 2024 08:06:58 +0000</pubDate>
        
        <guid>https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/</guid>
        <description>&lt;p&gt;&lt;img src=&#34;https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/vyos.jpg&#34;
	width=&#34;500&#34;
	height=&#34;233&#34;
	srcset=&#34;https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/vyos_hue068d295ba2ee246f02bd0f713fdec3f_18318_480x0_resize_q75_box.jpg 480w, https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/vyos_hue068d295ba2ee246f02bd0f713fdec3f_18318_1024x0_resize_q75_box.jpg 1024w&#34;
	loading=&#34;lazy&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;214&#34;
		data-flex-basis=&#34;515px&#34;
	
&gt;&lt;/p&gt;
&lt;h1 id=&#34;前言&#34;&gt;前言
&lt;/h1&gt;&lt;p&gt;會開始本次的折騰主要原因是我的 Homelab 中，擔任主要 Router 的工控主機效能好像很不怎麼樣，想在家裡做 Vlan Routing 呀或是 實踐 DMZ 管控呀之類的，都會有高機率看到它 CPU 突然飆高甚至死機。&lt;br&gt;
在好幾次變磚頭的折騰後，我決定 Let it be.&lt;br&gt;
讓它專注做好 Router 的角色，把內網的 L3 Routing 的工作交給我的 NCU 主機。&lt;/p&gt;
&lt;h2 id=&#34;極度折騰的軟路由選擇&#34;&gt;極度折騰的軟路由選擇
&lt;/h2&gt;&lt;p&gt;最一開始的想法很單純，想說單純把 PVE 上的 VM 網路跟平常使用的網路分開來，做簡單的 Vlan Routing 就好。&lt;br&gt;
原以為可以順便學習一下 PVE 的 SDN 功能，但實踐上沒想像中的簡單，所以還是決定架設一台虛擬的 Router 最為直觀。&lt;br&gt;
選擇 VyOS 也沒啥特別的理由，就只是聽說它是 &lt;code&gt;Cisco Like CLI&lt;/code&gt;，設定邏輯應該比較好掌握。&lt;/p&gt;
&lt;h1 id=&#34;前置作業&#34;&gt;前置作業
&lt;/h1&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://vyos.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;VyOS&lt;/a&gt; 是 Open-Source 的開源系統，但對免費用戶僅提供 Rolling Release 版本(或稱為 &lt;code&gt;nightly build&lt;/code&gt; 也就是每日都會更新的意思非長期穩定版)。&lt;br&gt;
不過使用上好像不會因此而有不穩定的狀態，所以就看個人取向選個最新的版本吧。&lt;/p&gt;
&lt;h2 id=&#34;vm配置&#34;&gt;VM配置
&lt;/h2&gt;&lt;p&gt;每一次看網路教學文都不會看到架一個服務具體來說到底要多少資源 &lt;del&gt;嘖&lt;/del&gt;&lt;br&gt;
但 VyOS 的官網上有說明最低配置需求:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;最小配置需求
&lt;ul&gt;
&lt;li&gt;64-bit CPU&lt;/li&gt;
&lt;li&gt;512 MB of RAM&lt;/li&gt;
&lt;li&gt;2 GB Disk space&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;建議配置需求
&lt;ul&gt;
&lt;li&gt;1024 MiB RAM&lt;/li&gt;
&lt;li&gt;4 GB Storage space&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;資源需求很低，對於 Homelab 來說用最低配置就行了，如果有其他配置要求，可以去官網查看其他建議值。&lt;/p&gt;
&lt;h1 id=&#34;安裝&#34;&gt;安裝
&lt;/h1&gt;&lt;p&gt;使用下載的 ISO 檔開機後，會出現 Boot Menu，並在系統 loading 後出現登入畫面&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/image.png&#34;
	width=&#34;842&#34;
	height=&#34;626&#34;
	srcset=&#34;https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/image_hua81d9af3ca1d39fe3b42a2a145d4ec9a_93209_480x0_resize_box_3.png 480w, https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/image_hua81d9af3ca1d39fe3b42a2a145d4ec9a_93209_1024x0_resize_box_3.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;Boot Menu&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;134&#34;
		data-flex-basis=&#34;322px&#34;
	
&gt;
&lt;img src=&#34;https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/image-1.png&#34;
	width=&#34;1133&#34;
	height=&#34;626&#34;
	srcset=&#34;https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/image-1_hu81229833bfc6e415bbbbaa3e0ba09e5e_202291_480x0_resize_box_3.png 480w, https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/image-1_hu81229833bfc6e415bbbbaa3e0ba09e5e_202291_1024x0_resize_box_3.png 1024w&#34;
	loading=&#34;lazy&#34;
	
		alt=&#34;登入畫面&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;180&#34;
		data-flex-basis=&#34;434px&#34;
	
&gt;&lt;/p&gt;
&lt;p&gt;預設的登入帳號 &lt;code&gt;vyos&lt;/code&gt; 密碼 &lt;code&gt;vyos&lt;/code&gt;&lt;br&gt;
登入後輸入 &lt;code&gt;install image&lt;/code&gt; 開始安裝系統，按照提示輸入對應選項即可完成安裝。安裝完成後，重新啟動即可&lt;br&gt;
&lt;img src=&#34;https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/image-2.png&#34;
	width=&#34;1145&#34;
	height=&#34;632&#34;
	srcset=&#34;https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/image-2_hu86024d78936ae228f45a3065d9e23703_181197_480x0_resize_box_3.png 480w, https://dow1226.github.io/vyos%E8%BB%9F%E8%B7%AF%E7%94%B1%E8%A8%AD%E5%AE%9A%E7%AD%86%E8%A8%98/image-2_hu86024d78936ae228f45a3065d9e23703_181197_1024x0_resize_box_3.png 1024w&#34;
	loading=&#34;lazy&#34;
	
	
		class=&#34;gallery-image&#34; 
		data-flex-grow=&#34;181&#34;
		data-flex-basis=&#34;434px&#34;
	
&gt;&lt;/p&gt;
&lt;h1 id=&#34;配置&#34;&gt;配置
&lt;/h1&gt;&lt;p&gt;VyOS 的配置指令和 Cisco 類似 &lt;del&gt;(嚴格來說是跟 Nexus類似，現在的 Cisco IOS越來越詭異了)&lt;/del&gt; ，一樣是要先進入 &lt;code&gt;configure&lt;/code&gt; 模式，以 &lt;code&gt;set&lt;/code&gt; 和 &lt;code&gt;delete&lt;/code&gt; 來做新增或移除設定。針對於服務或是群組設定則是用 &lt;code&gt;edit&lt;/code&gt; 進入下一層編輯，&lt;code&gt;top&lt;/code&gt; 指令則為回到頂層。&lt;br&gt;
按 &lt;code&gt;TAB&lt;/code&gt; 可以補全指令，按 &lt;code&gt;?&lt;/code&gt; 可以顯示可選的指令有哪些，當設定結束後需要先 &lt;code&gt;commit&lt;/code&gt; 再執行 &lt;code&gt;save&lt;/code&gt; 儲存設定。&lt;/p&gt;
&lt;h2 id=&#34;基本系統設定&#34;&gt;基本系統設定
&lt;/h2&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 設定 hostname&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; system host-name &amp;lt;hostname&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 設定系統時區&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; system time-zone Asia/Taipei
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 建立新的使用者&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; system login user &amp;lt;user&amp;gt; authentication plaintext-password &amp;lt;password&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;ip設定&#34;&gt;IP設定
&lt;/h2&gt;&lt;p&gt;VyOS 的 Interface 命名方式為 &lt;code&gt;eth0&lt;/code&gt; &lt;code&gt;eth1&lt;/code&gt; &lt;code&gt;eth2&lt;/code&gt; &amp;hellip; 以此類推，在 proxmox 的 VM 上會按照硬體選項的順序對應之，但為了避免有誤，建議先查看 &lt;code&gt;ip add&lt;/code&gt; 確定網卡的 MAC 跟預想的是不是一致。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-Bash&#34; data-lang=&#34;Bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 設定 wan 口網路 可為 DHCP 或 靜態IP&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; interface ethernet &amp;lt;wan port&amp;gt; address &amp;lt;dhcp / static ip&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 設定 lan 口網路 這邊設的就是內網連到 VyOS的IP 也就是內網的Gateway &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; interface ethernet &amp;lt;lan port&amp;gt; address &amp;lt;dhcp / static ip&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 設定 default gateway 如果wan口配置 dhcp 則不用設這項&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; protocols static route 0.0.0.0/0 next-hop 192.168.0.1 &lt;span class=&#34;c1&#34;&gt;#中華電信小烏龜預設IP&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;commit &lt;span class=&#34;c1&#34;&gt;#啟用設定&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;save &lt;span class=&#34;c1&#34;&gt;#保存設定&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;一些服務設定&#34;&gt;一些服務設定
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;SSH&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; service ssh port &lt;span class=&#34;m&#34;&gt;22&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# set service ssh acl permit &amp;#39;10.0.0.0/8&amp;#39; # 配置 ssh 的 ACL&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 看自己要不要折騰 還有好多可選配置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;DHCP&lt;/strong&gt;
這邊剛好可以說明一下 &lt;code&gt;edit&lt;/code&gt; 指令的用法&lt;br&gt;
在不用 &lt;code&gt;edit&lt;/code&gt; 時配置 DHCP&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;configure 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; service dhcp-server shared-network-name eth1 authoritative &lt;span class=&#34;c1&#34;&gt;# 設定為主要DHCP SERVER&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; service dhcp-server shared-network-name eth1 subnet 192.168.2.0/24 default-router 192.168.2.1 &lt;span class=&#34;c1&#34;&gt;# 設定 DHCP 配發預設GW &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; service dhcp-server shared-network-name eth1 subnet 192.168.2.0/24 lease &lt;span class=&#34;m&#34;&gt;86400&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 設定DHCP lease time&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; service dhcp-server shared-network-name eth1 subnet 192.168.2.0/24 name-server 8.8.8.8 &lt;span class=&#34;c1&#34;&gt;# 設定 DHCP 配發DNS&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; service dhcp-server shared-network-name eth1 subnet 192.168.2.0/24 range &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; start 192.168.2.2 &lt;span class=&#34;c1&#34;&gt;# DHCP 配發IP範圍 range指的是可配發的IP區段 從0開始&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; service dhcp-server shared-network-name eth1 subnet 192.168.2.0/24 range &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; stop 192.168.2.10 &lt;span class=&#34;c1&#34;&gt;# 區段IP 最後位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;commit 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;save 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;用 &lt;code&gt;edit&lt;/code&gt; 配置&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 進入dhcp設定層級&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;edit service dhcp-server shared-network-name &amp;lt;text&amp;gt; subnet &amp;lt;192.168.2.0/24&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 設定gateway&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; option default-router &amp;lt;192.168.2.1&amp;gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 設定dns&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; option name-server 1.1.1.1
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# dhcp租約時間(秒)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; lease &lt;span class=&#34;m&#34;&gt;86400&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 設定dhcp ip pool&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; range &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; start 192.168.2.2
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; range &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; stop 192.168.2.10
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# subnet id ，不重複即可&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; subnet-id &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;看起來 &lt;code&gt;edit&lt;/code&gt; 的使用情境類似於 &lt;code&gt;物件導向&lt;/code&gt; 的設定，不過選擇哪個就見仁見智了&lt;br&gt;
例如 Cisco ACL 教學時都推薦用 extend 作規則命名，但實務上我有經手過的客戶都還是用 standard ACL 居多，所以不太會動的服務設定就依個人喜好設定吧。&lt;/p&gt;
&lt;h2 id=&#34;nat&#34;&gt;NAT
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;SNAT&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;configure
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nat &lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; rule &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; outbound-interface eth0 &lt;span class=&#34;c1&#34;&gt;# 設定 eth0 為NAT的出口端&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nat &lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; rule &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; address 192.168.2.0/24 &lt;span class=&#34;c1&#34;&gt;# 設定內網網段&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nat &lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; rule &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; translation address masquerade &lt;span class=&#34;c1&#34;&gt;# 將內網網段轉譯成NAT出口端IP&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;commit
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;save
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;DNAT&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;configure
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nat destination rule &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; inbound-interface eth0 &lt;span class=&#34;c1&#34;&gt;# 外網流量進入口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nat destination rule &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; destination address 192.168.1.2 &lt;span class=&#34;c1&#34;&gt;# 從 eth0 接口訪問 192.168.1.2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nat destination rule &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; destination port &lt;span class=&#34;m&#34;&gt;80&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 訪問目的端port 80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nat destination rule &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; protocol tcp &lt;span class=&#34;c1&#34;&gt;# 設定使用的傳輸層協定 TCP&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nat destination rule &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; translation address 192.168.2.2 &lt;span class=&#34;c1&#34;&gt;# 流量映射給192.168.2.2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nat destination rule &lt;span class=&#34;m&#34;&gt;100&lt;/span&gt; translation port &lt;span class=&#34;m&#34;&gt;8080&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 映射port 轉為 192.168.2.2的 8080 port&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;commit 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;save 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h1 id=&#34;總結&#34;&gt;總結
&lt;/h1&gt;&lt;p&gt;VyOS 是一種軟路由的解決方案，還具有許多 Router 及 Firewall 的功能。但在我的情境裡只是當作 L3 Routing的角色，所以相關筆記就先暫時紀錄到這裡吧。&lt;/p&gt;
&lt;h2 id=&#34;參考內容-感謝網路上的各路大神&#34;&gt;參考內容 感謝網路上的各路大神
&lt;/h2&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.zenwen.tw/vyos-quick-setup/#%E5%89%8D%E8%A8%80&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;VyOS快速設定&lt;/a&gt;&lt;br&gt;
&lt;a class=&#34;link&#34; href=&#34;https://yangpin.link/archives/1506.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;【Vyos-开源篇-2】- vyos软路由基本配置&lt;/a&gt;&lt;br&gt;
&lt;a class=&#34;link&#34; href=&#34;https://blog.csdn.net/NOWSHUT/article/details/134781631&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;安装和初始化 VyOS 虚拟机&lt;/a&gt;&lt;br&gt;
&lt;a class=&#34;link&#34; href=&#34;https://ithelp.ithome.com.tw/articles/10267666&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Day 4 - 部署 Home Lab 網路 - 安裝路由器&lt;/a&gt;&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
