デフォルトのネットワークインターフェースの設定

デフォルトのネットワークインターフェースの設定

私のは/etc/network/interfacesこんな感じです:

auto lo
iface lo inet loopback

auto eth1
iface eth1 inet static
      address 10.0.0.99
      netmask 255.255.255.0
      gateway 10.0.0.1

auto eth0
iface eth0 inet dhcp

マシンを再起動すると、

vagrant@precise64:~$ ip route
default via 10.0.2.2 dev eth0 
default via 10.0.0.1 dev eth1  metric 100 
10.0.0.0/24 dev eth1  proto kernel  scope link  src 10.0.0.99 
10.0.2.0/24 dev eth0  proto kernel  scope link  src 10.0.2.15

トラフィックがデフォルトで 10.0.2.2 ではなく 10.0.0.1 を通過するように変更する/etc/network/interfacesにはどうすればよいでしょうか。次のように手動で実行できますが、再起動のたびにこれを実行したくはありません。

vagrant@precise64:~$ sudo ip route del default via 10.0.2.2 dev eth0
vagrant@precise64:~$ ip route
default via 10.0.0.1 dev eth1  metric 100 
10.0.0.0/24 dev eth1  proto kernel  scope link  src 10.0.0.99 
10.0.2.0/24 dev eth0  proto kernel  scope link  src 10.0.2.15

答え1

理由は とは関係がなかったことが判明しました/etc/network/interfaces。このマシンは浮浪者VM にはデフォルトでいくつかの追加機能が含まれています/etc/rc.local:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Make sure eth0 is working. This works around Vagrant issue #391
dhclient eth0

exit 0

この行をコメントアウトしdhclient eth0て再起動すると、次のようになります。

vagrant@precise64:~$ ip r
default via 10.0.0.1 dev eth1  metric 100 
10.0.0.0/24 dev eth1  proto kernel  scope link  src 10.0.0.99 
10.0.2.0/24 dev eth0  proto kernel  scope link  src 10.0.2.15 

関連情報