

高岡智則
年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)
systemd-networkdとは?
systemd-networkdは Linux のネットワーク設定を自動的に管理するデーモンです。Systemd の一部として動作し、主にサーバーや組み込み機器などで使われます。従来のネットワーク設定ツールよりも軽量で、複雑な GUI を使わずに動作環境を整えることができます。
このガイドでは初心者の方にも分かるように systemd-networkd の基本的な仕組み、作成する設定ファイルの種類、実際の運用手順を丁寧に解説します。まずは結論から言うと、systemd-networkd はネットワークインタフェースをファイルベースで定義して動かす仕組みです。設定ファイルは主に /etc/systemd/network に置き、<span>[Network]セクションで IP アドレス、ゲートウェイ、DNS などを設定します。
仕組みの概要
systemd-networkdはデーモンとしてバックグラウンドで実行され、起動時に自動的にネットワークを構成します。設定はファイルベースで、[Match] や [Network] のようなセクションを使います。対象のインタフェースを指定するには Name や MAC などの条件を Match セクションに書きます。次に [Network] セクションで IP アドレスやルーティング、DNS を設定します。
設定ファイルの例
以下は静的 IP を設定する基本的な例です。実際のファイルは /etc/systemd/network/ に保存します。ファイル名は任意ですが拡張子は .network とします。
| セクション | 内容 |
|---|---|
| [Match] | Name はインタフェース名で指定します |
| [Network] | Address は IP/サブネット、DNS は DNS サーバーのリスト、Gateway がデフォルトゲートウェイを指定します |
実際のファイル例は次のとおりです。ただしここでは説明用に短く示します。実運用ではネットワーク環境に合わせて値を変更してください。
[Match] | Name = enp0s3 [Network] Address=192.168.1.100/24 Gateway=192.168.1.1 DNS=8.8.8.8 8.8.4.4 |
設定を反映させる手順
設定を有効にするには systemd-networkd を再起動するか、起動時に自動で読み込ませます。初回は以下の順序で進めます。
- 設定ファイルを作成/編集する
- systemctl enable --now systemd-networkd を実行して起動を有効化
- systemctl restart systemd-networkd を実行して新しい設定を適用
- networkctl status などで状態を確認する
ネットワーク状況の確認方法
接続状態や設定を確認するための基本コマンドを紹介します。networkctl や resolvectl などのツールを使います。以下は代表例です。
- networkctl status
- networkctl list
- resolvectl status
メリットとデメリット
メリットとしては、軽量で安定性が高く、サーバー用途に適しています。設定はシンプルなテキストファイルで行われ、再現性が高い点が魅力です。一方で デメリット は、デスクトップ向けの機能(VPN の自動接続や複雑な Wi Fi 設定など)は他のツールに比べて不足している場合がある点です。必要に応じて systemd-networkd と組み合わせて systemd-resolved などの DNS 解決機能を使うと、名前解決の挙動を統一できます。
まとめ
本記事では systemd-networkd の基本を解説しました。設定ファイルを作成してサービスを起動するだけで、安定したネットワーク構成を実現できます。特にサーバー環境や自動化を重視する場面では有効な選択肢となります。初心者の方は、まず自分の環境で動作する最小限の設定から試し、徐々に他の機能へと拡張していくとよいでしょう。
systemd-networkdの同意語
- systemd ネットワークデーモン
- systemdに組み込まれたネットワーク設定を担当するデーモン。インターフェースの起動時にネットワーク設定を適用し、他のデーモンと連携して動作します。
- systemd-networkd
- systemdのネットワーク管理デーモンの正式名称。ネットワークインタフェースの設定をファイルで定義し、起動時に適用します。
- systemd のネットワーク管理デーモン
- systemdとして提供されるネットワーク設定の管理を担うデーモンの総称。ネットワークの自動構成をサポートします。
- systemd-networkd サービス
- systemd-networkdをサービスとして実行する構成の呼称。ネットワーク設定の自動適用を担います。
- systemd-networkd ユニット
- systemdのユニット(サービスユニット)として定義されたネットワークデーモンのこと。ユニットファイルで動作が管理されます。
- systemd-networkd(Systemd ネットワークデーモン)
- systemdのネットワークデーモンであるsystemd-networkdの補足表現。正式名称と補足の両方で使われます。
- systemd ネットワーク設定デーモン
- ネットワーク設定を自動化する役割を持つsystemd系デーモン。設定ファイルでネットワークを構成します。
systemd-networkdの対義語・反対語
- 手動設定
- ネットワークの設定を自動化せず、手作業で行う運用。systemd-networkd が提供する自動化機能の対極。
- 静的設定
- IPアドレスやDNSを固定値で割り当て、動的割り当てを使わない構成。動的設定を前提とする systemd-networkd の対義概念。
- 自動化なし
- ネットワーク設定の自動化機能を使わず、手動や他ツールに依存する状態。
- 非自動化ネットワーク管理
- 自動化を前提としないネットワーク運用の総称。systemd-networkd の自動化機能と反対のイメージ。
- NetworkManager
- systemd-networkd とは別の自動化ネットワーク管理デーモン。GUI/ツールで動的設定を行うことが多い点を対比として挙げる。
- ifconfigベースの設定
- 古いツール(ifconfig等)で手動・静的に設定する運用。現代の systemd-networkd の自動化と対立するイメージ。
- DHCP不使用の設定
- DHCPを使わず、全て静的な値で割り当てる設定。動的割り当て前提の自動化と対照。
- systemdなしのネットワーク管理
- systemd を使わずに行うネットワーク管理の方法。systemd-networkd の対比として捉える。
- 静的IP中心の構成
- IPを静的に固定して運用する構成。動的割り当てを前提とする自動設定と対比。
- 手動中心のネットワーク運用
- 日常的な設定・変更をほぼ全て手作業で行う運用思想。
- 従来型のネットワーク設定
- 近代的な自動化ツールを用いず、手動/古い手法で設定する伝統的な方法。
systemd-networkdの共起語
- systemd
- Linux の起動・サービス管理を担うユニットマネージャ。サービスの起動順序や監視などを統括します。
- systemd-networkd
- systemd のネットワーク管理デーモン。ネットワークインターフェースの IP アドレス割り当て・ルーティング・DNS 設定などを担当します。
- networkd
- systemd-networkd の略称として使われることが多い表現。
- netplan
- Netplan は Ubuntu などでネットワーク設定を抽象化し、systemd-networkd か NetworkManager へ適用用の設定へ変換するツールです。
- NetworkManager
- 別のネットワーク管理デーモン。サーバー用途では systemd-networkd の代替や競合として話題になることがあります。
- DHCP
- 動的ホスト構成プロトコル。ネットワーク上の機器に自動的に IP アドレスなどを割り当てる仕組み。
- DHCPv4
- IPv4 用の DHCP 設定。IPv4 アドレスや DNS などを自動取得します。
- DHCPv6
- IPv6 用の DHCP 設定。IPv6 アドレスやプレフィックスの取得を制御します。
- IPv4
- IPv4 アドレスの設定・管理を指す概念。
- IPv6
- IPv6 アドレスの設定・管理を指す概念。
- Address
- 静的 IP アドレスを指定する設定項目。複数指定も可能です。
- Gateway
- デフォルトゲートウェイの設定。通信の出入口となる経路の IP アドレスを指定します。
- Routes
- 静的ルートを追加する設定。特定の宛先へ優先的に経路を振り分けます。
- DNS
- DNS サーバーの設定。名前解決に使う DNS サーバーの IP アドレスを指定します。
- Domains
- DNS の検索ドメインの設定。名前解決時の補助ドメインを指定します。
- DNSSEC
- DNSSEC の有効化/無効化。DNS の署名検証を行う設定です。
- DNSStubListener
- systemd-resolved の DNS スタブリスナーの設定。通常は 127.0.0.53 を使用します。
- MACAddressPolicy
- MAC アドレスの扱い方を指定します(例: preserve/ none など)。
- MACAddress
- 特定の MAC アドレスを強制的に使う設定。インタフェース固有の識別に役立ちます。
- MTU
- 最大転送単位の設定。ネットワークフレームの最大サイズを決定します。
- Match
- 設定を適用する対象インターフェースを絞る条件を定義するセクション。Name や Driver などで絞り込みます。
- NetworkDirectory
- ネットワーク設定ファイルを置くディレクトリ。例: /etc/systemd/network/
- NetworkFile
- .network ファイル。インターフェースの IPv4/IPv6、 DHCP、 DNS などを記述します。
- NetDevFile
- .netdev ファイル。仮想デバイス(VLAN / Bond など)の定義を記述します。
- LinkFile
- .link ファイル。リンク全体の属性( MACAddressPolicy など)を定義します。
systemd-networkdの関連用語
- systemd-networkd
- systemdが提供するネットワーク管理デーモン。/etc/systemd/network/ 配下の .network、.netdev、.link ファイルを用いてインターフェースのネットワーク設定を適用します。
- systemd-networkd.service
- systemdのサービスユニット。systemd-networkd の起動と管理を担当します。
- systemd-networkd-wait-online.service
- ネットワークがオンライン状態になるまで待機するユニット。依存関係の解決や待機が必要なサービスで使われます。
- networkctl
- systemd-networkd の状態を表示・操作するコマンド。デバイスやインターフェースの状態、アドレス、ルート、DNS などを確認できます。
- systemd-resolved
- DNS解決を担うデーモン。networkdと連携して DNS サーバーの解決を行い resolvectl などのツールで確認・設定ができます。
- resolvectl
- systemd-resolved の DNS 情報を表示・設定するコマンド。
- networkd-dispatcher
- ネットワーク状態のイベントを外部スクリプトへ通知する補助ミドルウェア。
- NetDev
- NetDev は .netdev ファイルで定義されるデバイスのタイプ集合。Bridge、Bond、VLAN、MACVLAN などを含みます。
- .network ファイル
- インターフェースごとのネットワーク設定を記述するファイル。Addresses、Routes、DNS、Domains などを指定します。
- .netdev ファイル
- 仮想デバイスやリンクの種類を定義するファイル。Bridge、Bond、VLAN、MACVLAN などを設定します。
- .link ファイル
- Link ユニットの設定を定義するファイル。MACAddress、MTU、WakeOnLAN などのリンク層設定を適用します。
- Bridge
- 複数のネットワークインターフェースを仮想的に1つのブリッジとして接続する netdev タイプ。
- Bond
- 複数の物理インターフェースを束ねて単一の論理リンクとして扱う netdev タイプ。
- VLAN
- 仮想LANを作成する netdev タイプ。802.1Q によるセグメンテーションを実現します。
- MACVLAN
- MAC アドレスを分離した仮想デバイスを作成する netdev タイプ。ホストと独立した MAC を持つことが多いです。
- DHCP
- DHCPv4/IPv6 による自動設定を有効化するディレクティブ(例: DHCP=ipv4、DHCP=ipv6、DHCP=ipv4, ipv6)。
- Addresses
- 静的IPアドレスを設定するディレクティブ。複数のアドレスを指定できます。
- Routes
- 静的ルート設定を行うディレクティブ。宛先・ゲートウェイ・デバイスタイプ等を指定します。
- DNS
- DNSサーバーの指定を行うディレクティブ。複数指定が可能です。
- Domains
- DNS検索ドメインを設定するディレクティブ。Resolv の検索順に影響します。
- Match
- どのインターフェースに設定を適用するかを決める条件。Name、OriginalName、MACAddress などで選択します。
- network-online.target
- ネットワークが“オンライン”である状態を表す systemd のターゲット。オンライン前提のサービス起動制御に使います。
- グローバル設定ファイル
- systemd-networkd の全体動作を設定するグローバル設定ファイル。内容はオプション次第で省略されることがあります。
- 設定ディレクトリ
- /etc/systemd/network に配置される .network、.netdev、.link ファイルの格納場所。
- IPv4/IPv6 対応
- systemd-networkd は IPv4 および IPv6 のアドレス・ルーティング・DNS 設定をサポートします。
- ネットワークのオンライン・オフライン検知
- network-online.target などを利用して、他のサービスの起動タイミングを制御します。



















