Я изменяю dhcp на static в / etc / network / interfaces (например, ниже).
# The primary network interface
auto eth0
iface eth0 inet static
netmask 255.255.0.0
address 10.10.130.128
gateway 10.10.1.1
Затем перезагрузите интерфейс.
$ sudo ifdown eth0; sudo ifup eth0
...
$ ifconfig
eth0 Link encap:Ethernet
inet addr:10.10.130.128 Bcast:10.10.255.255 Mask:255.255.0.0
Итак, новый адрес in.
Но DHCP все еще существует?
$ ps aux | grep dhc
root ... dhclient3 -e IF_METRIC=100 -pf /var/run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases -1 eth0
Это нормально? Если нет, как перезапустить интерфейс в статическом IP-протоколе, одновременно остановив DHCP?
Большое спасибо.
У меня была такая же проблема (Ubuntu 16.04), но это был экземпляр облака, и я не мог легко справиться с этим интерфейсом.
короткий ответ: я удалил файл /etc/network/interface.d/50-cloud-init.cfg ifup был вызван этот конкретный файл.
Длинный ответ: я настроил интерфейс с помощью /etc/network/interfaces со статическим IP-адресом, но я все еще нашел в daemon.log, что dhclient все еще запрашивал IP-адреса из DHCP и dhclient началось через systemd. В частности systemd называется unit.service unit, который называется ifup, который читает как файл интерфейсов, так и файл 50-cloud-init.cfg. Результатом является некоторые конфликты, но все же функциональная сеть.
Я нашел для меня это из-за того, что NetworkManager от gnome все еще работает и думает, что он отвечает за устройство. Оглядываясь назад, это должно было стать очевидным, поскольку ps показал, что NetworkManager запускает dhclient.
Как только я перезапустил свою систему, устройство перешло в «неуправляемый» в NetworkManager и перестало пытаться его настроить. Возможно, я мог бы добиться того же самого, просто остановив / перезапустив NetworkManager, я не уверен.