Как выключить dhcp linux

Как отключить работу DHCP

Други, вроде простой вопрос — как отключить работу DHCP?

Установил CentOS из netinstall в варианте Minimal, и оказалось, что по дефолту сервис DHCP работает.
Но по команде chkconfig он отсутствует! Где же он прячется и как его отключить?

Потому что удалять его как пакет OpenDHCP все-таки не хочется, пусть бы себе был в нерабочем состоянии, чтобы когда понадобится, быстренько включить.

Запущена служба, которая раздаёт ip адреса в сеть с вашего CentOS или автоматически запускаются DHCP клиенты на интерфейсах ?

Ах, да — имеется в виду клиентский DHCP, который получает IP-адрес.

Я думаю вас заинтересуют параметры:

Документация дремучая, там то сих пор Kudzu упоминается 🙂
Но суть не в этом, насколько понял, для отключения DHCP-клиента нужно править /etc/sysconfig/network-scripts/ifcfg-eth0 ?
Пока правда не знаю как именно, но опять-таки суть не в этом — почему по команде chkconfig не вижу DHCP среди других сервисов и соответственно не могу отключить его автозагрузку удобной командой
chkconfig —level 345 dhcpd off

и остановить простой командой вида
service dhcpd stop ?

Ах, да — имеется в виду клиентский DHCP, который получает IP-адрес.

dhcp-клиент это не сервис. Если локальный интерфейс настроен на получение IP по DHCP, то в процессах будет висеть демон dhclient.

почему по команде chkconfig не вижу DHCP среди других сервисов

Потому что у тебя не установлено DHCP-сервера. Покажи вывод pgrep -l dhc

dhcp-клиент это не сервис. Если локальный интерфейс настроен на получение IP по DHCP, то в процессах будет висеть демон dhclient.

Ну это dhcp-клиент это я обозвал условно, не помню его точное название, поскольку в сервисах его не видно.

Хорошо, пусть правильное название клиента dhclient.
И он, как оказалось, действительно висит в памяти —
# pgrep -l dhc
974 dhclient

Так почему же его не видно по команде chkconfig? И откуда он тогда берется :-O

Так почему же его не видно по команде chkconfig?

Мда, вы читать и понимать то что написано когда уже научитесь ?

Ещё раз, dhclient — это клиент к dhcp серверу для получения IP адреса интерфейсом, в случае, если у вас выставлено получение параметров сети динамически. Как конфигурировать сетевой интерфейс указывается в конфигурационном файле /etc/sysconfig/network-scripts/ifcfg- , в частности в параметре BOOTPROTO= сервиса network. Сервис network запускает dhcpclient для каждого интерфейса, для которого указано получать параметры динамически и указано, что его нужно поднимать при старте системы, параметр ONBOOT=

Команда chkconfig управляет сервисами.

Действительно, не понимаю, почему этот dhclient сделали по управлению не такой, как другие сервисы, было удобнее, имхо, ну да ладно, это мои проблемы.
Объясните, пожалуйста, тогда такую вещь: как отключить этот dhclient, чтобы не мешал? Поскольку мне нужно перевести eth0 на статику.

READ  Как сменит расширение файлов на windows 7

Действительно, не понимаю, почему этот dhclient сделали по управлению не такой, как другие сервисы,

Потому что он не сервис и управлять им в отрыве от фреймворка настройки сети нет смысла.

У вас все так гармонично и картинка и ник и вопросы.

Действительно, не понимаю, почему этот dhclient сделали по управлению не такой, как другие сервисы,

Потому, что это не сервис. dhcpclient запускает сервис network, в зависимости от настроек интерфейсов, который вы указали в конфигурационном файле /etc/sysconfig/network-scripts/ifcfg- .

Объясните, пожалуйста, тогда такую вещь: как отключить этот dhclient, чтобы не мешал? Поскольку мне нужно перевести eth0 на статику.

почему этот dhclient сделали по управлению не такой, как другие сервисы

Потому что это не демон, как уже сказали выше. Не всякий процесс, запускающийся в фоновом режиме является демоном.

Чего ж его тогда не сделали демоном? Ну да ладно.
В-общем, решил проблему настройки eth0 следующим образом:

