ip a
#等同ip addr show
#常見名稱如 `enpXsY`、`eth0`、`ens33` 等
sudo nano /etc/netplan/50-cloud-init.yaml
檔名範例 | 出現情境 | 備註 |
---|---|---|
50-cloud-init.yaml |
使用 cloud-init 部署的 Server | 常見於 VM、自動化安裝 |
00-installer-config.yaml |
手動安裝或未啟用 cloud-init | 桌面版或裸機安裝常見 |
01-netcfg.yaml |
自訂或手動建立的設定檔 | 可自命名,優先度高 |
99-custom.yaml |
使用者自訂的 override 設定 | 可用於覆蓋預設設定 |
ℹ️ Netplan 會依檔名排序執行設定,數字越小優先度越高。
若有多份設定檔可能會互相覆寫,建議只保留主要檔案或明確規劃優先序。
network:
version: 2 # 設定格式版本,目前僅支援 2
renderer: networkd # 使用 systemd-networkd 作為網路後端(適用 Server/雲端環境)
ethernets:
enp2s0: # 實體網卡名稱,視系統實際網卡名而定
dhcp4: no # 停用 DHCPv4,自行手動設定 IP
addresses:
- 192.168.99.7/24 # 指定靜態 IPv4 位址與子網遮罩(CIDR 表示法)
routes:
- to: default # 設定預設路由(即「通往其他網段的出口」)
via: 192.168.99.1 # 指定閘道 IP,通常為網路中的 router 或 DHCP server
nameservers:
addresses:
- 8.8.8.8 # DNS 伺服器(Google DNS)
- 1.1.1.1 # DNS 伺服器(Cloudflare DNS)
sudo netplan apply
sudo netplan try
ip a # 檢查 IP
ip route # 檢查 default route
ping 8.8.8.8 # 測試外網
ping google.com # 測試 DNS
sudo apt install openssh-server
sudo systemctl enable ssh
sudo systemctl start ssh
功能 | 工具或指令 | 說明 |
---|---|---|
多 IP 設定 | addresses: [...] |
支援多個 IP |
多路由設定 | routes: + metric: |
控制優先順序 |
DNS 搜尋域 | search: [example.com] |
補全主機名 |
YAML 檢查工具 | yamllint /etc/netplan/*.yaml |
檢查語法錯誤 |
📌 可搭配
netplan apply
、netplan try
及ip a
、ip route
等指令進行驗證與除錯。