2

У меня есть linux box с настроенным статическим IP-адресом, который кажется нормальным. Статический IP-адрес работает в течение нескольких часов, а затем автоматически устанавливает (что выглядит как) то, что DHCP говорит ему использовать.

Вот мой /etc /network /interfaces

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 10.0.0.101
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255
gateway 10.0.0.254

Есть идеи?

2 ответа2

1

Я получил ту же проблему на сервере Ubuntu, но, думаю, мне удалось ее решить. Когда я перезагружаю сеть, dhclient3 все еще работает. Глядя на него с htop, в его аргументах есть «eth0», поэтому я подозреваю, что он все еще ищет обновления dhcp для eth0. Мне не удалось удалить dhcp-client с помощью apt-get, поэтому я запустил:

sudo kill $(ps -aux | grep dhc | grep eth0 | awk '{print $2}')

ВНИМАНИЕ: этот код может убить другие вещи на вашем сервере! Полегче и замените «eth0» на имя интерфейса, для которого вы установили статический IP! Или убейте dhclient ИЛИ dhclient3 для вашего интерфейса через htop.

0

У меня была такая же проблема. Диклиент-демон безумен. Проверка работоспособности нуждается в работе. Это должно пойти примерно так:

  • Узнайте существующую информацию об аренде (/var/lib/dhcp/*)
  • Проверьте все интерфейсы для настройки DHCP (/etc/network/interfaces)
  • Если интерфейс статически настроен, то очистите информацию об аренде DHCP и игнорируйте интерфейс на время выполнения.
  • Если интерфейс не настроен статически и содержит информацию об аренде, обновите его соответствующим образом.
  • Если интерфейс не настроен статически и не имеет существующей информации об аренде, то обнаружите его соответствующим образом.

ИСТОРИЯ ------------------------------------------------- -------------

Пока проблема продолжалась, я увидел, что /var /log /syslog заполняется следующей строкой:

May  3 06:25:36 xxxxxx dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67

Процесс dhclient работал в фоновом режиме, что подтверждается 'ps aux | grep dhc '

Подтвердив правильную настройку статического IP для eth0 в «/etc/network/interfaces», я перезапустил сетевой сервис. После перезапуска сетевой службы статический IP-адрес поддерживался до тех пор, пока срок аренды не достиг полураспада, после чего dhclient обновил ранее назначенный DHCP-адрес, который был получен при начальной настройке системы. Эта информация хранится в '/var/lib/dhcp/*'.

Такое поведение наблюдалось в трех системах, над которыми я работал последние несколько дней. Системная информация:

# cat /etc/issue.net
Debian GNU/Linux 7
# cat /proc/version
Linux version 3.2.0-4-amd64 (debian-kernel@lists.debian.org) (gcc version 4.6.3 (Debian 4.6.3-14) ) #1 SMP Debian 3.2.68-1+deb7u1
# dhclient -version
Internet Systems Consortium DHCP Client 4.2.2

РАЗРЕШАЮЩАЯ СПОСОБНОСТЬ ------------------------------------------------- ----------

Примечание: выполните от имени пользователя root или добавьте sudo к каждой команде.

# dhclient -r
# dhclient -x
# rm /var/lib/dhcp/* 
# shutdown -r 0

Результат: процесс dhclient не запустился автоматически с системой, ifconfig показывает, что eth0 был правильно настроен со статическим IP, syslog очищен от спама DHCP, и изменение сохраняется после нескольких перезапусков системы.

ПРЕДУПРЕЖДЕНИЕ. Для правильной работы мои системы зависят от статически назначенного IP-адреса. Если вы примените это исправление к ноутбуку, оно, скорее всего, нарушит соединение Wi-Fi.

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