Не поднимается сеть после выполнения /etc/init.d/networking restart

Проблема

Что имеется: сервер с двумя сетевыми картами, на котором на каждом интерфейсе прописаны ip адреса следующим образом (содержимое файла /etc/network/interfaces):

  auto lo  iface lo inet loopback    # The primary network interface  allow-hotplug eth0  iface eth0 inet static  	address 134.55.25.13  	netmask 255.255.255.0  	network 134.55.25.0  	broadcast 134.55.25.255  	gateway 134.55.25.1  	# dns-* options are implemented by the resolvconf package, if installed  	dns-nameservers 91.203.168.1    allow-hotplug eth1  iface eth1 inet static  	address 192.168.1.1  	netmask 255.255.255.0  	network 192.168.1.0  	broadcast 192.168.1.255  

После выполонения команды /etc/init.d/network restart (или stop с последующим запуском через команду start) сеть не поднималась вплоть до перезагрузки сервера. Если в этот момент смотреть выдачу ifconfig, то можно увидеть, что у интерфейсов по какой-то причине пропадают назначенные им в файле /etc/network/interfaces адреса.

Решение

Проблема оказалась в том, как заданы параметры сети, а конкретно в allow-hotplug. Для решение проблемы необходимо allow-hotplug заменить на auto.

Причина такого поведения в том, что параметр allow-hotplug обозначает, что настройки будут приняты только тогда, когда устройство будет подключено и обнаружено системой. Естественно перезагрузка сервиса сети никак не связано с отключением устройства, и поэтому настройки к уже обнаруженному устройству обратно не применяются.

Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *