Отключить dhcp сервер linux

Настройка DHCP-сервера в Linux

Протокол динамической конфигурации узлов (Dynamic Host Configuration Protocol, DHCP) — это сетевой протокол, используемый для автоматического получения узлами IP-адресов и сетевой конфигурации с сервера.

IP-адрес, выделенный DHCP-клиенту DHCP-сервером, находится в «аренде», время аренды может отличаться в зависимости от того, сколько времени клиенту требуется соединение или конфигурация DHCP.

Как работает DHCP?

  • После загрузки подключенный к сети клиент (на котором настроено использование DHCP) отправляет DHCP-серверу пакет DHCPDISCOVER.
  • Получив пакет запроса DHCPDISCOVER, DHCP-сервер отвечает пакетом DHCPOFFER.
  • Клиент принимает пакет DHCPOFFER и отправляет серверу пакет DHCPREQUEST, подтверждая готовность принять сетевую конфигурацию, предоставленную в пакете.
  • Получив от клиента пакет DHCPREQUEST, сервер отправляет пакет DHCPACK, который разрешает клиенту использование выделенного IP-адреса.

В данном руководстве мы рассмотрим настройку DHCP-сервера в Ubuntu/Debian Linux, но большенство настроек будет работать и в других дистрибутивах. Для получения административных привилегий все команды будут выполняться через sudo.

Шаг 1: Установка DHCP-сервера

1. Для установки пакета DCHP-сервера, ранее известного как dhcp3-server, нужно выполнить следующую команду:

2. После завершения установки отредактируйте файл /etc/default/isc-dhcp-server для определения интерфейсов, которые будет использовать DHCPD для обработки DHCP-запросов, при помощи опции INTERFACES.

Например, если вам нужно, чтобы демон DHCPD прослушивал eth0, задайте следующее значение:

Для этого сетевого интерфейса нужно настроить статический IP-адрес.

Шаг 2: Настройка DHCP-сервера

3. Основной файл конфигурации DHCP — /etc/dhcp/dhcpd.conf, в него нужно внести всю информацию, отправляемую клиентам.
В файле конфигурации DHCP есть два типа данных:

  • параметры – указывают, как выполнять задание (например, на какое время выделять адрес), выполнять ли его вообще (например, выделять ли адреса неизвестным клиентам) или какие параметры сетевой конфигурации отправлять DHCP-клиенту.
  • декларации – определяют топологию сети, описывают клиентов и предоставляемые им адреса, или применяют группу параметров к группе деклараций.

4. Для определения настроек DHCP-сервера откроем и отредактируем файл конфигурации:

Установите в начале файла следующие глобальные параметры, они будут действовать для всех указанных ниже деклараций (измените их в соответствии с вашими задачами). Это имя домена domain-name, имена DNS-серверов domain-name-servers, время аренды по умолчанию в секундах default-lease-time (если клиент не запросил его сам), максимальное время аренды в секундах max-lease-time и параметр authoritative, означающий «авторитетность» сервера в сегменте сети. Данный параметр нужен на тот случай, если клиент запросит неправильный IP-адрес — в этом случае сервер ответит ему отказом и предложит получить новый адрес.

Обратите внимание, что перед некоторыми параметрами указано слово option, а перед некоторыми — нет. Это слово задает параметры, которые передаются клиенту в сетевой конфигурации.

5. Теперь нужно указать подсеть, в нашем примере мы будем использовать DHCP в локальной сети 192.168.10.0/24.

Здесь мы использовали следующие параметры:

routers — IP-адрес маршрутизатора по умолчанию
subnet-mask — маска подсети
domain-search — имя домена
domain-name-servers — имена DNS-серверов
range — диапазон IP-адресов, выделяемый клиентам (можно указывать несколько диапазонов, но обязательно указать хотя бы один)

Шаг 3: Настройка статических IP-адресов для машин клиентов

6. Для выделения конкретным клиентам фиксированного (статического) IP-адреса нужно добавить в файл конфигурации секции следующего вида, где явно указаны MAC-адрес и статически выделяемый IP-адрес:

7. Запустим службу DHCP и установим ее автоматический запуск при загрузке:

Читайте также:  Вечный касперский для windows 10

8. Далее нужно создать правило для службы DHCP в брандмауэре (Демон DHCPD прослушивает UDP-порт 67):

Шаг 4: Настройка машин клиентов

9. Теперь можно настроить клиентские компьютеры в сети для автоматического получения IP-адресов от DHCP-сервера.

Отредактируйте файл конфигурации интерфейса Ethernet на клиентской машине (обратите внимание на имя/номер интерфейса):

Укажите следующие опции:

