Модераторы: feodorv
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Пинг IP адреса 
:(
    Опции темы
Annuta
Дата 27.8.2007, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 174
Регистрация: 3.10.2006
Где: Dubna

Репутация: нет
Всего: 1



Есть ип адрес, - как мне проверить, можно ли его использовать 
/т.е. назначить внешнему устройству/ ?
Т.е. как проверить данный ип в сети уже задействовван или нет ?... 
 спасибо....
--------------------
Программист - это комбинация лени и логики !
PM MAIL   Вверх
MaXL
Дата 27.8.2007, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Developer
**


Профиль
Группа: Участник
Сообщений: 380
Регистрация: 24.10.2005
Где: Владивосток

Репутация: нет
Всего: 2



Чтобы сделать пинг, нужно использоваться функции из библиотеки ICMP.DLL 
В этой библиотеке есть функции: IcmpCloseFile, IcmpCreateFile, IcmpSendEcho. Погугли в их сторону, сможешь найти примеры использования.
А вообще по сабжу думаю следующее, не все машины в сети можно пропинговать, на многих может стоять какой-нибудь файрвол которое сделать её невидимой. Поэтому думаю что этот способ не очень эффективен.


--------------------
MaXL
PM MAIL   Вверх
bel_nikita
Дата 27.8.2007, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2304
Регистрация: 12.10.2003
Где: Поезд №21/22 ( ст . Прага )

Репутация: 1
Всего: 47



Annuta, копай в сторону DHCP


--------------------
user posted image — регистрация доменов от 150 руб.
PM MAIL WWW ICQ   Вверх
Annuta
Дата 27.8.2007, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 174
Регистрация: 3.10.2006
Где: Dubna

Репутация: нет
Всего: 1



MaXL -- а есть ли более эффективный способ ?... Поведай - если знаешь...
 DHCP - натолкните пожаста на мысль о том, как с помощью этого протокола - узнать есть ип уже в сети или нету 
. спасибо!
--------------------
Программист - это комбинация лени и логики !
PM MAIL   Вверх
jonie
Дата 27.8.2007, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 5
Всего: 118



а я бы копал в сторону ARP ... конкретно слал бы запрос ARP request....(ip2mac) если я чего не путаю ..... ежели ниче не пришло тогда можно юзать...
для винда когда-то писал такое:
Код

#include <stdio.h>
// IP helper funct
#include <windows.h>
#include <stdio.h>
#include <tchar.h>
#include <iphlpapi.h>

#define SIZEOF(x) sizeof(x)/sizeof(x[0])


#pragma comment(lib,"ws2_32.lib")
#pragma comment(lib,"iphlpapi.lib")


/*
    Get MAC from IP (using IPHelper function)
    params : targetIP
*/
int main(int argc, char **argv)
{
    try{
        if(argc<2){
            
            throw L"USAGE : ip2mac.exe IP_ADDR";
        }
        ULONG AddrLen=6;
        ULONG MacAddr[2];
        IPAddr ipaddr = inet_addr(argv[1]);
        memset(MacAddr,0xFF,sizeof(MacAddr));
        if(SendARP(ipaddr,0,MacAddr,&AddrLen)!= NO_ERROR) throw L""/*(L"SendARP Failed!")*/;
        PBYTE lpMAC = reinterpret_cast<PBYTE>(MacAddr);
        for(;AddrLen;AddrLen--,lpMAC++){
            wprintf(L"%02X",*lpMAC);
        }
    }
    catch(TCHAR* mes){
        fwprintf(stderr,L"%s",mes);
        return 1;
    }
    catch(...){
        fwprintf(stderr,L"Unexcepted Error!");
        return 1;
    }
    return 0;
}



--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Annuta
Дата 28.8.2007, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 174
Регистрация: 3.10.2006
Где: Dubna

Репутация: нет
Всего: 1



jonie, Спасибо! У меня всё получилось, вашим способом!!!  smile 
--------------------
Программист - это комбинация лени и логики !
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.1033 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.