Система теряет статический IP-адрес - proUbuntu
9 голосов
/ 21 июня 2014

Одной из моих безголовых систем назначен статический IP-адрес через /etc/network/interfaces в проводном Ethernet. Он подключен к маршрутизатору, который также является сервером DHCP. Через пару дней статический адрес сбрасывается и заменяется адресом DHCP. С чего бы это?

  • Если я сделаю sudo ifdown eth0 && sudo ifup eth0 или sudo service networking restart или перезагрузку, система снова берет свой статический адрес, но потом пару дней позже IP-адрес меняется на динамический.
  • другого нет система в сети с (случайно) тем же статическим адресом.
  • NetworkManager не работает в системе.
  • Я настроил систему так, чтобы она отправляла мне электронные письма сразу после изменения адреса, но время, когда это происходит, кажется совершенно случайным. Срок аренды DHCP составляет 24 часа, но это не похоже на коррелируйте, и в любом случае это не должно иметь значения для статического адреса.
  • Мой / etc / network / interfaces такой:
    auto lo
    iface lo inet loopback
    auto eth0
    iface eth0 inet static
    address 192.168.124.104
    gateway 192.168.124.253
    netmask 255.255.255.0

Это немного загадка.

Что может заставить систему отказаться от своего статического адреса и вместо этого запросить адрес DHCP? Что искать, в каком файле журнала?

Ответы [ 3 ]

8 голосов
/ 17 марта 2015

Недавно я наткнулся на эту проблему, и после некоторого расследования выяснилось, что /etc/dhcp/dhcp.conf необходимо добавить блок (или некомментированный), подобный этому:


alias {   interface "eth0";   
fixed-address 10.1.1.1;   
option subnet-mask 255.0.0.0; }

Надеюсь, это поможет!

С уважением, Глендон Гросс

1 голос
/ 18 марта 2016

Я знаю, что это старый, но я столкнулся с подобной проблемой, с которой я боролся. Я также открыл дело в Canonical, чтобы попросить о помощи.

С тех пор я решил свою проблему и вернулся к этому посту в надежде, что это может оказаться полезным для кого-то, кто может наткнуться на это. Моя проблема, в конце концов, оказалась «wicd-daemon». Я не уверен, как или почему пакет был установлен, но он был основным источником сброса моего статического адреса и вызывал другие проблемы с сетью для меня.

Признаком моей проблемы был запуск dhclient, если бы я отключил сетевой кабель и снова подключил его. По аналогии с проблемой, о которой здесь сообщалось, я бы тогда получил другой IP-адрес. Если я установил свой сетевой адаптер вручную, все было в порядке, но через некоторое время он получал другой IP-адрес (кажется, из-за запуска dhclient в фоновом режиме). Проверьте, работает ли dhclient. Что касается того, почему dhclient даже работает, это еще одна проблема. Ниже я опишу, что разрешил для меня dhclient, и в итоге я проследил несколько путей (avahi, ntpd, ifup, ...). Для моего случая это был wicd-демон.

Проблема первоначально обнаружилась при тестировании, когда я переключал сети, которые требовали от меня физического перемещения сетевого кабеля. Это вызвало проблемы с сетью для меня, чего не должно быть. Также потребовалось некоторое время, чтобы обнаружить проблему, поскольку я не ожидал, что мой статический IP-адрес упадет или изменится.

В конце концов, очистка wicd-daemon и python-wicd позаботилась об этой проблеме. Моя система теперь сохраняет статический IP-адрес, даже если сетевой кабель был отключен. Я также не видел запуска dhclient, так что я думаю, что проблема также разрешилась сама собой. Я также пошел по другим путям, глядя на avahi, который, казалось, играл роль в проблемах, которые у меня были, я также смотрел на ntpd (странно, я знаю, но он обнаруживался в системных журналах одновременно с другими проблемами сделал; NTPD, вероятно, не имел к этому никакого отношения, но создавал подозрительные логи). Я пробежал по нескольким кроличьим норам, пока случайно не наткнулся на процесс wicd, запущенный во время другого тестирования.

Итак, короткая история, проверьте, работает ли dhclient и работает ли в вашей системе сетевой менеджер, такой как wicd. Это может быть причиной проблем со статическим адресом.

1 голос
/ 16 февраля 2015

Хм, странно ... Я не уверен, что это важно, но ради аккуратности я бы поместил параметр netmask непосредственно после "адреса", а не после "шлюза". Вам также следует удалить / деактивировать пакет (isc-) dhcp-client с хоста и остерегаться пакетов ipv6 и resolveconf. Перед этим: способ выяснить, что происходит, состоит в том, чтобы установить правило брандмауэра, которое принимает и регистрирует весь трафик к портам DHCP и обратно (сервер 67 UDP и клиент 68 UDP) или создать протоколирование состояния устройств, 1005 * или понюхать ваш трафик.

Обходное решение (или альтернативное решение) заключается в настройке резервирования DHCP для некоторых ваших хостов или неограниченного времени аренды для их адресов DHCP. Для меня это работает очень хорошо, и преимущество заключается в централизованном управлении. Если ваш DHCP-сервер является вашим модемом / маршрутизатором, вы, вероятно, можете настроить его в веб-интерфейсе (время аренды или резервирование), а на некоторых маршрутизаторах вы даже можете установить флажок «фиксированный адрес». Если вы настроили свой собственный сервер (Ubuntu?), Вам нужно отредактировать файл dhcpd.conf, добавив в него несколько строк:

host Accountant {
  hardware ethernet 00:1F:6A:XX:XX:XX;
  fixed-address 192.168.124.104;
}
...