Freesco, NND, CDN, EOS

http://www.freesco.pl
Dzisiaj jest wtorek, 17 czerwca 2025, 14:45

Strefa czasowa UTC+2godz.




Nowy temat Odpowiedz w temacie  [ Posty: 5 ] 
Autor Wiadomość
Post: środa, 5 listopada 2008, 09:19 
Offline
Użytkownik

Rejestracja: piątek, 8 kwietnia 2005, 05:28
Posty: 190
Lokalizacja: Olsztyn
witam!

potrzebuje pomocy w napisaniu skryptu, może bardziej nakierowania albo wytłumaczenia( o ile istnieje taka możliwość) jak zrobić aby daemon dhcp odpalał jakiś program za każdym razem jak dhcp przydzieli komuś ip z puli automatycznej. czy moze coś małego(skrypt czy cuś) co czyta logi i znając pulę automatyczną dhcp odpala mi ten żądany program, a może jakaś komenda w samym dhcp która się jakoś odnosi do wykonywania niezależnych poleceń.

chyba zagmatwałem, ale chodzi mi o to abym dostawał smsa za każdym razem jak dhcp przydzieli komuś adres z puli o końcówce ip 210-220

oczekuje na sugestie

_________________
Processor Pentium 4 XEON 1,8GHz 512MB Ram (bind,mrtg,apache,php4,exim,radius-testing) 40 hostów


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 5 listopada 2008, 13:18 
Offline
Honorowy Admin

Rejestracja: piątek, 5 lipca 2002, 17:30
Posty: 7800
Lokalizacja: Słupsk
Musiałbyś napisać skrypt analizujący log i wysyłajacy smsa, to może zarżnąć słabszą maszynę...

_________________
Obrazek Belfer.one.PL
Obrazek Audio Cafe


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 5 listopada 2008, 18:05 
Offline
MODERATOR

Rejestracja: poniedziałek, 8 marca 2004, 23:29
Posty: 1177
Lokalizacja: miasto Świętej Wieży
hmm a nie było coś już o tym na forum? cuś mi takiego świta... :)

_________________
Pozdrawiam

Obrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 5 listopada 2008, 20:02 
Offline
PGF

Rejestracja: piątek, 25 lutego 2005, 18:22
Posty: 1430
Lokalizacja: Elbląg
Maciek pisze:
Musiałbyś napisać skrypt analizujący log i wysyłajacy smsa, to może zarżnąć słabszą maszynę...

Eeee tam zaraz analizować cały log... Tworzymy pipe, przekierowujemy log na tę pipe i skryptem w pętli odczytujemy z pipy - właśnie się tym bawię, za niedługo zapodam skrypt...

_________________
F33/F07,F11,F13,F17
ObrazekObrazek


Na górę
 Wyświetl profil  
 
 Tytuł:
Post: środa, 5 listopada 2008, 21:55 
Offline
PGF

Rejestracja: piątek, 25 lutego 2005, 18:22
Posty: 1430
Lokalizacja: Elbląg
Więc tak:

I. Do /etc/dhcpd.conf dopisujesz (na początku):
: [/] [] ()
log-facility local0;



II. W /etc/syslog.conf :

1. Dopisujesz (może być na końcu):
: [/] [] ()
local0.*     /var/log/dhcpd
local0.*     |/root/dhcpdlog

2. Zmieniasz linię:
: [/] [] ()
[coś_tam]     /var/log/messages

na:
: [/] [] ()
[cos_tam];local0.none     /var/log/messages


III. Tworzysz pipe (jako root):
: [/] [] ()
cd
mkfifo dhcpdlog
chmod 600 dhcpdlog


IV.
1. Restartujesz syslogd
2. Restartujesz klogd
3. Restartujesz dhcpd

Od tej chwili logi dhcpd masz zapisywane w /var/log/dhcpd oraz do pipy /root/dhcpdlog

Pipa to jest FIFO, więc ma między innymi to do siebie, że jak coś z niej odczytasz, to już w niej tego nie ma.
W związku z powyższym:


V. Robisz sobie taki oto skrypcik:
: [/] [] ()
#!/bin/bash
#/usr/sbin/pilnuj_dhcp

IP_LOW=210
IP_HIGH=220
SENDSMS="/sciezka/do/programu/wysylajacego/sms [numer] [tresc] [inny_parametr]"

while read wpis; do
  YES=$[`echo $wpis | awk -F" |\." '{if ($6=="DHCPACK" && $11>'$IP_LOW' && \
      $11<'$IP_HIGH') {result=1} else {result=0}} END {print result}'`]
  if [ $YES == 1 ]; then
    $SENDSMS
  fi
done < /root/dhcpdlog




VI. Odpalasz skrypcik:
: [/] [] ()
/usr/sbin/pilnuj_dhcp &

Zważ na & na końcu - jeśli go nie dasz, to skrypt będzie zapierniczał cały czas w konsoli, bo to nie skończona pętla.


VII. Czekasz na SMS-y :)


PS. Niektóre klienty odpytują serwer DHCP po kilka razy z rzędu i wtedy kilka razy z rzędu dostaja DHCPACK, w związku z czym możliwe jest, że dostaniesz kilka SMS-ów dotyczących tego samego przydziału adresu IP - nie chce mi się już kombinować jak zrobić, żeby temu zapobiec.

A, i nie odpowiadam za ewentualne straty moralne i/lub materialne w przypadku, jeśli Ci się coś popier***i w systemie wskutek wykonania opisanych wyżej działań ;)

_________________
F33/F07,F11,F13,F17
ObrazekObrazek


Na górę
 Wyświetl profil  
 
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat Odpowiedz w temacie  [ Posty: 5 ] 

Strefa czasowa UTC+2godz.


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 16 gości


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
cron
Technologię dostarcza phpBB® Forum Software © phpBB Group
Hosting: Compus-Net
RobertKonik.pl