Strona 1 z 1

[bash] skrypt do sprawdzania sieci

: 22 listopada 2007, 15:13
autor: kaleon
Witam


Potrzebuje skrypt który będzie sprawdzał czy jest połączenie z siecią bezprzewodową.

jeśli wydam polecenie iwconfig to wyświetla się takie coś

Kod: Zaznacz cały

server:~# iwconfig
lo        no wireless extensions.

ra0       RT61 Wireless  ESSID:"hala-rafal"
          Mode:Managed  Frequency:2.437 GHz  Access Point: xx:xx:xx:xx:xx:xx
          Bit Rate=xx Mb/s
          RTS thr :o ff   Fragment thr :o ff
          Encryption key :o ff
          Link Quality=xx/100  Signal level:-xx dBm  Noise level:-xx dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

eth0      no wireless extensions.

sit0      no wireless extensions.
chce sprawdzać czy mam połączenie z ESSID:"hala-rafal". gdy tego nie ma chce zrobić restart sieci bezprzewodowej by sie połączyć. i tyle.
Pasuje wsadzić ten skrypt do crona by sprawdzał np. co 2 godziny czy jest połączenie. wiec prosił bym o pomoc także o pomoc do crona
Z góry bardzo dziękuje

: 22 listopada 2007, 15:25
autor: jaSS
Jeżeli chcesz to zrobić przez iwconfig to może coś w tym stylu:

Kod: Zaznacz cały

iwconfig | grep -q -s 'ESSID:"hala-rafal"' || /skrypt/restartujacy/polaczenie.sh 
co do crona to

Kod: Zaznacz cały

33 */2 * * * 
Po wyjaśnienai polecam:

Kod: Zaznacz cały

man crontab 

: 22 listopada 2007, 15:56
autor: kaleon
nie koniecznie przez iwconfig.
ja nawet nie muszę wiedzieć ze jest jakiś problem. chce by w tle było sprawdzanie czy jest połączenie z siecią. Jeśli jest to to nic nie robi. a jeśli brak połączenia to trzeba zrobić coś by to połączenie nawiązać ponownie.

co należy zrobić żeby zresetować połączenie?

--edit--

znalazłem takie coś.
aby zrobić restart sieci potrzeba wpisać dwie komendy

Kod: Zaznacz cały

ifconfig ra0 down  -- aby zamknąć połączenie
ifconfig ra0 up  -- aby postawić połączenie
Potrzebuje jeszcze zrobić coś co będzie sprawdzać połączenie w określonych odstępach czasu.
Mam jeden pomysł ale nie wiem jak to wszystko zebrać w jedno.
Mogę zrobić ping do AP w którym mam stały IP. Jeśli ping odpowie znaczy ze jest połączenie. Jeśli nie odpowie znaczy ze stracił połączenie i wtedy reset. Ale jak to zrobić w skrypcie.
Pomoże mi ktoś?? bardzo proszę o pomoc