![/etc/network/interfaces への変更は無視され、再起動時に復元されます](https://rvso.com/image/1428763/%2Fetc%2Fnetwork%2Finterfaces%20%E3%81%B8%E3%81%AE%E5%A4%89%E6%9B%B4%E3%81%AF%E7%84%A1%E8%A6%96%E3%81%95%E3%82%8C%E3%80%81%E5%86%8D%E8%B5%B7%E5%8B%95%E6%99%82%E3%81%AB%E5%BE%A9%E5%85%83%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99.png)
このチュートリアルに従って仮想マシンをセットアップしたいと思いました: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
と管理を担当するパッケージは、適切な低レベルツール(iproute
、dhcp3-client
など) があるため、ブリッジを設定するという単調な作業を担当するツールが不足していると、ifupdown
それだけではブリッジを設定できません。
第二に、「ネットワークを再起動する」代わりに、およびスクリプトifupdown
の形で提供されるインタラクティブなものを活用する必要があります。ブリッジインターフェースが起動できるかどうかをテストするには、次のようにします。ifup
ifdown
# ifup br0
どうなるか見てみましょう。ご相談ください適切なマニュアルページ。
3番目に、使用を中止してください
# /etc/init.d/<foo> <action>
そして、やります
# service <foo> <action>
代わりに (Squeeze 以降で利用可能) を使用します。これにはいくつかの利点があります。
どの init システムがインストールされていても動作します。つまり、 、 などでも動作します
upstart
がsystemd
、openrc
これらの各システムはサービスを制御するための独自のツールを提供します。したがって、 を使用すると、サービスの管理方法をすぐに再学習する必要がなくなるため
service
、後で別の init システムへの移行が容易になります (Jessie はデフォルトでシステムを に移行します)。systemd
- (現在使用しているもの)では
sysvinit
、対象の init スクリプトを呼び出す前に環境を適切にサニタイズします。従来の直接呼び出しアプローチは、スクリプトを呼び出したシェルの状態の影響を受けやすいです。スクリプトは、呼び出す init スクリプトが適切な、、作業ディレクトリなどservice
の環境を認識するようにします。$PATH
umask