web-dev-qa-db-ja.com

回答で失敗するifupインターフェース:ファイルが存在します

構成しようとしている3つの異なるブロックがあります。ブロックのすべてのアドレスを手動で追加すると、通常は正常に機能していました(ip addr add)ですが、(ip route add local)試した後、最初は機能しましたが、最後のブロックを構成しようとすると機能しなくなりました。

サービスを再起動すると失敗し、 "RTNETLINKの回答:ファイルが存在します"と表示され、インターフェイスをifupしようとすると表示されます。今、再起動後も、何も機能しません。再起動後、インターフェイスは正常に機能すると思いますが、ルートを追加しようとすると、ブロックがpingに応答せず、インターフェイスを使用してカールしようとすると機能しません。インターフェースが正常に機能する再起動直後でも、インターフェースをifupしようとすると、エラーが発生します。

私は解決策を試しましたip addr flush enp1s0f0しかし、実行するたびに、sshからロックされます。

やってみましたip addr flush enp1s0f0 && ifup enp1s0f0; echo done && sleep 20 && reboot何か問題が発生した場合に元に戻すことができます。接続が切断されただけなので、ifupは再起動してしまい、エコーが表示されないため、引き続き機能しません。バック。

インターフェースファイル:

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug enp1s0f0

auto enp1s0f0
iface enp1s0f0 inet static
    address 84.x.x.74/29
    gateway 84.x.x.73
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 8.8.8.8

auto enp1s0f0:0
iface enp1s0f0:0 inet static
    address 45.x.x.2/22
    gateway 45.x.x.1

auto enp1s0f0:1
iface enp1s0f0:1 inet static
    address 196.x.x.2/24
    gateway 196.x.x.1

auto enp1s0f0:2
iface enp1s0f0:2 inet static
    address 196.x.x.2/24
    gateway 196.x.x.1

明確にするために、インターフェイス:1と:2は2つの異なるIPブロックです(例:196.12.12.1&196.13.13.1)。

誰かが私を正しい方向に向けてもらえますか?

4
Monstrum

この問題には複数の原因が考えられます。

  • まず、複数のインターフェースで同じIPを使用することはできません

  • /etc/network/interfaces.d/*構成ファイルには、デフォルトルートを決定するため、単一のゲートウェイのみを含めることができます。

  • ip addr flush interface-nameこれはそのような場合に役立ちます。

  • 必要なネットワークインターフェイスのドライバーは、カーネルレベルでモジュールとして使用できるか、直接含まれている必要があります。

  • 適切なネットワークマスクの設定

  • 等.

ゲートウェイ:

設定ファイルに設定されたゲートウェイ/etc/network/interfaces.d/*は「デフォルトゲートウェイ」を意味し、そのゲートウェイを使用するデフォルトルートが生成されます(インターフェースの1つをマシンのトラフィックのデフォルトインターフェースとして機能させます)

設定ファイルに複数のゲートウェイを設定することはできないので。ルーティングテーブルを使用してトラフィックフローを管理し、どのネットワークインターフェイスを通過するかを設定します。たとえば、fwmarkと一連のルールを使用して、必要な構成を実現できます。 (これ 質問 方法を詳しく説明します)

3
intika