Я совершенно новичок в сетевом администрировании, и поэтому нахожу вещи немного сложными. У меня есть машина, 1 интерфейс которой я должен установить для подсети 10.0.20.0/24, другой для 10.1.0.0/24 и третий для 10.128.0.0/24. Мой eth0 уже запущен, и команда ifconfig показывает результат:
eth0 Link encap:Ethernet HWaddr fa:16:3e:31:bc:c9
inet addr:10.0.20.3 Bcast:10.0.20.255 Mask:255.255.255.0
inet6 addr: fe80::f816:3eff:fe31:bcc9/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1454 Metric:1
RX packets:8941 errors:0 dropped:0 overruns:0 frame:0
TX packets:5324 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:5662823 (5.6 MB) TX bytes:616960 (616.9 KB)
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:65536 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:672 (672.0 B) TX bytes:672 (672.0 B)
Глядя на это и в других местах, я настроил мой / etc / network / interfaces следующим образом:
auto eth0
iface eth0 inet static
address 10.0.20.3
netmask 255.255.255.0
auto eth1
iface eth1 inet static
address 10.1.0.1
netmask 255.255.255.0
auto eth2
iface eth2 inet static
address 10.128.0.1
netmask 255.255.255.0
Я ничего не делал с eth0, так как он уже запущен. Я попробовал "sudo ifdown eth1". Я получаю:
ifdown: interface eth1 not configured
Я смотрел на этих форумах, и люди говорят о шлюзе, но я не уверен, для чего устанавливать этот шлюз и для какого интерфейса. Может ли кто-нибудь помочь мне?
При запуске «sudo ifup eth1» я получил результат:
Cannot find device "eth1"
Failed to bring up eth1.
Хорошо, вот что я сделал - вместо использования eth1 и eth2 я заменил их на eth0: 1 и eth0: 2 соответственно, как указано ниже:
auto eth0:1
iface eth0:1 inet static
address 10.1.0.1
netmask 255.255.255.0
auto eth0:2
iface eth0:2 inet static
address 10.128.0.1
netmask 255.255.255.0
Теперь, когда я делаю "sudo ifup eth0: 1" и "sudo ifup eth0: 2", интерфейс запускается правильно. Таким образом, вывод «ifconfig -a»:
eth0 Link encap:Ethernet HWaddr fa:16:3e:31:bc:c9
inet addr:10.0.20.3 Bcast:10.0.20.255 Mask:255.255.255.0
inet6 addr: fe80::f816:3eff:fe31:bcc9/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1454 Metric:1
RX packets:1498 errors:0 dropped:0 overruns:0 frame:0
TX packets:1220 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:149182 (149.1 KB) TX bytes:148374 (148.3 KB)
eth0:1 Link encap:Ethernet HWaddr fa:16:3e:31:bc:c9
inet addr:10.1.0.1 Bcast:10.1.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1454 Metric:1
eth0:2 Link encap:Ethernet HWaddr fa:16:3e:31:bc:c9
inet addr:10.128.0.1 Bcast:10.128.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1454 Metric:1
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:65536 Metric:1
RX packets:16 errors:0 dropped:0 overruns:0 frame:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1184 (1.1 KB) TX bytes:1184 (1.1 KB)
Но я все еще в замешательстве. Я должен сделать то же самое с устройствами eth1 и eth2. Если этих интерфейсов нет, как мне их добавить?
ОК, я наконец понял. Когда я создал свой экземпляр OpenStack, я использовал только один сетевой интерфейс. Таким образом был создан только eth0. Я удалил экземпляр и создал новый, указав дополнительные интерфейсы. eth1 и eth2 были успешно настроены!
ifdown
? Интерфейс уже не работает. Чтобы получить его, вы должны использоватьifup
.Ответы:
Команды
ifup
иifdown
используют временные файлы ниже,/var/lib
чтобы запомнить, какой интерфейс скоро будет, а какой нет. Другие команды (ifconfig
) не знают этого. Таким образом, если вы сконфигурируете свои интерфейсы сifconfig
,ifup
/ifdown
будет думать, что все еще не работает.Примерно в 1998 году это было скоро, и, вероятно, никто не может сказать, почему.
Отредактируйте
/etc/networking/interfaces
(или, возможно, другую зависимую от дистрибутива конфигурацию в/etc
) и , если можете , используйте командыifup
/ifdown
. Эти настройки будут запомнены между перезагрузками. Удачи!источник