LINUX.ORG.RU
решено ФорумAdmin

DHCP выдает уже использующийся адрес (который прописан статикой)

 конфликт ip адресов


0

3

Доброго времени суток, уважаемые. есть проблемка над которой долбусь уже около недели, может вы что нить умное подскажете и так поехали:

есть сеть в которой ПРОВАЙДЕРСКИЙ dhcp раздает внешние ip адреса (БЕЗ КАКИХ БЫ ТО НИБЫЛО ПРИВЯЗОК т.е. ), есть комп на котором довольно долго уже ip прописан статикой, теперь появилась необходимость на этот комп поставить линукс вкатал fedora (RFRemix 16), почему именно ее, а не что нить другое это отдельная тема и к данной не имеет особого отношения.поставил начал настраивать и наткнулся на пролему: ip я прописал статически как и на второй системе (к слову там вин7), спустя некоторое время сеть отвалилась. выяснил что падения сети связаны с тем что dhcp не видит прописаного статикой ip и выдает его другой машине (выдало соседней машине потому и увидел), при этом если загрузить вин 7 то все норм, как я уже говорил там так же забита статика. ip не выдается другим компам и все отлично работает.

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

Ты либо пропиваешь статический ip и маску, либо получаешь по dhcp что-то одно другого не дано.

hira_saka
()
Ответ на: комментарий от april

" O_o ???? "

с глазками проблема ? тогда вам не сюда а к окулисту.

что больше смущает что возможно в настройках сетевой карты использовать как статический адрес так и динамический? или что пул внешних ипов ? - бывает особенно если весь пул выдается для одной компании и все ипы зарезервированы на нее.

texnik_vet
() автор топика
Ответ на: комментарий от hira_saka

hira_saka, походу мы на разных языках, ip, маска, шлюзы и даже днс прописаны в ручную. проблема немного не в том.

texnik_vet
() автор топика

есть сеть в которой ПРОВАЙДЕРСКИЙ dhcp раздает внешние ip адреса (БЕЗ КАКИХ БЫ ТО НИБЫЛО ПРИВЯЗОК т.е. ), есть комп на котором довольно долго уже ip прописан статикой

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

теперь появилась необходимость на этот комп поставить линукс вкатал fedora (RFRemix 16), почему именно ее, а не что нить другое это отдельная тема и к данной не имеет особого отношения.поставил начал настраивать и наткнулся на пролему: ip я прописал статически как и на второй системе (к слову там вин7), спустя некоторое время сеть отвалилась. выяснил что падения сети связаны с тем что dhcp не видит прописаного статикой ip и выдает его другой машине (выдало соседней машине потому и увидел), при этом если загрузить вин 7 то все норм, как я уже говорил там так же забита статика. ip не выдается другим компам и все отлично работает.

DHCP-сервер не обладает телепатией и в общем случае не может узнать о наличии статически прописанных адресов. DHCP-сервера *могут* (например ISC DHCPd) перед выдачей IP-адресов отправлять ICMP Echo на адреса, чтобы на всякий случай проверить их незанятость. Но это не обязательно.

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

  • Вариант правильный: отказаться от статического адреса и получать его динамически.
  • Ещё один правильный вариант: получить от провайдера гарантированно свободный IP-адрес; или попросить их прописать у себя на сервере существующий статический IP-адрес как занятый.
  • Вариант костыльный и вообще нехороший: попробовать разрешить линуксу отвечать на ping'и (если сейчас в файрволле это запрещено). Но не факт, что это поможет.
Deleted
()
Ответ на: комментарий от Deleted

И кстати провайдеры за такую самодеятельность могут и договор разорвать. Так как это создаёт проблемы в их сети.

Deleted
()
Ответ на: комментарий от texnik_vet

как научить линух говорить dhcp что адрес уже занят и нечего его трогать. напомню dhcp провайдерский доступа к нему нет


DNS сервер что-ль перезаписывается в resolv.conf?

hira_saka
()
Ответ на: комментарий от Deleted