Установил утилиту system-config-network-tui-1.6.0.el6.2-1.el6.noarch, с помощью которого быстро отключил клиента dhcp и настроил адреса eth0.
Хоть утилита потянула за собой 8 пакетов (libnl-1.1-14.el6.i686 iw-0.9.17-4.el6.i686 crda-1.1.1_2010.11.22-1.el6.i686 wireless-tools-29-5.1.1.el6.i686 python-iwlib-0.1-1.2.el6.i686 python-ethtool-0.6-3.el6.i686 pciutils-3.1.10-2.el6.i686 dbus-python-0.83.0-6.1.el6.i686 tui-1.6.0.el6.2-1.el6.noarch), но зато с ней все наглядно, понятно и не требует ковыряться в конфигах.

Уж извините, но мне так оказалось проще.

Чего ж его тогда не сделали демоном? Ну да ладно.

Потому что смысла его делать демоном нет. Это клиент для DHCP сервера запускается для каждого интерфейса, который должен получать параметры работы сети. Как конфигурировать интерфейс указывается в параметрах сервиса network, что бы при его запуске у вас выставлялись статические ip адреса или он запускал для интерфейса dhclient .

Установил утилиту system-c27onfig-network-tui-1.6.0.el [/quote6.2-1.el6.noarch, с помощью которого быстро отключил клиента dhcp и настроил адреса eth0. Хоть утилита потянула за собой 8 пакетов (libnl-1.1-14.el6.i686 iw-0.9.17-4.el6.i686 crda-1.1.1_2010.11.22-1.el6.i686 wireless-tools-29-5.1.1.el6.i686 python-iwlib-0.1-1.2.el6.i686 python-ethtool-0.6-3.el6.i686 pciutils-3.1.10-2.el6.i686 dbus-python-0.83.0-6.1.el6.i686 tui-1.6.0.el6.2-1.el6.noarch), но зато с ней все наглядно, понятно и не требует ковыряться в конфигах.

Ну т.е. открыть в текстовом редакторе файл /etc/sysconfig/network-scripts/ifcfg- , т.е. например

Источник

Включить / отключить запуск службы DHCP с помощью командной строки Linux

Я хотел бы отключить запуск службы DHCP с помощью командной строки Linux, чтобы использовать собственный DHCP-клиент или установить статические IP-адреса.

Я знаю, что, как уже упоминалось в этом посте, установив статический тип интерфейса вместо dhcp в /etc /network /interfaces, DHCP отключается для соответствующего интерфейса.

Но я хотел бы сделать сценарий оболочки, который использует командные строки, чтобы сделать это и наоборот.

2 ответа 2

Предполагая, что вы уже деактивировали NetworkManager для нужных интерфейсов, вы можете использовать команду «ip».

Назначение вручную (скажем, ваш интерфейс — eth0):

Команда ip addr принимает подкоманды replace и change и вы можете использовать label SOMETHING чтобы назвать ваше устройство в удобочитаемой форме. Так что это должно помочь сделать скрипт оболочки таким, как вам нужно.

READ  Драйвера на плееры perfeo

Манипулируя IP-адресом интерфейса, в то время как он настроен на использование dhcp, существует риск того, что ваш статический ip будет регулярно переопределяться.

Затем вам нужно убить dchclient, связанный с вашим интерфейсом (htop и kill). Однако, похоже, что dhclient хранит pid своего экземпляра в каталоге по умолчанию: /var/run/dhclient..pid . Затем вы можете сделать:

и снова включить dhcp:

РЕДАКТИРОВАТЬ

Кажется, что сетевой менеджер контролирует экземпляры dhclient. Затем вы можете предоставить другую конфигурацию менеджеру.

удалите все ссылки на ваш интерфейс в /etc /network /interfaces

добавьте следующую строку в конец /etc /network /interfaces

создайте каталог /etc/network/interfaces.d если он не существует, и следующие два файла:

Источник

How to disable DHCP (static IP)?

If I want to set my Slackware machine to have a static IP assigned from the router, how can I do so?

I assume I have to disable DHCP then edit something to set the requested IP, but I’m not sure where.

(I don’t have a GUI)

2 Answers 2

This heavily depends on whether or not your router supports it.

You do not need to disable DHCP, the DHCP reservations will need to be provided by your router and the router should have to set up a static standing reservation of the MAC address of the network interface to an IP address.

Of course you don’t have to and you can disable DHCP and set up a static IP address altogether on the system by editing /etc/rc.inet1.conf . You can look at the documentation on possible settings here

To disable Disable DHCP on my openSUSE machine I use the following script. The main thing to note is that, unlike «service SERVICENAME stop» command, «systemctl disable SERVICENAME.service» persists after boot (where SERVICENAME is the name of the service you want to disable).

systemctl disable wickedd-dhcp4.service

wickedd-dhcp4 was the name of service handling DHCP client configuration on my system. For disabling IPv6 DHCP as well use the following.

Once you have the DHCP disabled, you can assign static IP by either of the following ways.

  1. Editing «/etc/network/interfaces» file one sample configuration to assign static IP to eth0 interface could be the following.

allow-hotplug eth0 iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1
dns-nameservers 8.8.8.8

ifconfig eth0 192.168.1.100 netmask 255.255.255.0

  1. Using ip command (openSUSE)

ip addr add 192.168.1.100/24 brd + dev eth0

Needless to say that there are hundreds of other commandling utilities available.

Источник

Is there a safe way to disable DHCP from command line?

Short version

I know this question is very similar to others and I did really search the Internet for answers, but it seems that no approach is working or the solutions seem to be «to complicated to be best practice» (I’ll try to explain). I’m looking for a safe way on how to disable DHCP from command line (to use in scripts).

READ  Как сменить значки на рабочем столе windows 10 на свои

Background

I’m trying to create a «Live-Cd» with Ubuntu Server 12.04 and remastersys (works well). The system is, by default, configured to get the IP with DHCP while booting. That’s ok — the important thing is that a script (which runs after booting) is able (in some specific cases) to set a static IP using ifconfig (not /etc/network/interfaces ):

Actually this is also working, but the IP only persists until the DHCP lease time of the previously obtained lease is over. A new IP will be assigned to eth0, which (in short) breaks the system. I thought «no big deal, there will be surely something like: «

But I ended up recognizing, it doesn’t work that easy. Editing the /etc/network/interfaces is a bit tricky, because it is generated by remastersys (actually the 23networking script of casper).

I could rewrite it and restart networking, but what will happen to active dhclient.leases? Will be DHClient still be running in the background (it shouldn’t but some posts suggest it will be my tests showed it is restarted “randomly“, if dhclient is killed), do I have to remove or empty dhclient.leases files, what about resolv.conf?

Despair

To sum it up — In my opinion it’s not really that «straightforward» and somewhat doesn’t «feel stable». This question (156183) suggested to remove the dhclient package, but: Will this solve the problem? Will this break other stuff?

Is there really no command for this? I hope I just overlooked it.

Источник

Archlinux отключить dhcp и настроить статический IP

Добра всем! Ух, и долго я пытался по арчвики сделать это. В итоге нет линка. вручную

Может ты плохо читал вики? Если ты там ничего не понял, то это явно проблема в тебе так как более понятного и подробного описания нет ни у одного дистра.

И какой аналог дебиановского ifconfig-а? Чтоб посмотреть, что на интерфейсах

как отключитьDHCP там не написали. Постоянная конфигурация статического ИП у меня не работает.

Где об этом в арчвики почитать?

У меня по инструкциям оттуда ничего не работает.

Короче добавил свой костыль в автозагрузку, что поделать, жизнь-боль:)

создаешь файл, потом активируешь сервис systemctl enable —now systemd-networkd.service или рестарт, если уже работает.

Для разрешения имен лучше активировать systemd-resolved.service и сделать символическую ссылку на ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf

Мне ещё сильно мешают кракозябры вместо кириллицы.

Дополнительно можно добавить хук в mkinitcpio.conf , что бы загружать шрифт как можно раньше.

Файлы шрифтов здесь: /usr/share/kbd/consolefonts

Ну с кракозябрями сам разобрался, хоть что то на арчвики соответствует действительности. А вот сеть не работает статическая. Не задаются ДНС-ы, не поднимается интерфейс. Короче пока плюну, включу в роутере статическое присвоение.

Источник