Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Определение динамического IP и отсылка его на почту  (Прочитано 27486 раз)
0 Пользователей и 1 Гость смотрят эту тему.
tumanovalex
Помогающий

ru
Offline Offline

« : 26-02-2009 05:11 » 

Мне хотелось бы управлять своим компьютером из другого места. Программы для управления компьютером требуют знания IP адреса, а адрес у меня динамический (провайдер - Стрим). Подскажите, пожалуйста, с помощью каких функций API можно сделать следующее: определить момент, когда компьютер установил связь с провайдером, определить IP адрес компьютера и отправить его на определенный почтовый ящик? Может быть есть готовое решение (интересует решение в виде службы(сервиса) - чтобы запускалась и все время работала)?
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #1 : 26-02-2009 05:27 » 

tumanovalex, пусть твой комп сам подключится к твоей удалённой программе
Записан

tumanovalex
Помогающий

ru
Offline Offline

« Ответ #2 : 26-02-2009 05:33 » 

А как это сделать? У меня на удаленном месте тоже динамический IP адрес.
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #3 : 26-02-2009 07:02 » 

ну тогда да, проблемка ) Ждём специалистов

а через почту может медленно доходить, хотя вариант теоретически рабочий - изучай протоколы SMTP и POP3 (уже было на форуме, ищи поиском)
Записан

zubr
Гость
« Ответ #4 : 26-02-2009 07:09 » 

tumanovalex, а дозвон к провайдеру твой сервис должен осуществлять, или пользователь?
Записан
PooH
Глобальный модератор

ru
Offline Offline
Пол: Мужской
... и можно без хлеба!


« Ответ #5 : 26-02-2009 07:33 » 

Ломиться переодически в инет, на какой-нибудь сайт определения внешнего адреса, как только достучался - слать почту.
Записан

Удачного всем кодинга! -=x[PooH]x=-
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #6 : 26-02-2009 07:46 » 

поднять DYNDNS
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
zubr
Гость
« Ответ #7 : 26-02-2009 07:57 » 

IP можно легко определить и локально. Код дельфийский, используются функции winsocket, так что легко переведешь в VC++
Код:
function  GetLocalIP:  String;
 const  WSVer  =  $101;
 var
     wsaData:  TWSAData;
     P:  PHostEnt;
     Buf:PChar;
 begin
     Buf:=StrAlloc(128);
     Result  :=  '';
     if  WSAStartup(WSVer,  wsaData)  =  0  then 
     begin
         if  GetHostName(Buf,  128)  =  0  then 
         begin
             P  :=  GetHostByName(Buf);
             if  P  <>  nil  then  Result  :=  iNet_ntoa(PInAddr(p^.h_addr_list^)^);
         end;
         WSACleanup;
     end;
 end;
А вот определить, когда подключился к провайдеру - если прога подключается, то можно юзать протокол PPP, в противном случае просто периодически пинговать какой нибудь стабильный сервер. Что касается отправки на почту Алексей1153++ уже ответил. Поищи на форуме.
Записан
PooH
Глобальный модератор

ru
Offline Offline
Пол: Мужской
... и можно без хлеба!


« Ответ #8 : 26-02-2009 08:37 » 

это что за адрес получится? локальный? если пров NAT узать будет - как ты узнаешь как адрес выглядит из интернета?
Записан

Удачного всем кодинга! -=x[PooH]x=-
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #9 : 26-02-2009 08:49 » 

Ждем автора с подробностями...
Какой ip получает комп (серый через nat или белый, что наиболее возможно)
Во втором случае надо договариваться с провом о пробросе портов.


upd. ашипся в фразе
« Последнее редактирование: 26-02-2009 08:59 от Sla » Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #10 : 26-02-2009 08:51 » 

поднять DYNDNS

Поддерживаю.
Сервис dyndns.org бесплатен (в необходимых тут рамках). Просто вещается программка, которая периодически сообщает внешний IP (определяет автоматом) машины на сервис. Доступ к машине осуществляется по DNS-имени. Естественно, нужно пройти регистрацию на сайте и выбрать себе доменное имя 3-го уровня среди предложенных доменов.