Сохраните и закройте файл, а затем перезапустите сетевые службы или перезагрузите систему:

Если все настроено правильно, клиентская машина должна автоматически получать IP-адреса от DHCP-сервера.

Настройка DHCP-сервера завершена. Более подробную информацию о dhcpd и dhcpd.conf с описанием всех возможных опций можно получить в соответствующих man-страницах:

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

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

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

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

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

2 ответа 2

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

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

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

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

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

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

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

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

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

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

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

Источник

Как отключить работу 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

Читайте также:  Популярность операционных систем linux

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 на статику.

Действительно, не понимаю, почему этот 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- , т.е. например

Источник

ИТ База знаний

Курс по Asterisk

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Читайте также:  Windows wireless drivers download

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Настройка DHCP сервера на CentOS или Ubuntu

Раздаем IP — адреса на Linux

Привет! Сегодня мы хотим рассказать про то, как настроить DHCP-сервер и клиент в Linux CentOS и Linux Ubuntu. Поехали!

Мини — курс по виртуализации

Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена

Установка DHCP-сервера в CentOS и Ubuntu

Пакет DHCP-сервера доступен в официальных репозиториях основных дистрибутивов Linux, его установка довольно проста, просто выполните следующую команду:

После завершения установки настройте интерфейс, на котором вы хотите, чтобы демон DHCP обслуживал запросы, в файле конфигурации /etc/default/isc-dhcp-server или /etc/sysconfig/dhcpd.

Например, если вы хотите, чтобы демон DHCPD прослушивал eth0, установите его с помощью следующей настройки.

Сохраните файл и выйдите.

Настройка DHCP-сервера в CentOS и Ubuntu

Основной файл конфигурации DHCP находится по адресу /etc/dhcp/dhcpd.conf, который должен содержать настройки того, что делать, где делать и все сетевые параметры, предоставляемые клиентам.

Этот файл в основном состоит из списка операторов, сгруппированных в две широкие категории:

  • Глобальные параметры: укажите, выполнять ли задачу, как выполнять задачу или какие параметры конфигурации сети предоставить DHCP-клиенту.
  • Объявления: определить топологию сети, указать состояние клиентов, предложить адреса для клиентов или применить группу параметров к группе объявлений.

Теперь откройте и отредактируйте файл конфигурации для настройки вашего DHCP-сервера.

Начните с определения глобальных параметров, которые являются общими для всех поддерживаемых сетей, в верхней части файла. Они будут применяться ко всем объявлениям:

Затем вам необходимо определить диапазон для внутренней подсети и дополнительные настройки:

  • subnet – сеть, в которой будут работать настройки;
  • option routers – шлюз по-умолчанию;
  • option subnet-mask – маска подсети;
  • range – диапазон IP-адресов;
  • option domain-name-servers – DNS-сервера;
  • option domain-name – суффикс доменного имени;
  • option broadcast-address — адрес сети для широковещательных запросов;
  • default-lease-time, max-lease-time — время и максимальное время в секундах, на которое DHCP-клиент получит адрес;

Обратите внимание, что хосты, которым требуются специальные параметры конфигурации, могут быть перечислены в инструкциях хоста в cправке.

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

Затем разрешите выполнение запросов к демону DHCP в брандмауэре, который прослушивает порт 67/UDP, запустив его.

Настройка клиентов DHCP

Наконец, вам нужно проверить, нормально ли работает сервер DHCP. Войдите на несколько клиентских компьютеров в сети и настройте их на автоматическое получение IP-адресов с сервера.

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

Настройка клиента DHCP на CentOS

В CentOS конфигурационные файлы интерфейса находились в /etc/sysconfig/network-scripts/.

Добавьте следующие параметры:

Сохраните файл и перезапустите сетевой сервис (или перезагрузите систему).

Настройка DHCP-клиента в Ubuntu

В Ubuntu 16.04 вы можете настроить интерфейс в файле конфигурации /etc/network/interfaces.

Добавьте эти строчки:

Сохраните файл и перезапустите сетевой сервис (или перезагрузите систему).

В Ubuntu 18.04 сетевое управление контролируется программой Netplan. Вам нужно отредактировать соответствующий файл, например, в каталоге /etc/netplan/

Затем включите dhcp4 под конкретным интерфейсом, например, под ethernet, ens0, и закомментируйте статические настройки, связанные с IP:

Сохраните изменения и выполните следующую команду, чтобы применить изменения.

Для получения дополнительной информации смотрите справочные страницы dhcpd и dhcpd.conf.

Готово! В этой статье мы рассмотрели, как настроить DHCP-сервер в дистрибутивах CentOS и Ubuntu Linux.

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

Источник

Оцените статью