Мне нужно хранить мой статический IP-адрес в нестандартном месте; скажем EEPROM. Это можно получить с помощью команды оболочки.

Можно ли настроить файл /etc/network/interfaces таким образом, чтобы эта команда оболочки запускалась каждый раз, когда сеть запускается / перезапускается, а конфигурация IP считывается из нестандартного местоположения и используется для настройки интерфейса?

2 ответа2

0

Лучшее решение существует, но это всего лишь вариант того, что уже было предложено странным человеком. Эта ссылка на вики Debian показывает, как вызвать интерфейс без IP-адреса. Эта процедура используется, например, каждый раз, когда необходим bridge с базовым интерфейсом eth0 который вообще не имеет IP-адреса.

В файле /etc/network/interfaces добавьте следующие строки:

    iface eth0 inet manual
      pre-up ip link set $IFACE up
      post-up /path/to/script/which_changes_your_ip.sh
      post-down ip link set $IFACE down
      post-down ip addr flush dev $IFACE

На самом деле, руководство (man interfaces) гласит:

Ручной метод

Этот метод может использоваться для определения интерфейсов, для которых по умолчанию конфигурация не выполняется. Такие интерфейсы могут быть настроены вручную с помощью команд вверх и вниз или скриптов /etc/network/if-*.d.

0

Используйте команду post-up. https://wiki.debian.org/NetworkConfiguration#Bringing_up_an_interface_without_an_IP_address

iface eth0 inet static
        address some_address
        netmask 255.255.192.0
        gateway some_gateway
        post-up /path/to/script/which_changes_your_ip.sh

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .