Форум: "Сети";
Текущий архив: 2005.10.16;
Скачать: [xml.tar.bz2];
ВнизКак получить список всех IP адресов локальной сети Найти похожие ветки
← →
Progh (2005-06-22 09:16) [0]Как получить список всех IP адресов локальной сети ?
← →
Digitman © (2005-06-22 10:04) [1]http://www.sources.ru/vb/vb_ip_subnet.shtml
← →
Anatoly Podgoretsky © (2005-06-22 10:28) [2]Progh (22.06.05 09:16)
А что это такое? Дай разъяснение.
← →
Progh (2005-06-22 10:32) [3]Как что такое ?
Как получить список IP адресов компьютеров, входящих в текущую подсеть
← →
Progh (2005-06-22 10:38) [4]
> [1] Digitman © (22.06.05 10:04)
А на Delphi ниукого примера нет, ото я в этом бейсике не разбираюсь
← →
Anatoly Podgoretsky © (2005-06-22 10:39) [5]Progh (22.06.05 10:32) [3]
Что ты считаешь подсетью, диапазон адресов или физические компьютеры. Но в общем случае никак и даже админстратор сети не поможет.
← →
Progh (2005-06-22 10:50) [6]IP адреса физических компьютеров. Как это не узнать ? А просканировать нельзя диапазон ? Я просто пример хотел найти, чтобы не писать все самому
← →
Anatoly Podgoretsky © (2005-06-22 10:53) [7]Progh (22.06.05 10:50) [6]
Просканировать можно, а ты представляешь это диапазон, так он от 0.0.0.0 до 255.255.255.255 и при том ни один компьютер не давал никаких обязательств реагировать на твое сканирование, также не давал обязательств по активному подавлению подобной акции.
← →
Progh (2005-06-22 10:58) [8]Мне текущую подсеть просканировать (255 адресов всего). Да и компы все эти я сам настраивать буду, так что откликаться все должны(если включены), да и подавления сканирования небудет
Пример проверки отклика от определенного IP адреса ниуко нет ?(клиента естественно там моего нет).
← →
Digitman © (2005-06-22 11:08) [9]
> Мне текущую подсеть просканировать (255 адресов всего)
[Robert Hart (hartr@interweft.com.au). Перевод Александр Ермолаев (ave@asplinux.ru)]
Организация IP-подсетей
Robert Hart
hartr@interweft.com.au
Перевод: Александр Ермолаев, ASPLinux
...
Классы сетей
Имеются три класса IP адресов
IP адрес сети класса A использует крайние левые 8 битов (первый байт) для идентификации сети, оставшиеся 24 бита (три байта) идентифицируют сетевые интерфейсы компьютера в сети. Адреса класса A всегда имеют крайний левый бит, равный нулю - поэтому первый байт адреса принимает значения от 0 до 127. Так доступно максимум 128 номеров для сетей класса A, с каждым, содержащим до 33,554,430 возможных интерфейсов. Однако, сети 0.0.0.0 (известный как заданный по умолчанию маршрут) и 127.0.0.0 (зарезервированы для организации обратной связи (loopback)) имеют специальные предназначения и не доступны для использования, чтобы идентифицировать сети. Соответственно, могут существовать только 126 номеров для сети класса A.
IP адрес сети класса B использует крайние левые 16 битов (первые 2 байта) для идентификации сети, оставшиеся 16 бит идентифицируют сетевые интерфейсы компьютера в сети. Адреса класса B всегда имеют крайние левые два бита, установленные в 1 0. Сети класса B имеют диапазон от 128 до 191 для первого байта, каждая сеть может содержать до 32,766 возможных интерфейсов.
IP адрес сети класса C использует крайние левые 24 бита для идентификации сети, оставшиеся 8 бит идентифицируют сетевые интерфейсы компьютера в сети. Адрес сети класса C всегда имеет крайние левые 3 бита, установленные в 1 1 0 или диапазон от 192 до 255 для крайнего левого байта. Имеется, таким образом, 4,194,303 номеров, доступных для идентификации сети класса C, каждая может содержать до 254 сетевых интерфейса. (однако, сети класса C с первым байтом, большим, чем 223, зарезервированы и недоступны для использования).
Резюме:
Класс сети Пригодный для использования диапазон
A 1 - 126
B 128 - 191
C 192 - 254
← →
Rouse_ © (2005-06-22 13:00) [10]По всей видимости он имеет ввиду что сетка может быть 192.168.2.0 и к примеру 192.168.3.0.
Отсюда следует к примеру взять свой IP адрес и на основе ссылки, которую привел> Digitman © (22.06.05 10:04) [1] узнать, что откуда и куда...
← →
DelphiN! © (2005-06-22 13:20) [11]function TForm1.Ping(_Host: String): Boolean;
var
wsadt : wsadata;
Host :PHostEnt;
Destino :in_addr;
Retorno :integer;
begin
Retorno := WSAStartup($0101,wsadt);
if (Retorno <> 0) then
begin
Result := false;
WSACleanup();
exit;
end;
Destino.S_addr := inet_addr(Pchar(_Host));
if (Destino.S_addr = 0) then
Host := GetHostbyName(PChar(_Host))
else
Host := GetHostbyAddr(@Destino,sizeof(in_addr), AF_INET);
if (host = nil) then
begin
Result := false;
WSACleanup();
exit;
end
else
Result := true;
WSACleanup();
end;
var
strl: TStringList;
i: Integer;
begin
try
strl := TStringList.Create;
for i := 1 to 126 do
if ping("198.162.0."+IntToStr(i)) then
strl.Add("198.162.0."+IntToStr(i));
ShowMessage(strl.text);
finally
strl.Free;
end;
end.
Что-то типо того
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2005.10.16;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.044 c