уже ближе к делу.
mironov_ivan,

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


вообще не обязано ? Вы серьезно ? а почему тогда пока комп под виндой такие проблемы не возникают?

DHCP-сервер не обладает телепатией и в общем случае не может узнать о наличии статически прописанных адресов. DHCP-сервера *могут* (например ISC DHCPd) перед выдачей IP-адресов отправлять ICMP Echo на адреса, чтобы на всякий случай проверить их незанятость. Но это не обязательно.


хм.. ок немного теории:


Обнаружение DHCP

Вначале клиент выполняет широковещательный запрос по всей физической сети с целью обнаружить доступные DHCP-серверы. Он отправляет сообщение типа DHCPDISCOVER, при этом в качестве IP-адреса источника указывается 0.0.0.0 (так как компьютер ещё не имеет собственного IP-адреса), а в качестве адреса назначения — широковещательный адрес 255.255.255.255.

Клиент заполняет несколько полей сообщения начальными значениями:

В поле xid помещается уникальный идентификатор транзакции, который позволяет отличать данный процесс получения IP-адреса от других, протекающих в то же время.
В поле chaddr помещается аппаратный адрес (MAC-адрес) клиента.
В поле опций указывается последний известный клиенту IP-адрес. В данном примере это 192.168.1.100. Это необязательно и может быть проигнорировано сервером.

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

Предложение DHCP
Получив сообщение от клиента, сервер определяет требуемую конфигурацию клиента в соответствии с указанными сетевым администратором настройками. В данном случае DHCP-сервер согласен с запрошенным клиентом адресом 192.168.1.100. Сервер отправляет ему ответ (DHCPOFFER), в котором предлагает конфигурацию. Предлагаемый клиенту IP-адрес указывается в поле yiaddr. Прочие параметры (такие, как адреса маршрутизаторов и DNS-серверов) указываются в виде опций в соответствующем поле.

Это сообщение DHCP-сервер отправляет хосту, пославшему DHCPDISCOVER, на его MAC, при определенных обстоятельствах сообщение может распространяться как широковещательная рассылка. Клиент может получить несколько различных предложений DHCP от разных серверов; из них он должен выбрать то, которое его «устраивает».

Запрос DHCP
Выбрав одну из конфигураций, предложенных DHCP-серверами, клиент отправляет запрос DHCP (DHCPREQUEST). Он рассылается широковещательно; при этом к опциям, указанным клиентом в сообщении DHCPDISCOVER, добавляется специальная опция — идентификатор сервера — указывающая адрес DHCP-сервера, выбранного клиентом (в данном случае — 192.168.1.1).

Подтверждение DHCP
Наконец, сервер подтверждает запрос и направляет это подтверждение (DHCPACK) клиенту. После этого клиент должен настроить свой сетевой интерфейс, используя предоставленные опции.

Отказ DHCP

Если после получения подтверждения (DHCPACK) от сервера клиент обнаруживает, что указанный сервером адрес уже используется в сети, он рассылает широковещательное сообщение отказа DHCP (DHCPDECLINE), после чего процедура получения IP-адреса повторяется.



взято с вики


Вариант правильный: отказаться от статического адреса и получать его динамически.



возможно правильный но в край не подходящий, на этот ип уже зареган домен.да и проще решить проблему чем искать как «правильнее от нее уйти».

Ещё один правильный вариант: получить от провайдера гарантированно свободный IP-адрес; или попросить их прописать у себя на сервере существующий статический IP-адрес как занятый.



не подходящий вариант, провайдер говорит что «у нас проблем нет а ваши решайте сами»

Вариант костыльный и вообще нехороший: попробовать разрешить линуксу отвечать на ping'и (если сейчас в файрволле это запрещено). Но не факт, что это поможет.


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

texnik_vet
() автор топика
Ответ на: комментарий от Deleted

И кстати провайдеры за такую самодеятельность могут и договор разорвать. Так как это создаёт проблемы в их сети.

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

texnik_vet
() автор топика
Ответ на: комментарий от texnik_vet

