URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 8751
[ Назад ]

Исходное сообщение
"Вывод свободных IP адресов"

Отправлено Shaylin87 , 25-Май-10 17:32 
Всем привет!!!

Подскажите, пожалуйста, какой командой (командами) можно вывести список всех свободных IP адресов той же подсети, в которой находится сервер, на котором выполняется эта команда?

Нужно IP реально свободные, т.е. не те которые не пингуются, а те, которые 100% заняты!!! Такое вообще возможно? Искал по нету, ничего не нашел на русском :-( а с английским уменя не очень хорошо :-(


Содержание

Сообщения в этом обсуждении
"Вывод свободных IP адресов"
Отправлено Square , 25-Май-10 18:18 
>Всем привет!!!
>
>Подскажите, пожалуйста, какой командой (командами) можно вывести список всех свободных IP адресов
>той же подсети, в которой находится сервер, на котором выполняется эта
>команда?
>
>Нужно IP реально свободные, т.е. не те которые не пингуются, а те,
>которые 100% заняты!!! Такое вообще возможно? Искал по нету, ничего не
>нашел на русском :-( а с английским уменя не очень хорошо
>:-(

Не предусмотрено технологией.


"Вывод свободных IP адресов"
Отправлено Alex_o , 25-Май-10 19:39 
>[оверквотинг удален]
>>Подскажите, пожалуйста, какой командой (командами) можно вывести список всех свободных IP адресов
>>той же подсети, в которой находится сервер, на котором выполняется эта
>>команда?
>>
>>Нужно IP реально свободные, т.е. не те которые не пингуются, а те,
>>которые 100% заняты!!! Такое вообще возможно? Искал по нету, ничего не
>>нашел на русском :-( а с английским уменя не очень хорошо
>>:-(
>
>Не предусмотрено технологией.

Допустим сервер имеет адрес 192.168.0.19 и маску сети 255.255.255.0. Это означает, что броадкастовый адрес в этой сети 192.168.0.255. Для определения занятых адресов делаем пинг на броадкаст-адрес, после этого парсим вывод команды arp -a. Все что не вывела эта команда можно считать условно-свободными адресами. Почему условно? Потому что все устройства в этой сети должны быть настроены для ответа на icmp-броадкасты, и сетевые свичи/бриджи также не должны резать броадкасты.
Кроме этого тухлого способа можно пытаться определять свободные адреса по arp-таблицам dhcp-сервера, wins-сервера, или на худой конец гейтвея в инет из этой сети. Если конечно таковое имеется в этой сети.


"Вывод свободных IP адресов"
Отправлено Square , 26-Май-10 01:29 
>[оверквотинг удален]
>Допустим сервер имеет адрес 192.168.0.19 и маску сети 255.255.255.0. Это означает, что
>броадкастовый адрес в этой сети 192.168.0.255. Для определения занятых адресов делаем
>пинг на броадкаст-адрес, после этого парсим вывод команды arp -a. Все
>что не вывела эта команда можно считать условно-свободными адресами. Почему условно?
>Потому что все устройства в этой сети должны быть настроены для
>ответа на icmp-броадкасты, и сетевые свичи/бриджи также не должны резать броадкасты.
>
>Кроме этого тухлого способа можно пытаться определять свободные адреса по arp-таблицам dhcp-сервера,
>wins-сервера, или на худой конец гейтвея в инет из этой сети.
>Если конечно таковое имеется в этой сети.

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

А вот в ipv6- такой проблемы вобщем-то нет. Технология гарантирует что у вас не будет конфликта адресов.


"Вывод свободных IP адресов"
Отправлено Pahanivo , 26-Май-10 08:06 
>Кроме этого тухлого способа можно ...

это не просто тухлый способ, это стопудовые траблы с конфликтами



"Вывод свободных IP адресов"
Отправлено Xaionaro , 27-Июн-10 07:56 
Кстати говоря, помню была программка arping, иногда помогала, но она тоже не очень то надёжная.

Вообще, надёжнее всего, наверное, будет чем-нибудь (например nmap) обратиться ко всем хостам, и после этого парсить arp:
# nmap -PN -nT Insane -p 1 192.168.91.0/24 > /dev/null ; arp -na | awk '{print $2}' | tr -d '()' | sort

Но это в случай отсутствия системы учёта. Я бы посоветовал все хосты заносить в DNS или куда-нибудь ещё, конечно же :)


"Вывод свободных IP адресов"
Отправлено аноним , 25-Май-10 19:38 
>Искал по нету, ничего не нашел на русском :-(
>а с английским уменя не очень хорошо >:-(

Да элемемнтарно Ватсон!

mail -s "Free IP addresses list" networkadmin@yourdomain.tld

Здравствуйте дяденька администратор ....

[...]

Искренне Ваш

.


:)



"Вывод свободных IP адресов"
Отправлено Mi , 25-Май-10 23:41 
>Всем привет!!!
>
>Подскажите, пожалуйста, какой командой (командами) можно вывести список всех свободных IP адресов
>той же подсети, в которой находится сервер, на котором выполняется эта
>команда?
>
>Нужно IP реально свободные, т.е. не те которые не пингуются, а те,
>которые 100% заняты!!! Такое вообще возможно? Искал по нету, ничего не
>нашел на русском :-( а с английским уменя не очень хорошо
>:-(

Если на сервере стоит FreeBSD то arpdig тебе вруки.


"Вывод свободных IP адресов"
Отправлено universite , 06-Июн-10 00:43 
>Всем привет!!!
>
>Подскажите, пожалуйста, какой командой (командами) можно вывести список всех свободных IP адресов
>той же подсети, в которой находится сервер, на котором выполняется эта
>команда?

Для каких целей?
может сразу выдавать таблицу MAC - ip ?


"Вывод свободных IP адресов"
Отправлено makesilent , 26-Июн-10 07:46 
>Всем привет!!!
>
>Подскажите, пожалуйста, какой командой (командами) можно вывести список всех свободных IP адресов
>той же подсети, в которой находится сервер, на котором выполняется эта
>команда?
>
>Нужно IP реально свободные, т.е. не те которые не пингуются, а те,
>которые 100% заняты!!! Такое вообще возможно? Искал по нету, ничего не
>нашел на русском :-( а с английским уменя не очень хорошо
>:-(

ТС учить английский и курить литературу. nmap в помощь )