Автор Тема: Need help writing script  (Прочетена 9182 пъти)

sunhater

  • Напреднали
  • *****
  • Публикации: 329
    • Профил
Need help writing script
« -: May 05, 2003, 00:58 »
В главата ми се роди една идея, но за съжаление не знам как да я реализирам.

Имам кабелен интернет с динамичен IP адрес. Идеята ми е да пусна web сървър, който да се редирект-ва от някой безплатен хостинг (примерно hit.bg). Понеже IP адресът ми е динамичен, при всяка негова смяна ще трябва да се променя и HTML кода в hit.bg. Няма ли начин да се напише скрипт, който следи за промяна на IP адреса, и когато това се случи, автоматично да генерира HTML, и да го качи посредством ftp на hit.bg.

Най-често IP адресът се променя при стоп/старт/рестарт на системата, затова ще трябва да се пипне в стартиращия и спиращия скриптове (/etc/rc.d)
Спиращият скрипт (rc.6) ще трябва да записва във файл IP адресът, когато системата спира. А стартирaщия (rc.local) ще трябва до провери записаният във файла IP адрес с текущият.

Но предполагам, че е възможно да ти сменят IP адреса и когато компютъра работи. Затова предполагам че ще трябва да се пусне background proccess, който периодически да изпълнява ifconfig и да сравнява резултата му с предишния такъв.

Help me if you can.
Активен

KNK

  • Напреднали
  • *****
  • Публикации: 49
    • Профил
Need help writing script
« Отговор #1 -: May 07, 2003, 15:10 »
po-lesno shte ti e da poiskash statichno IP ot dostavchika ili dori da si go nastroish rachno (polulegalno  '<img'> ) vmesto s DHCP
inache tekushtoto IP shte si go poluchish s:
Примерен код
ifconfig eth0 | cut -c 21-33 | cut -s -f 1-4 -d .

vij cut --help za podrobnosti ako sam oburkal neshto. 21-33 e kade se namira IPto v izhoda na ifconfig, a vtoria cut otdelia samo reda s IPto (samo toj bi sledvalo da ima . )
popalvash si go v redirectvaahtia script, obache kak da go kachish na FTP neznam. opitaj s:
Примерен код
cat <file> | ftp -n <HOST>

kadeto <file> sadazha komandi koito da se pratiat na ftp-to t.e. neshto kato
Примерен код
user <username>%<pass>
 put index.htm

obache dali shte shte stane neznam
Активен

  • Гост
Need help writing script
« Отговор #2 -: May 10, 2003, 00:00 »
Виж dns2go http://www.deerfield.com.
credits: Николай Андонов  '<img'>
Активен

KNK

  • Напреднали
  • *****
  • Публикации: 49
    • Профил
Need help writing script
« Отговор #3 -: May 10, 2003, 19:32 »
da ama 20$ na godina, a static IP e 1-3$
Активен

KNK

  • Напреднали
  • *****
  • Публикации: 49
    • Профил
Need help writing script
« Отговор #4 -: May 10, 2003, 20:12 »
tova me zaintriguva, ta eto kakvo izmislih. sazdaj si slednia script i go slozhi v cron na kakavto iskash interval.
Примерен код
#!/bin/sh

#Current IP
cIP = `ifconfig eth0 | cut -c 21-33 | cut -s -f 1-4 -d .`

HTMLfile = "<HTML><HEAD><meta http-equiv='refresh' content='0;URL=${cIP}'></HEAD><BODY></BODY></HTML>"
# zameni USR, PASS i WEBFOLDER s tvoite
FTPdata = "user USR%PASS
cd WEBFOLDER
put /tmp/Index.htm"

#OldIP
oIP = `cat /tmp/Old.IP`

if [ ! "${cIP}" = "${oIP}" ]; then
   echo ${cIP} 1> /tmp/Old.IP
   echo ${HTMLfile} 1> /tmp/Index.htm
# zameni WEBHOST sas imeto na servera kadeto ti se hostva sajta
   echo ${FTPdata} 1> /bin/ftp -n WEBHOST
fi

Pishi dali e stanalo pls
Активен

  • Гост
Need help writing script
« Отговор #5 -: May 11, 2003, 01:03 »
ako si v SF i si kam cablebg.net ISP moje da ti pusnat napravo DNS i dori i da ti e dinamc IPto . . . pone pri men e taka za drugite ISP HE znam
mislia 4e e nai-dobre da pita6 ISPto si
Активен

sunhater

  • Напреднали
  • *****
  • Публикации: 329
    • Профил
