Назначение фиксированного IP-адреса машине в сети DHCP


11

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

В настоящее время адрес DHCP сервера является чем-то вроде 192.168.1.66.

Должен ли я просто назначить серверу этот IP-адрес как фиксированный и настроить маршрутизатор таким образом, чтобы он исключал этот IP-адрес из тех, которые доступны для DHCP? Или есть какие-то диапазоны IP-адресов, которые традиционно зарезервированы для статических адресов?

Вопрос моего новичка касается не команд, а общих принципов и хороших практик.


Практический пример (Правка 1 из 2)

Спасибо за много хороших ответов, особенно очень подробный от Лиама.

Я мог получить доступ к конфигурации маршрутизатора.

Routers's overview panel:
=========================
Connectivity type is set to DHCP and PPoE.
(...)

Network panel
=============
IPv4 address distribution (DHCP)
--------------------------------
Enable DHCP on LAN : Off
DHCP range starts at IP address : 192.168.1.33
DHCP range ends at IP address : 192.168.1.35
(...)
Nota bene: There is also an IPv6 section.

При загрузке любого компьютера он получает свой IPv4-адрес в DHCP.

IP и MAC-адреса, которые я вижу с помощью ipconfig allкоманды в Windows, совпадают с теми, что указаны в списке подключенных устройств, которые отображает маршрутизатор, чтобы я мог подтвердить, кто есть кто.

Список подключенных устройств примерно такой

Description IP address              MAC address
«Unknown»   192.168.1.xx (static)   01:02:03:04:05:06
«Unknown»   192.168.1.yy (static)   07:08:09:10:11:12

Вещи, которые я не понимаю:

  • Хотя все IP-адреса все получены в DCHP, они отображаются как маршрутизатор, как если бы они были статическими адресами.
  • Настройка маршрутизатора «Включить DHCP в локальной сети» установлена ​​на «Выкл.», Однако IP-адреса получены в DHCP, однако.
  • IP - адрес , приписанный к компьютерам находятся за пределами очень узкого диапазон DHCP от 192.168.1.33до192.68.1.35

На любом компьютере Windows, подключенном в DCHP, ipconfig /allотображается что-то вроде:

IPv4 Address    ........ 192.168.1.xx(prefered)
Default Gateway ........ 192.168.1.1  (= IP of the router)
DHCP server ............ 192.168.1.5

Я что-то упустил, но что?


Практический пример (Правка 2 из 2)

Решение найдено.

Подробнее см. Мой ответ на комментарий Михала внизу этого сообщения.

Я должен признать, что то, как маршрутизатор отображает вещи, хранит некоторую часть тайны. Маршрутизатор, кажется, использует DHCP по умолчанию, но запоминает устройства, которые были к нему подключены (возможно, с использованием их MAC-адреса). Это может быть причиной того, что в нем перечислены IP-адреса как статические, хотя они являются динамическими. Был также маршрутизатор Cisco, на 192.168.1.4котором появился какой-то сервис бизнес-коммуникаций, но у меня не было полномочий для доступа к нему.


Нет стандартного диапазона резервирования DHCP, но это было бы неплохо.
LawrenceC

Некоторые маршрутизаторы позволяют вам определять IP для выбранного mac-адреса. Используйте это, и DHCP сохранит этот адрес для вашего сервера. Вы также можете установить диапазон DHCP, например, 192.168.0.128 - 192.168.0.254 в сети 192.168.0.1/255.255.255.0 и установить все статические адреса на «статических» серверах в диапазоне 192.168.0.2 - 192.168.0.127.
Михал Б.

@Michal B .: Я согласен и сделал это между тем .: 1. Получите MAC-адрес сервера. 2. Посмотрите, какие IP-адреса назначает маршрутизатор компьютерам (например, 192.168.0.50для 192.168.1.70). 3. Запустите сервер по DHCP. На панели маршрутизатора назовите его, основываясь на его MAC-адресе, чтобы маршрутизатор запомнил его. 4. На сервере переключите IP-адрес из режима DHCP в ручной и назначьте IP-адрес, превышающий тот, который маршрутизатор назначил бы другим устройствам (например, 192.168.1.100). Вы можете использовать nmtui , а затем отредактировать конфигурационный файл , где вы можете заменить PREFIX=32на NETMASK=255.255.255.0. 6. Перезапустите сетевой сервис.
OuzoPower

Ответы:


15

Определите IP-адрес, назначенный вашему серверу, затем перейдите на DHCP и установите резервирование DHCP для этого сервера.


1
Оговорки по сути самодокументированы. ++
mfinni

5
@mfinni ++работает только для программистов. --для вашего комментария: P
канадский Лука

... и да, он также должен использовать фиксированный IP и пометить его. Документируйте это. Может быть, даже зарезервировать диапазон для этого. На предприятии, использующем внутреннюю VPN, для этих IP-адресов характерно жесткое кодирование в файлах HOSTS и файлах конфигурации SSH, поэтому, когда они внезапно меняются, становится большой проблемой.
mckenzm