вообще не обязано ? Вы серьезно ?

Да, серьёзно.

а почему тогда пока комп под виндой такие проблемы не возникают?

Везение? Разница в настройках? Без понятия...

хм.. ок немного теории:
...
взято с вики

Клиенты, у которых IP-адрес прописан статически, *вообще* не обращаются к DHCP-серверу. Смысл копипасты из wiki в данном контексте не понятен.

Ещё раз повторю: DHCP-сервер в общем случае ничего не знает про «статических» клиентов. И знать он про них не обязан.

да и проще решить проблему чем искать как «правильнее от нее уйти».

Я и предлагаю её решить. Не городить заведомо нерабочие костыли на тему «как нам обмануть провайдерский DHCP-сервер», а нормально и капитально решить.

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

Deleted
()
Ответ на: комментарий от texnik_vet

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

Расскажи подробнее как организована эта сеть.

Deleted
()
Ответ на: комментарий от Deleted

Клиенты, у которых IP-адрес прописан статически, *вообще* не обращаются к DHCP-серверу. Смысл копипасты из wiki в данном контексте не понятен.

Отказ DHCP Если после получения подтверждения (DHCPACK) от сервера клиент обнаруживает, что указанный сервером адрес уже используется в сети, он рассылает широковещательное сообщение отказа DHCP (DHCPDECLINE), после чего процедура получения IP-адреса повторяется.

к дхцп обращаются те у кого стоит автоматическое получение адресов

Везение? Разница в настройках? Без понятия...

настройки идентичны. везение - не верю. без понятия - вполне вероятно.

Я и предлагаю её решить. Не городить заведомо нерабочие костыли на тему «как нам обмануть провайдерский DHCP-сервер», а нормально и капитально решить.

его не нужно обманывать! что значит заведомо не рабочие костыли ? нормально и капитально по вашему мнению, бред по моему. в данном случае переговоры с провайдером бессмыслены. еще раз напоминаю вопрос КАК НАСТРОИТЬ ЛИНУХ ЧТО БЫ ПОДОБНЫХ ПРОБЛЕМ НЕБЫЛО. т.е. что и как прописать фаервол дабы искоренить сию проблему. а не «как мне поговорить с провайдером» или «как давайте пофантазируем на вольную тему»

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

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

texnik_vet
() автор топика
Ответ на: комментарий от sin_a

Скорее всего твой провайдер продаёт белые адреса как услугу.

да какая разница ? я не собираюсь обсуждать провайдеров в этой теме.

texnik_vet
() автор топика

MAC адреса на:

  • Win7?
  • Fedora?
  • Соседний компьютер?

спустя некоторое время сеть отвалилась. выяснил что падения сети связаны с тем что dhcp не видит прописаного статикой ip и выдает его другой машине

Кажется он не обязан видеть. Если бы «он» выдал то «следил» за этим ip.

petav ★★★★★
()
Ответ на: комментарий от texnik_vet

Фактически, твой вопрос выглядит так: как мне получить от провайдера услугу, которую я у него не покупал.

Просто подумай над своей задачей с этой точки зрения. Даже чисто технически она начинает выглядеть иначе.

sin_a ★★★★★
()
Ответ на: комментарий от petav

MAC адреса на:

Win7? Fedora? Соседний компьютер?

на федоре и вин7 идентичны соседний комп не помню но отличается.

Кажется он не обязан видеть. Если бы «он» выдал то «следил» за этим ip.

из-за чего может возникать конфликты ипов ? и как от этого избавится?

texnik_vet
() автор топика
Ответ на: комментарий от texnik_vet

Я еще раз пост перечитаю... Но по моему мнению что все что происходит само собой разумеется.

petav ★★★★★
()
Ответ на: комментарий от texnik_vet

Отказ DHCP Если после получения подтверждения (DHCPACK) от сервера клиент обнаруживает, что указанный сервером адрес уже используется в сети, он рассылает широковещательное сообщение отказа DHCP (DHCPDECLINE), после чего процедура получения IP-адреса повторяется.

