(dummy
カーネルモジュールから)_dummy0
_ネットワークインターフェイスを構成、開始、および停止するためのクリーンで「モダンな」方法を探しています。
私の_/etc/network/interfaces
_は以前のシステムで機能していましたが、_ifup dummy0
_で静かに失敗します:
_iface dummy0 inet static
address 10.10.0.1
netmask 255.255.255.0
# post-up ip link set dummy0 multicast on
_
_post-up
_行のコメントを外すと、次のエラーが発生します(実行されるが、インターフェイスは作成されないことを示します):dummy0: post-up cmd 'ip link set dummy0 multicast on'failed: returned 1 (Cannot find device "dummy0")
このシェルスクリプトは完全に機能しますですが、すてきなクリーン構成ファイルではありません。
_#!/bin/sh
Sudo ip link add dummy0 type dummy
Sudo ip link set dummy0 multicast on
Sudo ip addr add 10.10.0.1/24 dev dummy0
Sudo ip link set dummy0 up
_
私の意図は手動とsystemdサービスの両方で使用することです:
_[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/sbin/ifup dummy0
ExecStop=/sbin/ifdown dummy0
StandardOutput=syslog+console
_
環境:
質問:
/etc/network/interfaces
_構成に変換するにはどうすればよいですか?インターフェースは以前に「作成」されていませんでした。 ifupdownは、「ダミー」のカーネルモジュールがロードされるとすぐに魔法のように表示されることに依存していました。これは古い互換性動作であり、(AFAIIRC)同じインターフェイス名の明示的な作成にも干渉したため、モジュールパラメータによって無効にされました。ここで、dummy0は、dummy1またはdummyfoobarが作成されるのと同じ方法で作成される必要があります。
「pre-up」コマンドでインターフェースを作成できるはずです:
iface dummy0 inet static
address 10.10.0.1/24
pre-up ip link add dummy0 type dummy
このシステムでNetworkManagerも使用している場合、最近のNMバージョンはダミーインターフェイスをサポートしています。
nmcli con add type dummy ifname dummy0 ipv4.addresses 10.10.0.1/24 [...]
起動時にインターフェースを作成して永久に残す必要がある場合は、systemd-networkd(デバイスを作成するための1つの.netdev構成、IPアドレスをセットアップするための1つの.network構成)を使用して実行できます。ただし、「networkctl」には手動の「up」または「down」サブコマンドはまだありません。