Андрій Моравський
Академік
Повідомлень: 474
Зареєстрований: 17-8-2005
Місто: Львів
Нема на форумі
|
|
Як дізнатись СВІЙ адрес IP?
Вихідні дані:
Windows'и XP
динамічний IP (для машини яка контролюватиметься)
підключення до UARNet по PPPoE через сервер-шлюз по радіо каналу. Прикожному
підключенні дається інший IP.
Задача:
Як дізнатися свій поточний IP програмним чином (як це робить ipconfig) і скинути його не
мейл? може хтось має які думки?
думки:...
....почну з того що PERL'ом закинути на мило не буде важко, думаю в ному ж є якийсь
модуль який покаже і поточну IP-шку... а то натикаюсь хіба що на "IP удальонного
пользоватєля..." в скриптах CGI... яке мені не тре хоч би там шо. Хто які думки має,
Панове?
....по друге.. як цей перл-скрипт (чомусь мене потягнуло на перл, бо з ним мав до
справи колись і знаю його частково, бачу що в ному можна вирішити цю проблему
начебто...)... отож... як цей перл скрипт запустити у Windows ПІСЛЯ підконекчення до
Уарнету (воно при старті машини в мене автоматичне).... (планувальник недоступний
юзер безпарольний...)
до речі цей весь сирбор робиться для того щоб віддалено контролювати машину по IP.
Гадаю зрозуміло...можливо буде на ній FTP-шка..
ну суть задачі - ЯК ДІЗНАТИСЬ СВІЙ IP. перлом чи не перлом... може BAT-ом... чи ін.
ВЕЛЬМИ ВДЯЧНИЙ!
|
|
Ярема П.
Почесний Академік
Повідомлень: 2223
Зареєстрований: 10-2-2005
Нема на форумі
Настрій: І навіщо я день почав з читання новин?
|
|
А чому не можна скористатися http://www.dyndns.com/ ? Там же є купа програм, які після виходу машини в ефір перевіряють
адрес айпі, і якщо помінявся, то відразу прописують його певній адресі, яку перед
тим вибирається. Зручно, не треба пам'ятати адрес айпі, а лиш символьну адресу,
типу lialalal.dyndns.org або lialalia.homelinux.net чи ще якось.
|
|
Тарас Капущак
Дійсний член
Повідомлень: 254
Зареєстрований: 14-9-2005
Місто: Київ
Нема на форумі
Настрій: Настрій не вказаний
|
|
Можна так:
Код: | $name = (gethostbyname ("localhost"))[0];
$addr = (gethostbyname ($name))[4];
printf "%s\n", join ('.', unpack ("C4", $addr)); |
(джерело: http://www.cygwin.com/ml/cygwin/1998-05/msg00124.html )
|
|
Тарас Гулка
Академік
Повідомлень: 899
Зареєстрований: 19-6-2002
Місто: м.Львів, Україна
Нема на форумі
Настрій: стабільний
|
|
В методі запропонованому Тарасом є один ньюанс. Я не знаю як відбувається
підключення через радіо-канал, але у випадку PPPoE з'єднання через АДСЛ-модем такий
метод не спрацює. Динамічну адресу отримує модем, а далі передає нет вже до ПК,
який у свою чергу має зовсім іншу, локальну адресу.
Маю підозру, що у випадку радіо-каналу буде така сама ситуаці.
Одним із виходів є наступний простий метод (але цей метод потребує розміщення
скріпта на зовнішньому сайті). Одже:
1. пишем скрипт визначення ІР клієнта який доступається до веб-сторінки.
наприклда, на ПХП це можна зробити так:
$ip = getenv ("REMOTE_ADDR");
// далі дописуєм відсилання адреса на певну адресу
2. Розміщуєм цей скріпт на якомусь сервері, наприклад, http://.................com/ip.php
Загалом все. Тепер якщо запустити файл за цією адресою то відповідно скрипт
зчитає ІР адресу компа з якого був здійснений доступ до веб-сторінки і відправить
на задану адрусу. Якщо це діло треба автоматизувати, то :
3. створюємо bat-файл в якому пишем одну стрічку:
explorer.exe http://.................com/ip.php
4. запускаєм bat файл. В результаті запуститься скрипт.
|
|