А если не обнаруживает?

Как ты понять то не можешь, что вся эта защита от конфликтов адресов сделана исключительно на всякий случай? Это как аварийные тормоза в лифтах - если они срабатывают, значит лифтом уже пользоваться нельзя =).

настройки идентичны.

Разные операционные системы в сети ведут себя по-разному. Одинаково они ведут себя только в тех случаях, когда это жёстко закреплено в стандартах.

Кстати о стандартах. Вот есть RFC: http://tools.ietf.org/html/rfc2131. Да, согласно нему, сервер перед выдачей адреса должен проверить его доступность, как и клиент после получения. Но:

  • Между проверкой и выдачей всегда есть race condition.
  • Проверка не обязана давать 100%ный результат, так как это технически невозможно.

его не нужно обманывать! что значит заведомо не рабочие костыли ? нормально и капитально по вашему мнению, бред по моему. в данном случае переговоры с провайдером бессмыслены. еще раз напоминаю вопрос КАК НАСТРОИТЬ ЛИНУХ ЧТО БЫ ПОДОБНЫХ ПРОБЛЕМ НЕБЫЛО. т.е. что и как прописать фаервол дабы искоренить сию проблему. а не «как мне поговорить с провайдером» или «как давайте пофантазируем на вольную тему»

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

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

Наймите сисадмина, который нормально настроит у вас сеть и поможет грамотно составить письмо провайдеру, если это потребуется.

Deleted
()
Ответ на: комментарий от sin_a

Фактически, твой вопрос выглядит так: как мне получить от провайдера услугу, которую я у него не покупал.

Просто подумай над своей задачей с этой точки зрения. Даже чисто технически она начинает выглядеть иначе.

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

texnik_vet
() автор топика
Ответ на: комментарий от Deleted

Наймите сисадмина, который нормально настроит у вас сеть и поможет грамотно составить письмо провайдеру, если это потребуется.

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

texnik_vet
() автор топика
Ответ на: комментарий от texnik_vet

почему вариант что вместо того чтобы уволится и посоветовать нанять гуру вроде вас, самому разобраться с происходящим уже не считается ?

Ты же не хочешь разбираться. Тебе надо дырку заткнуть «шоб работало» 8).

Deleted
()
Ответ на: комментарий от texnik_vet

Вообщем проверь что бы ни чего не мешало DHСP провайдера получить информацию о том что адрес занят уже, может в этом различия и есть? Вон mironov_ivan спецификацию нашел.

petav ★★★★★
()
Ответ на: комментарий от petav

о. вот это уже ближе к делу.

Опиши локальную сеть. И куда провод провайдера воткнут? [/qoute]

есть внутренняя локальная сеть, есть внешняя провайдер раздает на внешней сети 40 ипов (белых) из них 15 уходят начальству («нам пофиг хотим чтобы было так» (с) начальство) остальные отданы мне на все остальное. в данном компе торчит 2 сетевухи провод воткнут в одну из них вторая во внутренюю сеть смотрит. вариант что бы на всех компах прописать статику и забыть по дхцп не совсем подходит т.к. начальство то ноут то комп то телефон пытаются подключить все подряд перенастраивать не совсем хорошо..

Возможно федора на echo запросы не отвечает? [/qoute]

как или где это проверить ?

texnik_vet
() автор топика

Оке так уж и быть раз такой день, отвечу на то что смог таки разобрать из этой каши

DHCP сервер провайдера дает каждый новый внешний ip адресс

Нужно либо купить статический, либо юзать DynDNS или подобные сервисы

DHCP сервер дает провайдера дает не угодный ip адресс в локалке

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

Это долбанное окошко в о конфликтах ip адресов в моей 7-ке максимальной

На самом деле внутри локальной сети можно хоть 6 скажем сделать одинаковых ip адресов, а проверка по MAC адресу. Работе это мешать вряд ли будет. Нужно погуглить как отключить окошко если оно надоедает.

Я блджад хочу статический ip адрес, но у провайдера не хочу или не могу просить или покупать

Можно купить впн в интернетах.

hira_saka
()
Ответ на: комментарий от texnik_vet

Не, судя по тому что ты говорил у тебя все не так, а так (обобщенно):
Есть большой мега хаб, в него воткнута и локальная сеть и сеть провайдера. DHCP провайдера трудится на всю локальную сеть.

petav ★★★★★
()
Ответ на: комментарий от Deleted

Ты же не хочешь разбираться. Тебе надо дырку заткнуть «шоб работало» 8).

еще один бред если бы так в лом было разбиратся вырубил бы фаервол на том бы и успокоился.

texnik_vet
() автор топика
Ответ на: комментарий от petav

Не, судя по тому что ты говорил у тебя все не так, а так (обобщенно): Есть большой мега хаб, в него воткнута и локальная сеть и сеть провайдера. DHCP провайдера трудится на всю локальную сеть.

=) не стал вдаваться в такие подробности.

texnik_vet
() автор топика
Ответ на: комментарий от texnik_vet

Тогда в фаерволе федоры создай разрешающее правило на echo запросы для IP DHCP.

P.S.: Только аккуратней у тебя и так весь офис голой жопой в интернет торчит.

petav ★★★★★
()

ТС упорот. вкусноты тред.

если

dhcp провайдерский доступа к нему нет

то ты получаешь то, что он тебе даёт, либо, используя свои настройки, напрашиваешься на корфликт. какие будут ваrши вопrосы?

anonymous
()
Ответ на: комментарий от anonymous

Да это понятно что решение уровня «Чтоб работало». Это и обсуждать не стоит!

petav ★★★★★
()

Конфликт при такой конфигурации неизбежно будет, сам такое наблюдал, как побороть не знаю, я в подобной ситуации просто подправил диапазон адресов.
Все RFC носят рекомендательный характер, так что жаловаться в ООН, ссылаясь на RFC - бессмысленно.

zolden ★★★★★
()

ТС, проблема не техническая, а исключительно административная. Адреса принадлежат провайдеру (точнее, он их арендует и за них, соответственно отвечает). И назначать он может их клиентам произвольно, как ему вздумается. Если у тебя в договоре с провайдером не прописано, что у тебя статический адрес, то присваивать себе какой-то адрес и прописывать статически ты не имеешь права.

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

Harald ★★★★★
()

разрешить линуху отвечать на ping, не?

mumpster ★★★★★
()

Я понял так, что куплена подсеть белых айпи, и хочется к одному из пк прикрутить статику, но возникают конфликты, так как этот же айпи выдаёт уже адрес.
ИМХО, если действительно куплена подсеть белых айпи, то на шлюзе, который смотрит в сетку провайдера поднять DHCP-сервер, который будет в твою локалку раздавать из диапазона провайдера. На DHCP своём уже прописать резервирование нужных айпи для нужных пк.
Если подсеть не куплена, то купить и сделать как выше описано.

Deleted
()

Почитал тему.

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

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

За кадром

Вы жестоки. Человек не разбирается в вопросе, попросил совета. Часть инф. скрыл конечно, не хорошо )). Но зачем же так. Дай совет или промолчи. Но это мое ИМХО. Обругать легче всего.

petav ★★★★★
()
Ответ на: За кадром от petav

Вы жестоки.

А как иначе, если ТС хочет семь зеленых взаимно-перпендикулярных прямых, причем две красного цвета? При это воинственно отстаивает своё невежество.

baka-kun ★★★★★
()
Ответ на: За кадром от petav

Дай совет или промолчи.

Единственный действенный совет в ситуации, когда ответственное лицо не хочет учиться, не хочет разобраться в проблеме, не слышит советов — заменить его специалистом. На мой взгляд это настолько очевидно, что и обсуждать нечего. Ругать тут уже бесполезно.

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

если ТС хочет семь зеленых взаимно-перпендикулярных прямых, причем две красного цвета?

))), оригинально, запомню.

petav ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.