/etc/network/interfaces への変更は無視され、再起動時に復元されます

/etc/network/interfaces への変更は無視され、再起動時に復元されます

このチュートリアルに従って仮想マシンをセットアップしたいと思いました:http://www.howtoforge.com/virtualization-with-kvm-on-a-debian-lenny-server

インターフェース ファイルを変更する必要があるところまで来ました。変更内容は次のようになります。

auto lo
iface lo inet loopback

auto  eth0
iface eth0 inet static
      address   176.9.XXX.XXX
      netmask   255.255.255.255
      pointopoint   176.9.XXX.XXX
      gateway   176.9.XXX.XXX

そして、次のように変更しました。

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
    address   176.9.XXX.XXX
    netmask   255.255.255.255
    pointopoint   176.9.XXX.XXX
    gateway   176.9.XXX.XXX
    bridge_ports eth0
    bridge_fd 9
    bridge_hello 2
    bridge_maxage 12
    bridge_stp off

その後、/etc/init.d/networking を再起動しましたが、ifconfig の出力は同じままで、サーバーを再起動すると、インターフェース ファイルは以前のようになります。なぜこのようなことが起こるのでしょうか?

ifconfig:

eth0      Link encap:Ethernet  HWaddr 00:18:51:XX:XX:XX
          inet addr:176.9.XXX.XXX  Bcast:176.9.XXX.XXX Mask:255.255.255.255
          inet6 addr: fe80::218:51ff:XXXX:XXXX/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4236 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4569 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:414559 (404.8 KiB)  TX bytes:501379 (489.6 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:3406 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3406 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:319219 (311.7 KiB)  TX bytes:319219 (311.7 KiB)

答え1

本当の答えではありませんが、コメントするには長すぎるいくつかの観察が役立つかもしれません...

まず、bridge-utilsインストールされていますか?その理由はifupdownネットワークの解析/etc/network/interfacesと管理を担当するパッケージは、適切な低レベルツール(iproutedhcp3-clientなど) があるため、ブリッジを設定するという単調な作業を担当するツールが不足していると、ifupdownそれだけではブリッジを設定できません。

第二に、「ネットワークを再起動する」代わりに、およびスクリプトifupdownの形で提供されるインタラクティブなものを活用する必要があります。ブリッジインターフェースが起動できるかどうかをテストするには、次のようにします。ifupifdown

# ifup br0

どうなるか見てみましょう。ご相談ください適切なマニュアルページ


3番目に、使用を中止してください

# /etc/init.d/<foo> <action>

そして、やります

# service <foo> <action>

代わりに (Squeeze 以降で利用可能) を使用します。これにはいくつかの利点があります。

  • どの init システムがインストールされていても動作します。つまり、 、 などでも動作しますupstartsystemdopenrcこれらの各システムはサービスを制御するための独自のツールを提供します。

    したがって、 を使用すると、サービスの管理方法をすぐに再学習する必要がなくなるためservice、後で別の init システムへの移行が容易になります (Jessie はデフォルトでシステムを に移行します)。systemd

  • (現在使用しているもの)ではsysvinit、対象の init スクリプトを呼び出す前に環境を適切にサニタイズします。従来の直接呼び出しアプローチは、スクリプトを呼び出したシェルの状態の影響を受けやすいです。スクリプトは、呼び出す init スクリプトが適切な、、作業ディレクトリなどserviceの環境を認識するようにします。$PATHumask

関連情報