Need help writing script
« Отговор #6 -: May 11, 2003, 20:53 »
Май имаш грешка в cut, защото в /tmp/Old.IP се записва нещо от сорта:

217.18.247.12 562041 (1.4 M

докато IP-то ми е 217.18.247.129

Освен това /bin/ftp вече е текстов файл със съдържанието на FTPdata.

Колкото до това за DNS-a... Не ща да плащам повече от стандартната услуга... нали затова (и не само) има скриптове.
Активен

KNK

  • Напреднали
  • *****
  • Публикации: 49
    • Профил
Need help writing script
« Отговор #7 -: May 11, 2003, 22:04 »
ups! sorry.
vmesto
Примерен код
echo ${FTPdata} 1> /bin/ftp -n WEBHOST
triabva da e
Примерен код
echo ${FTPdata} | /bin/ftp -n WEBHOST

kolkoto do IPto, mislia che s
Примерен код
cIP = `ifconfig eth0 | cut -c 20-35 | cut -s -f 1-4 -d . | cut -s -f 2 -d :`
neshtata shte se opraviat.
Активен

sunhater

  • Напреднали
  • *****
  • Публикации: 329
    • Профил
Need help writing script
« Отговор #8 -: May 12, 2003, 01:14 »
Абе нещо ми дава:

usage: user username [password] [account]

и не ще да upload-ва
иначе всичко друго е OK
Пробвах:

user <username> <password>

вместо:

user <username>%<password>

и пак същото съобщение  '<img'>
Активен

  • Гост
Need help writing script
« Отговор #9 -: May 12, 2003, 02:22 »
Цитат (sunhater @ Май 11 2003,21:53)
Май имаш грешка в cut, защото в /tmp/Old.IP се записва нещо от сорта:

217.18.247.12 562041 (1.4 M

докато IP-то ми е 217.18.247.129

Освен това /bin/ftp вече е текстов файл със съдържанието на FTPdata.

Колкото до това за DNS-a... Не ща да плащам повече от стандартната услуга... нали затова (и не само) има скриптове.

v cablebg.net HE sam pla6tal dopulnitelno za DNSa
Активен

KNK

  • Напреднали
  • *****
  • Публикации: 49
    • Профил
Need help writing script
« Отговор #10 -: May 12, 2003, 14:33 »
za IPto pak imam greshka (zabravil sam da izchistia intervalite v kraia na IPto), triabva da e
Примерен код
cIP = `ifconfig eth0 | cut -c 20-35 | cut -s -f 1-4 -d . | cut -s -f 2 -d : | cut -s -f 1 -d ' '`
, ama taka stava monogo tromavo, ta se setih vmesto ifconfig, da pozvam DHCPto
Примерен код
cIP = `grep IPADDR= /etc/dhcpc/dhcpcd-eth0.info | cut -s -f 2 -d =`

I dvata nachina stavat, no vtoria e za predpovhitane spored men.
Ami opitaj parvo ruchno da go upload za da sverish komandite.
/bin/ftp -n WEBHOST
i posle vij kak tochno moje da se lognesh. sigurno iska i account da e posocheno ili neshto drugo, tova veche zavisi ot FTP servera, moje da se naloji predi uploada da izberesh pasiven rejim, da setnesh che fajla e tekstov i t.n.

P.S. posochi ( ili email direktno) koj e free webhosta, da si napravia acc tam, ako imash problemi.
Активен

sunhater

  • Напреднали
  • *****
  • Публикации: 329
    • Профил
Need help writing script
« Отговор #11 -: May 15, 2003, 14:16 »
Много странно. Когато изпълня
Примерен код
ftp -n free.hit.bg

и после напиша
Примерен код
user USER PASS

си се логва нормално. Обаче вътре в скрипта не ще  '<img'>
Активен

sunhater

  • Напреднали
  • *****
  • Публикации: 329
    • Профил
Need help writing script
« Отговор #12 -: May 15, 2003, 14:39 »
Мисля, че проблема е, че не взема пред вид знака за нов ред при ${FTPdata}. Като сложа в скрипта
Примерен код
echo ${FTPdata}

ми показва на един ред всички команди
Активен

KNK

  • Напреднали
  • *****
  • Публикации: 49
    • Профил
Need help writing script
« Отговор #13 -: May 15, 2003, 14:43 »
ami opitaj s cat FTPdata, kato parvo zapishesh fajla FTPdata red po red
Активен

sunhater

  • Напреднали
  • *****
  • Публикации: 329
    • Профил
Need help writing script
« Отговор #14 -: May 15, 2003, 14:46 »
Стана много very 10x!!! KNK е пич!
Активен