Показать полную графическую версию : [решено] Присвоенный DHCP сервером IP и Статический IP на одном интерфейсе одновременно
SergeiUXPMC
29-10-2020, 13:07
Привем привет!
Представьте ситуацию: один сервер, в нем две сетевые карты, подключены обе карты через хаб в одну сеть. НО! Одна сетевая карта получает адрес с DHCP сервера в сети, а другая настроена вручную на статический адрес. Получается что такой сервер одновременно находится в Интернете, получая необходимые сетевые параметры от DHCP, а так же имеет доступ к устройствам (например к IP камерам или управляемым точкам доступа Wi-Fi), которые так же работают в этой же локалке, но в другой адресации, отличающейся от той, что раздает DHCP. Все работает, все счастливы.
А теперь как это же сделать силами одной сетевой карты на этом сервере? Стандартными методами получается что-то одно: либо динамически получать адрес от DHCP, либо статика. Сразу скажу какие решения не подходят:
1) Прописать резервирование на DHCP сервере чтобы определенный адрес был закреплен на за нашим сервером и никому левому не присваивался, а на нашем сервер прописать этот самый адрес в статику - не пойдет. Доступа к настройкам DHCP сервера мы не имеем и иметь не будем.
2) Приписать каким-то хитрым образом дополнительный статический IP к интерфейсу, который в параметрах ОС настроен на DHCP - не пойдет. Читал давно в инете о похожем хитром методе, работающем на XP или Win7, но так же читал что на новых ОС это не работает.
В моих "фантазиях" я вижу решение этой проблемы так:
1) Нахождение на просторах интернета или самостоятельное написание Windows-службы/утилиты, которая получает вместо встроенного в windows dhcp клиента адрес от dhcp сервера в сети, а затем к полученным данным добавляет необходимые нам статические адреса и все это прописывает на сетевой интерфейс как статику через windows API так сказать. Причем эта утилита/служба должна полностью поддерживать клиентскую сторону dhcp стандарта и, например, следить за сроком аренды адреса и по его завершени перезапрашивать адрес и так же менять его в настройках сетевой карты. В общем вести себя абсолютно аналогично стандартному dhcp клиенту Windows, но быть как бы надстройкой или заменой ему с нужным нам функционалом.
2) Нахождение на просторах интернета программы, способной сделать над физическим сетевым интерфейсом Windows некое подобие виртуального ethernet хаба с возможностью добавлять виртуальные сетевые интерфейсы, которые мы уже можем настроить как нам угодно (на автополучение адреса либо на статику). Это можно сравнить с тем, как устроена сеть в программах для виртуализации типа Oracle VM VirtualBox или в гипервизоре от VMWare - vSphere ESX. Там в виртуальную машину мы можем добавить сколько угодно сетевых интерфейсов и настроить их внутри гостевой ОС как угодно. Внутри гипервизора эти виртуальные сетевые карты подключены к виртуальному хабу, который в свою очередь подключен, например, к одной физической сетевой карте со всеми вытекающими.. Вот такой бы механизм перенести в натуральную невиртуальную Windows и проблема была бы решена.
Мой пост - это скорее попытка посоветоваться с сообществом на эту тему, а не найти сразу готовое решение. Но если оно у кого-то из вас есть, товарищи, то прошу подсказать. Я над этой проблемой давно думаю уже...
Сразу уточнение по ОС на нашем сервере - Windows Server 2016 или 2019.
Спасибо заранее за ответы.
Jula0071
29-10-2020, 15:11
А теперь как это же сделать силами одной сетевой карты на этом сервере? »
Зачем?
подключены обе карты через хаб в одну сеть »
где ж вы такой антиквариат раскопали?
Мой пост - это скорее попытка посоветоваться с сообществом на эту тему, а не найти сразу готовое решение. Но если оно у кого-то из вас есть, товарищи, то прошу подсказать. »
вариант нормально настроить сеть - совсем не рассматривается?
2) Нахождение на просторах интернета программы, способной сделать над физическим сетевым интерфейсом Windows некое подобие виртуального ethernet хаба с возможностью добавлять виртуальные сетевые интерфейсы »
в комплекте с windows идёт Hyper-V virtual ethernet switch
Angry Demon
30-10-2020, 08:14
вариант нормально настроить сеть - совсем не рассматривается?
Подписываюсь под каждым словом!
SergeiUXPMC, схему бывшей и будущей сети приведите с указанием адресов. И подробнее распишите конечные цели.
SergeiUXPMC
01-11-2020, 11:56
Значит расписываю для чего мне этого нужно:
Мы приходим на объект со своим сервером, ставим его в существующую сетку, где обычно работает dhcp и Интернет. У нас задача: вывести этот сервер в интернет на общих основаниях как это делают другие компьютеры сети на объекте, а так же получить доступ к устройствам, которые так же работают в этой же физической сети, но статически настроены на другую логическую подсеть (другая адресация, отличающаяся от адресации, которую обеспечивает работающий в этой же сети dhcp).
При это есть условие:
Мы НЕ ХОЗЯЕВА этой сети. Мы не имеем доступа ни к настройкам роутеров, шлюзов, других серверов и служб. Мы не можем "Нормально настроить сеть". Примите это как данное и неизменное условие. Я понимаю, что все тут привыкли помогать методами, которые доступы админам сети. Здесь в этом случае мы не админы, мы никто). Точка.
Да, нет проблем, чтобы настроить на нашем сервере все статически. То есть предварительно подсмотрев что и как раздает местный dhcp серв и просто присвоить сетевой карте нашего серва нужные адреса, прописать нужный шлюз и т.д. Обычно я сейчас так и делаю. Но это не всегда корректно работает, когда в сети много устройств и dhcp раздает почти весь пул своих адресов, выдавая в том числе и занятый нами статично адрес какому-либо устройству. Отсюда начинаются проблемы. А так же бывают ситуации что на объекте местный админ по своему усмотрению в прицнипе может поменять адресацию, или изменить адрес шлюза и т.п. В этом случае так как на нашем сервере прописано все статически, мы теряем с ним связь, надо ехать на объект и опять вручную выводить его в инет.
Именно по этой причине я в голове держу мысль, что не плохо было бы осуществить то, что я описал в своем первом посте. Просто пришел к вам сюда посоветоваться.
в комплекте с windows идёт Hyper-V virtual ethernet switch »
Посмотрел. Это то что могло бы реально помочь осуществить задуманное, но проблема в том, что похоже в vSwitch нет возможности добавить множественные аплинки, то есть в виртуальный свич мы можем подключить только одну физическую сетевую карту сервера, а виртуальные сетевые интерфейсы можно добавлять только в виртуальные машины, а не на хостовую ОС. Если бы можно было добавлять в vSwitch больше одного аплика (как например это возможно в VMware ESX), или добавлять виртуальные сетевые карты с этого
свича в хостовую ОС, то это было бы идеальным решением. Все равно спасибо за подсказку. Посмотрю внимтельно на эту технологию.
Jula0071
01-11-2020, 14:20
То есть предварительно подсмотрев что и как раздает местный dhcp серв и просто присвоить сетевой карте нашего серва нужные адреса, прописать нужный шлюз и т.д. Обычно я сейчас так и делаю. »
То есть, насколько я продрался через вашу "войну и мир", вся проблема заключается в том, что при использовании статических адресов можно назначить интерфейсу второй адрес (алиас), а при использовании dhcp - нет? На самом деле, можно, но пока только через netsh и на новых версиях винды:
C:\WINDOWS\system32>netsh interface ipv4 set interface interface="Ethernet" dhcpstaticipcoexistence=enabled
Ok.
C:\WINDOWS\system32>netsh interface ipv4 add address "Ethernet" 192.168.10.100 255.255.255.0
Проверил на Win 10 20H2, всё работает. Windows Server у меня под рукой нет никаких, проверяйте сами.
но пока только через netsh и на новых версиях винды: »
Вроде как это было доступно уже хрен-те знает когда, и не только через netsh, но и программно (WSH, а потом и PoSH). Или тут ключевое — «при использовании dhcp»?!
SergeiUXPMC
01-11-2020, 16:39
Jula0071, спасибо ОГРОМНОЕ. Вы предложили именно то, что я ищу!
Оказывается фичу с dhcpstaticipcoexistence внедрили вроде как только с Windows 10 Creators Update 1703, поэтому я не особо о ней знал. Парк серверов работает у меня на более старых виндах и поэтому я искал более сложный способ. Естественно что теперь новые сервера буду внедрять уже на современных ОС и эта фича будет полезна. Еще раз спасибо огромное!
"Войну и мир" писал потому что не особо-то я писатель форумных постов. За всю жизнь написал не более десятка сообщений на форумах в принципе. Обычно нахожу инфу в Интернете в готовом виде.
Теперь пара слов как это работает (будет полезно другим, кто решает подобную проблему):
C:\WINDOWS\system32>netsh interface ipv4 set interface interface="Ethernet" dhcpstaticipcoexistence=enabled
Ok.
C:\WINDOWS\system32>netsh interface ipv4 add address "Ethernet" 192.168.10.100 255.255.255.0
После выполнения этих команд, адрес, добавленный через ipv4 add address, остается и не теряется даже после сна, перезагрузки ОС или обновления DHCP. Даже возможно перейти на статичный IP посредством интерфейса в "Свойствах IP версии 4 (TCP/IPv4). На сетевом интерфейсе будет настроено два статичных IP (тот что был задан через ipv4 add address и тот что был добавлен через юзер интерфейс). Все адреса сбросятся только если через юзер интерфейс опять назначить автоматическое получение IP адреса через dhcp.
Проверил это на Windows Server 2019 17763 - работает.
Всем спасибо, проблема решена.
Jula0071
01-11-2020, 16:48
"Войну и мир" писал потому что не особо-то я писатель форумных постов. За всю жизнь написал не более десятка сообщений на форумах в принципе. Обычно нахожу инфу в Интернете в готовом виде. »
Ну вот нужно было просто спросить, возможно ли добавить ip alias к интерфейсу с основным адресом, выдаваемым dhcp, а вы тут "представим, что пьер безухов не женится на наташе ростовой".
Излагайте проблему конкретно, без лирики, реально тяжело такой поток сознания читать и выцеплять из него нужное.
Или тут ключевое — «при использовании dhcp»?! »
Да. Через пош тоже можно вроде, впрочем. Но там синтакс мне не нравится, не привык.
SergeiUXPMC
01-11-2020, 16:53
Ну вот нужно было просто спросить... »
Спасибо, учту :yes:
Jula0071
01-11-2020, 17:57
SergeiUXPMC, самое смешное, я не виндоадмин и тоже не знал про dhcpstaticipcoexistence=enabled. Но как у меня в голове оформился вопрос, так сразу нагуглилось.
Или тут ключевое — «при использовании dhcp»?! »
Да. »
Спасибо, ясно.
Мы НЕ ХОЗЯЕВА этой сети. Мы не имеем доступа ни к настройкам роутеров, шлюзов, других серверов и служб. Мы не можем "Нормально настроить сеть". »
так в сколько-нибудь крупных организациях настраиватели серверов тоже не хозяева сети - нужно просто заранее объявить требования. И всё - проблема решена.
нет проблем, чтобы настроить на нашем сервере все статически. То есть предварительно подсмотрев что и как раздает местный dhcp серв и просто присвоить сетевой карте нашего серва нужные адреса, прописать нужный шлюз и т.д. Обычно я сейчас так и делаю. »
для вас приготовлен отдельный котёл в аду
Посмотрел. Это то что могло бы реально помочь осуществить задуманное, но »
изучить возможности сервера нужно было до того, как вы взялись куда-либо с этими серверами приходить и из запускать/настраивать
похоже в vSwitch нет возможности добавить множественные аплинки »
объединить в мост, мост уже добавьте в vSwitch (из GUI насколько я помню не получится)
а виртуальные сетевые интерфейсы можно добавлять только в виртуальные машины »
Виртуальный интерфейс создаётся на хосте, но только один. Так что мой совет был неудачным. Прошу прощения.
есть ещё vlan'ы
Jula0071
02-11-2020, 14:53
в сколько-нибудь крупных организациях »
тоже деньги считают. И часто не считают нужным вкладываться в нормальную инфраструктуру с резервированием, VLAN'ами и прочим. А также в зп админов. Наверное мало кто из админов может вложиться в курс и экзамены для сертификата CCNA, но это подымет его конкурентность, он уйдёт на нормальную зп в нормальную контору, а на его место кучка эникеев, готовых работать за зп раз в 5 меньше. Или вообще аутсорс.
Абсолютно согласен с вашим желанием чтобы всё везде было по фен-шую best practices, но реальная практика такова, что принимающие решение о расходах некопенгагены в сетях от слова совсем. У них дома туплинк и всё работает, почему на работе должно быть сложнее?
Если правильно понял, тс ставит системы видеонаблюдения со статической привязкой устройств в ту же сеть объектов, где обычно dhcp? В принципе, если уж заказчик даёт доступ к своей инфраструктуре, то вполне можно попросить тамошних админов сконфигурить соответствующие порты программируемых свитчей на отдачу статик ип. Хоть с выдачей его, хоть с принятием выданного локально. Через группы или как угодно. Причём, с отдачей не из пула dhcp, а из другого диапазона, чтоб не пересекаться. И доступно это с лохматых лет...
SergeiUXPMC
04-11-2020, 05:51
bredych,
Запаритесь искать "тамошних админов" на каждом объекте, когда у вас этих объектов over9000 и надо везде по быстрому желательно внедряться в сеть, потому что тебе этих объектов подваливают пачками в день.
Busla,
В моем случае заранее объявлять требования невозможно. Как правило, внедряемся мы в сети школ. Не знаю как в России, а в Казахстане где я работаю в школах либо вообще нет никаких админов, либо эникеи.
Все сделать идеально, настроить сеть, серв и прочее на каждом таком объекте просто нереально из-за сроков работ и просто потому что этих объектов много, поэтому мне и нужно то, с чего я начал эту ветку.
SergeiUXPMC, любой ИТ-аудит сразу ткнёт пальцев в ваше творчество
а дальше по российскому КоАП это как минимум Статья 14.7. Обман потребителей, пункт 2:
Введение потребителей в заблуждение относительно потребительских свойств или качества товара (работы, услуги)
SergeiUXPMC
05-11-2020, 16:46
Busla,
Розовые очки снимите, какой еще IT-аудит?)) Я же не лезу со своими решениями в какой-нибудь ГазПром или другую крупную корпорацию. Я ясно сказал какие у меня объекты.
И, если честно, я что-то вообще не въехал в какой это я части обманом занимаюсь, чтобы меня еще и по Статье привлекать. Я и моя команда никак не скрываем своей деятельности и ничего зазорного не творим в своей работе. Какой обман потребителей? Обман в том, что я блин на один интерфейс вешаю два IP? И что один статически прописан, а другой динамически присваивается. Рассмешили даже как-то Вы меня)
Капец Вы развели срач ни о чем, фигею с вас, Busla. Обычная ветка о том как присвоить одной сетевухе два адреса переросла в привлечение ТСа по Статье) Просто охренеть. Проще надо быть, люди. А не индюков напыщенных из себя строить.
Я получил ответ на свой вопрос. Огромное спасибо Jula0071. Тема закрыта. Админы, прошу закрыть тему.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.