Кстати, если есть другой свой домен 2-го уровня и есть, где его хостить, то легко можно назначить машине и его через CNAME:

pupkin.ru. CNAME pupkin.dyndns.org.
« Последнее редактирование: 26-02-2009 08:53 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #11 : 26-02-2009 12:40 » 

Для управления компом издалека есть еще вот такая приблуда:
https://secure.logmein.com/products/free/features.asp?lang=en
есть бесплатная и платная версии. требует установки приблуды на оба компа (управляемый и управляющий). Все никак не соберусь попробовать...
В случае честного IP от прова - поддерживаю DYNDNS
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #12 : 26-02-2009 13:47 » 

Kivals, почитал guide, прикольно. но идея практически та же - использование стороннего ресурса для идентификации компьютера в сети.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #13 : 26-02-2009 13:51 » 

Sla, согласен, но направленность именно на управление компом конечным пользователем.
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #14 : 26-02-2009 13:57 » 

тут какая штука, при таком управлении используется сторонний ресурс как буфер, но никак не point-to-point. (это я понял из описания)
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #15 : 26-02-2009 14:05 » 

вроде в платном варианте можно PTP: фича "Direct Connect".
И еще: ИМХО она должна уметь доступаться из-за proxy/firewall
Но я уже писал - если IP честный - то я тоже поддерживаю dyndns, хотя у меня самого по старинке: отправляется e-mail/sms при смене IP. Cкрипт самописный (на WSH/JScript), запускается раз в 10 минут (по шедулеру), привязан к MAC адресу (т.к. на сервере несколько сетевых интерфейсов)
Записан
tumanovalex
Помогающий

ru
Offline Offline

« Ответ #16 : 26-02-2009 16:00 » 

Насколько я знаю, прокси никакого нет (я знакомому сам настраивал ПК), NAT ни у меня, ни у него не используется. У меня неограниченный Стрим, у знакомого выход через адаптер SkyLink. Я не очень понял, как использовать dyndns.org (плохо знаю английский). Мне нужно со своего компьютера и с компьютера своего знакомого завести учетные записи и установить какое-то программное обеспечение? А дальше знакомый должен делать какие-либо операции или нет?
Записан
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #17 : 26-02-2009 16:22 » 

Можешь создать одну запись на dyndns - она нужна для управления экаунтом. В ней добавить компы, которые будешь знать как tumanovalex.dynalias.com и tumanovalexfreind.dynalias.com (ну или как придумаешь, но в домене .dynalias.com).
На компы ставишь софтину, в которой прописываешь данные учетной записи и компа - и все.
Софтина периодически соединяется с сервером dyndns и отправляет в него свой адрес - а ты из любого места по имени у нему доступаешься.
Что касается NAT и proxy (в режиме tarnsparent) - то пока не проверишь точно не узнаешь, т.к. их может использовать провайдер, а ты (при обычном инет-серфинге) про это даже не догадываешься
Записан
tumanovalex
Помогающий

ru
Offline Offline

« Ответ #18 : 27-02-2009 04:25 » 

Попробовал я управление через logmein.com, все очен медленно. Хотелось бы найти способ прямого управления. А как проверить, использует провайдер для выдачи мне адреса NAT или нет?
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #19 : 27-02-2009 07:00 » 

ipconfig покажи
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Kivals
Команда клуба

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #20 : 27-02-2009 08:49 » 

Медленно может быть из-за асинхронного канала (скорость приема большая - скорость передачи низкая). Вообще отправляются файлы с такой же скоростью, как и скачиваются?
Записан
PooH
Глобальный модератор

ru
Offline Offline
Пол: Мужской
... и можно без хлеба!


« Ответ #21 : 27-02-2009 09:24 » 

Цитата
А как проверить, использует провайдер для выдачи мне адреса NAT или нет?
Самый простой и понятный способ: посмотри состояние соединения  и внешний адрес на каком-нибудь сайте, я использую 2ip.ru
Записан

Удачного всем кодинга! -=x[PooH]x=-
tumanovalex
Помогающий

ru
Offline Offline

« Ответ #22 : 27-02-2009 15:19 » 

Канал к сожалению медленный. Спасибо большое, буду экспериментировать.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines