首頁 > 套件與系統管理 > systemd-networkd

systemd-networkd:網路設定管理守護程式

systemd-networkd 是 systemd 套件的一部分,是一個用於管理 Linux 系統網路裝置設定的守護程式。透過 `.network` 檔案,它可以自動化並管理乙太網路、Wi-Fi、橋接器、VLAN 等各種網路介面的 IP 位址、路由和 DNS 設定。它會在系統啟動時初始化網路,並在執行時期處理網路變更。

概述

systemd-networkd 是 systemd 中用於配置和管理網路介面的核心元件。它基於設定檔工作,有助於以一致且可預測的方式管理複雜的網路環境。

主要特點

  • 宣告式設定:透過 `.network` 檔案定義網路配置
  • 支援多種介面:乙太網路、Wi-Fi、橋接器、綁定、VLAN 等
  • 內建 DHCP 用戶端/伺服器功能
  • 支援靜態 IP 位址和路由設定
  • 與 systemd 服務緊密整合

主要選項

systemd-networkd 主要透過 systemctl 作為服務進行管理,但直接執行時也有一些可用的選項。

一般選項

生成的命令:

請試著組合命令。

這個 Django 應用程序是一個技術指南文檔,旨在為用戶輕鬆解釋 Linux 的各種命令。

`systemd-networkd` 執行命令。

請將上述選項組合在一起,與 AI 一同虛擬執行命令。

使用範例

systemd-networkd 主要透過 systemctl 命令作為服務進行管理。以下是一些常見的使用範例。

啟用並啟動 systemd-networkd 服務

sudo systemctl enable systemd-networkd.service
sudo systemctl start systemd-networkd.service

設定為在系統啟動時自動啟動,並立即啟動服務。

檢查 systemd-networkd 服務狀態

sudo systemctl status systemd-networkd.service

檢查 systemd-networkd 服務的目前狀態。

變更網路設定後重新載入

sudo systemctl reload systemd-networkd.service

在變更 `.network` 檔案後,重新載入設定,而無需重新啟動服務。

使用 networkctl 檢查網路狀態

networkctl status

networkctl 是用於顯示 systemd-networkd 管理的網路介面狀態的工具。

驗證設定檔

sudo systemd-networkd --test

在套用新的 `.network` 檔案之前,檢查語法錯誤等。

提示與注意事項

有效使用 systemd-networkd 的提示和注意事項。

設定檔路徑

systemd-networkd 會從以下路徑讀取 `.network` 檔案。數字較小的目錄中的檔案具有較高的優先權。

  • /etc/systemd/network/: 使用者自訂設定 (最高優先權)
  • /run/systemd/network/: 執行時期產生的設定 (例如:DHCP 用戶端)
  • /usr/lib/systemd/network/: 發行版預設設定 (最低優先權)

與其他網路管理員的衝突

同時啟用 systemd-networkd 與 NetworkManager 或 netplan 等其他網路管理員可能會導致衝突。通常建議系統上只啟用一個網路管理員。

  • 禁止與 NetworkManager 同時使用
  • 必要時停用其他網路管理員 (例如:`sudo systemctl disable NetworkManager.service`)

除錯與日誌檢查

發生問題時,使用 `journalctl` 檢查 systemd-networkd 的日誌非常重要。

  • 使用 `journalctl -u systemd-networkd.service` 檢查服務日誌
  • 使用 `journalctl -u systemd-networkd.service -f` 檢查即時日誌
  • 為了獲得詳細日誌,請使用 `--debug` 選項或在 `/etc/systemd/systemd-networkd.conf` 中設定 `LogLevel=debug`


相同類別命令