名前を知らなくてもネットワークカードを構成する

名前を知らなくてもネットワークカードを構成する

私は、取り外し可能なUSBスティックから起動する(そしてルートファイルシステムを持つ)家庭用ヘッドレスサーバーを持っています。私はこれをラップトップからインストールします(この素晴らしいチェックリスト) を開き、必要に応じて構成ファイルを編集します。理想的には、USB スティックをラップトップに接続したままシステムを完全に構成し、サーバーに接続すると、ネットワークが確立され、SSH デーモンが実行されるマルチユーザー レベルで直接起動できるようにしたいと思います。私が望むネットワーク構成は非常にシンプルです。静的に構成したい統合 MOBO NIC が 1 つあります。

私が見つけた主な問題は、NICに割り当てられるインターフェイス名が(確実に)わからないことです。これまでは盲目的にeth0inを使用して/etc/network/interfacesいましたが、前回再インストールしたときに予測可能なネットワークインターフェース名スキームでは、ローカルにログインしてシステムのトラブルシューティングを行うために、モニターとキーボードを持ち運ばなければなりませんでした。

では、今後このような苦痛を避けるにはどうしたらいいのでしょうか?

答え1

最も簡単で実用的な解決策は、従来の動作に戻ることだと思います。

  1. USB スティックのブートローダ設定 (たとえば、grub2 設定) で、net.ifnames=0カーネル コマンド ラインにパラメータを追加します。
  2. 引き続き を使用しeth0ます/etc/network/interfaces

あなたが説明した状況と、物事をシンプルに保つことに重点を置いていることを考えると、これは適切であると思われます。ただし、更新/アップグレードを急ぎすぎると、廃止される可能性があり、将来的に動作しなくなる可能性がifupdownあることに注意してください。/etc/network/interfaces

答え2

現代主義者なら、systemd-networkd通常の静的設定方法の代わりに を使用するように切り替えることができます。 を参照してくださいman systemd.network。基本的な考え方は、次の/etc/network/interfacesように削除して作成することです。/etc/systemd/network/static.network

[Network]
Address=1.2.3.4/26
Gateway=1.2.3.3

これも忘れないでくださいsystemctl enable systemd-networkd

答え3

予測可能なネットワークインターフェース命名スキームは、まさにこの、インターフェースが異なる時間に異なる名前を取得するという問題を解決するために作成されました。つまり、この変更により、問題はなくなるはずです(systemd のインターフェース命名の次の変更まで)。

関連情報