
Мой /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
Как мне изменить /etc/network/interfaces
так, чтобы мой трафик проходил через 10.0.0.1 вместо 10.0.2.2 по умолчанию? Я могу сделать это вручную следующим образом, но я не хочу делать это при каждой перезагрузке:
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