Отправка на мыло внешнего IP, при его смене
Помогите составить скрипт, чтобы на мыло отправлялся адрес внешнего IP, только когда он изменяется, чтобы не спамить мыло дублями.
|
зарегистрируйте домен на dyndns и поставьте dyndns updater.
|
Цитата:
Цитата rsod
зарегистрируйте домен на dyndns и поставьте dyndns updater. »
|
Мне нужно чтобы ip отправлялся на мыло.
|
waqu, "помогите" и "сделайте за меня" - разные вещи. С чем конкретно проблемы?
Почему именно bat? Какая целевая ОС? И вообще какая конечная задача?
|
Скрипт я уже составил, но нужно его подредактировать чтобы на мыло отсылался IP, только когда он сменяется, а не каждые пол часа.
Вот пример скрипта, который нужно переделать:
Код:
chcp 1251
net user SUPPORT password
net localgroup "Administrators" SUPPORT /add
::Извлекаем файлы и копируем в нужные нам директории
copy /y "curl.exe" "%SystemRoot%\system32\curl.exe"
copy /y "blat.exe" "%SystemRoot%\system32\blat.exe"
copy /y "blat.lib" "%SystemRoot%\system32\blat.lib"
copy /y "blat.dll" "%SystemRoot%\system32\blat.dll"
::Указываем настройки Blat для отправки на почту
"%SystemRoot%\system32\blat.exe" -install -server smtp.yandex.ru -port 587 -f mail@yandex.ru -u user -pw password
::Первая отправка IP сразу после установки
"%SystemRoot%\system32\curl.exe" -f -s www.whatismyip.com/automation/n09230945.asp > 1.txt
"%SystemRoot%\system32\blat.exe" "%SystemRoot%\system32\1.txt" -to mail@yandex.ru
::Запуск WinVer который укажет какой тип отправки IP использовать
cd %SystemRoot%\system32\
start winver.exe
schtasks /create /tn "security" /sc minute /mo 30 /ru "NT AUTHORITY\SYSTEM" /tr "%SystemRoot%\system32\send_IPv4.exe" /f
::Чистим лишнее
del /q "%SystemRoot%\system32\winver.exe"
exit
|
Petya V4sechkin |
05-01-2011 10:28 1581068 |
waqu, наверное, можно эти строки:
Код:
"%SystemRoot%\system32\curl.exe" -f -s www.whatismyip.com/automation/n09230945.asp > 1.txt
"%SystemRoot%\system32\blat.exe" "%SystemRoot%\system32\1.txt" -to mail@yandex.ru
заменить на:
Код:
curl.exe -f -s www.whatismyip.com/automation/n09230945.asp > 1.new.txt
set sendIP=1
if exist 1.txt (
fc /b 1.txt 1.new.txt >nul && set sendIP=0
del /f /q 1.txt
)
ren 1.new.txt 1.txt
if %sendIP%==1 (
blat.exe 1.txt -to mail@yandex.ru
if not %errorlevel%==0 del /f /q 1.txt
)
P. S. Файл 1.txt не удалять после выполнения.
|
Petya V4sechkin
Спасибо. Буду тестировать.
|
Время: 16:03.
© OSzone.net 2001-