10

Службы DHCP отличаются во многих возможных реализациях, и не существует диапазонов IP, которые традиционно зарезервированы для статических адресов; это зависит от того, что настроено в вашей среде. Я предполагаю, что мы рассматриваем типичную домашнюю / SOHO настройку, поскольку вы упоминаете, что ваш маршрутизатор предоставляет службу DHCP.

Должен ли я просто назначить серверу этот IP-адрес как фиксированный и настроить маршрутизатор таким образом, чтобы он исключал этот IP-адрес из тех, которые доступны для DHCP?

Я бы сказал, что это не лучшая практика. Многие потребительские маршрутизаторы не будут иметь возможности исключить один адрес из диапазона адресов DHCP для аренды (известный как «пул»). Кроме того, поскольку DHCP не знает, что вы «зафиксировали» IP-адрес на сервере, вы рискуете получить конфликт. Вы обычно либо:

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

Чтобы расширить эти параметры:

Резервирование в DHCP

Если ваш маршрутизатор разрешает резервирование, то первая опция резервирования DHCP эффективно достигает того, что вы запланировали. Обратите внимание на существенную разницу: назначение адресов по-прежнему управляется службой DHCP, а не «фиксируется» на сервере. Сервер все еще запрашивает адрес DHCP, он просто получает один и тот же адрес каждый раз.

Статический IP-адрес

Если вы предпочитаете устанавливать статический адрес, вам следует проверить конфигурацию вашего маршрутизатора (по умолчанию), чтобы определить блок адресов, используемых для аренды DHCP. Обычно вы сможете увидеть конфигурацию в качестве первого адреса и последнего адреса или первого адреса и максимального количества клиентов. Как только вы это узнаете, вы можете выбрать статический адрес для вашего сервера.

Примером может быть: маршрутизатор настроен на разрешение максимум 128 клиентов DHCP с первым IP-адресом DHCP 192.168.1.32. Поэтому устройству может быть присвоен любой адрес от 192.168.1.32 до 192.168.1.159 включительно. Ваш маршрутизатор будет использовать статический адрес вне этого диапазона (обычно это первый или последний адрес .1 или .254), и теперь вы можете выбрать любой другой доступный адрес для вашего сервера.

TL; DR

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


1
Двойной ++ на этом.
июня

1
Спасибо, Лиам, за ваш очень подробный и полезный ответ. После доступа к конфигурации маршрутизатора возникли другие проблемы, которые я добавил в исходное сообщение.
OuzoPower

@OuzoPower Я новичок в этом вопросе, поэтому у меня недостаточно представителей, чтобы комментировать вопрос. Ваше обновление показывает, что ваш маршрутизатор не предоставляет службу DHCP. Параметр отключен на маршрутизаторе, и ваш ipconfigвывод Windows показывает, что служба DHCP предоставляется с устройства по адресу 192.168.1.5 . У вас есть Pi-Hole или другое подобное устройство, обеспечивающее DHCP? Вот где вы найдете свою конфигурацию DHCP. Примечание: это также объясняет, почему маршрутизатор показывает адреса как статические и почему назначенные DHCP-адреса находятся за пределами диапазона, настроенного на маршрутизаторе.
Лиам

@Liam: Насколько я знаю, нет Pi-Hole или чего-то подобного. Найденное решение: я не мог установить диапазоны DHCP в маршрутизаторе, но мог зарегистрировать MAC-адрес сервера в маршрутизаторе, а затем присвоить серверу фиксированный IP-адрес, который намного превышает диапазон, который маршрутизатор естественным образом назначает существующим устройствам. , Благодаря регистрации MAC-адреса сервера маршрутизатор сохраняет его в памяти и показывает, что сервер отсутствует, когда он выключен. Подробнее см. Мой ответ Михалу Б. в оригинальном сообщении. Это решение, кажется, работает как шарм.
OuzoPower

@OuzoPower Этот подход может работать в краткосрочной перспективе, но как узнать, что выбранный вами адрес находится за пределами диапазона DHCP? Многие системы DHCP выбирают адреса случайным образом из доступного пула. В какой-то момент вам нужно будет узнать, какова ваша конфигурация DHCP, а не оценивать ее (!), Иначе вы столкнетесь с конфликтом. Ваш вопрос задан о наилучшей практике. Здесь лучше всего узнать, какая система обрабатывает DHCP для вашей локальной сети. Я хотел бы начать с 192.168.1.5 или https://192.168.1.5/ для подсказок.
Лиам

1

Это не плохая привычка делить вашу подсеть на диапазон пула DHCP и статические диапазоны, но, конечно, вы можете делать то, что написал JohnA - использовать резервирование для вашего сервера, но первый случай более понятен IMHO, потому что вы не портите свой DHCP-сервер неиспользуемые дополнительные настройки (это может сбить с толку других администраторов, которые не знают, что сервер статичен). если вы используете пул DHCP + статический пул, просто не забудьте добавить статический сервер в DNS (создайте для него запись A / AAAA).


Я хотел бы добавить, что недостатком резервирования DHCP для серверов является то, что если ваша среда DHCP недостаточно устойчива к сбоям, то сбой DHCP-сервера может вызвать всевозможные проблемы. Внимательно следите за DHCP-сервером и устанавливайте арендные договоры на достаточно длительный срок, чтобы можно было реагировать на проблемы даже после продолжительных выходных
JohnA

1

Я предпочитаю устанавливать сетевые устройства, серверы, принтеры и т. Д., Которым требуется статический IP-адрес, вне диапазона пула DHCP. Например, xx.xx.xx.0 - xx.xx.xx.99 будут выделены для фиксированных назначений IP, а xx.xx.xx.100 - xx.xx.xx.250 будут установлены в качестве пула DHCP.


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

Использование isc-dhcp-serverэтого является обязательным (это то, что делает мой пи, наряду с кэшированием DNS, поддельным доменом для моей локальной сети и некоторым трафиком для некоторых беспроводных устройств). К сожалению, я видел страницы конфигурации маршрутизатора на основе браузера (как заводские, так и запасные), которые либо требуют, чтобы зарезервированный адрес был в динамическом пуле ... или вне его.
июня

1

В дополнение к другим ответам я хочу сосредоточиться на том факте, что конфигурация вашего маршрутизатора не соответствует конфигурации IP-адреса на вашем сервере.

Пожалуйста, посмотрите на вывод ipconfig / all:

IPv4-адрес ........ 192.168.1.xx (предпочтительно)

Шлюз по умолчанию ........ 192.168.1.1 (= IP-адрес маршрутизатора)

DHCP-сервер ............ 192.168.1.5

Клиенты в сети не получают IP-адрес от маршрутизатора, но другой DHCP-сервер в сети (192.168.1.5 вместо 192.168.1.1). Вы должны найти этот сервер и проверить его конфигурацию вместо конфигурации DHCP-сервера маршрутизатора, который, по-видимому, используется только для беспроводной связи.


0

Мой маршрутизатор ( OpenWRT ) допускает аренду статического DHCP.

Статическая аренда используется для назначения фиксированных IP-адресов и символических имен хостов клиентам DHCP.

Таким образом, вы предоставляете MAC-адрес сервера и его желаемый IP-адрес в качестве «статической аренды», и DHCP всегда будет выделять один и тот же IP-адрес. Клиентский компьютер (в данном случае сервер) не требует изменений конфигурации и все еще получает свой IP-адрес (настроенный адрес) с DHCP.


-2

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

Как только вы поймете, что система не может быть легко усовершенствована, вы увидите, что ваши лучшие варианты зависят от того, что вы пытаетесь сделать. Upnp - это обычный способ сделать устройства видимыми. DNS является распространенным способом сделать устройства видимыми. WINS - это обычный способ сделать устройства видимыми. DHCP является распространенным способом сделать устройства видимыми.

Все мои принтеры имеют резервирование: мои принтеры не являются критически важной инфраструктурой, я хочу иметь возможность управлять ими, многие клиенты используют UPNP или mDNS для обнаружения в любом случае.

Мой шлюз и DNS-серверы имеют фиксированный IP-адрес в зарезервированном диапазоне: мой DHCP-сервер предоставляет шлюз и DNS-адреса, а мой DHCP-сервер не способен выполнять динамическое обнаружение или поиск DNS.

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


Это буквально не имеет смысла. Вы утверждаете, что не можете смешивать статические и динамические в / 16?
Гай

Я утверждал, что если вы используете static, вы не гарантируете, что клиенты могут «всегда иметь к нему доступ». Совсем нет. Я только что утверждал, что я смешал статические и динамические в моей установке.
user165568

@Gaius Я утверждал, что если вы используете static, вы не гарантируете, что клиенты могут «всегда иметь к нему доступ». Извините, это не имеет для вас смысла: это одна из основных причин, по которой мир отошел от статики. Я также утверждал, что в моей установке я смешал статические и динамические параметры: см. «Ни одно из моих потоковых устройств не имеет фиксированных или зарезервированных» и «DNS-серверы имеют фиксированный IP-адрес»: DNS-серверы действительно находятся в той же подсети, что и клиентов.
user165568

Извините, но я должен админ, не понимая большую часть вашего ответа. Насколько я знаю, DNS являются серверами доменных имен и полезны, когда вы хотите именовать серверы, например, при назначении доменных имен веб-сайтам. Поскольку мне не нужны доменные имена, DNS кажется мне бесполезным. Доступ к серверу не проблема без DNS. См. Мой ответ Михалу Б. в оригинальном сообщении для решения, которое я нашел.
OuzoPower
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.