aurel [dot] ro

…::: aici scriu doar când am timp :::…

Archive for August, 2008

Schimbare adresa IP din fişier bat

Altă zi, altă problemă. Vrea un client sa iba access şi la o reţea locală privată (ca să printeze la imprimanta altui coleg) şi la internet ca să-şi vadă mailurile, dar fără să dea click-uri multe cu mouse-ul şi fără să aibă el habar unde se pune adresa IP şi ce reprezintă cifrele alea de acolo.
Mai pe româneşte să poată schimba adresa IP cu 1 sau maxim 2 cick+uri de mouse, fără să atingă tastatura.
După ce am “googlăit” un pic, am ajuns unde trebuia, adică la ideea că se poate. Nu mă acuzaţi, că sigur mai sunt şi alţii cre nu ştiau până azi.
Se folosseşte comanda netsh. Cu ea se poate schimba adresa IP, adresa Gateway şi adresa DNS.

Presupunem ca aveţi o adresă IP deja şi vreţi să o schimbaţi în următoarea:
IP: 192.168.1.2
Subnet Mask: 255.255.255.0
Gateway: 192.168.1.1
DNS: 192.168.1.1

Pentru a face schimbarea, aveţi nevoie de trei comenzi. Ca sa fie munca mai uşoară, le vom scrie într-un fişier text şi se vor salva ca fişier bat.
Se porneşte Notepad: Start – Programs – Accessories – Notepad
Se scriu în el cele trei rânduri de mai jos (ca să fie trei rânduri le luaţi cu copy-paste):

netsh int ip set address name="Local Area Connection" source=static addr=192.168.1.2 mask=255.255.255.0
netsh int ip set address name="Local Area Connection" source=static gateway=192.168.1.1 gwmetric=1
netsh int ip set dns name="Local Area Connection" source=static addr=192.168.1.1

Se dă la notepad: File – Save As
La Save As type se alege All Files
La File name se scrie: schimbaIP.bat
Se apasă butonul Save, după ce s-a ales locul din calculator unde vreţi să salvaţi fişierul.
Cu dublu click pe iconiţa fişierului se va schimba adresa IP.
Este bine sa aveţi 2 fişiere, în al doilea (IPvechi.bat , de exemplu) să aveţi adresele vechi la care vreţi uneori să reveniţi.
Pentru mai multe detalii şi variaţiuni pe aceeaşi temă, vizitaţi cu încredere pagina aceasta.

aurel[dot]ro

posted by admin in Hardware,Soft,Tutorial and have No Comments

Restart automat la un Access Point sau Router

Uneori îmi pun probleme şi apoi încerc să le rezolv. Şi asta se întâmplă destul de des.
Astăzi a apărut problema unui access point.
L-am luat de la dc-shop.ro şi, cum mă aşteptam raportat la preţul lui, a început să creeze probleme. Este vorba despre TEW-450APB, la un preţ foarte mic, un pic peste 100 lei.
Am conectaţi pe el vreo 8 clienţi, majoritatea copii fidele facute de chinezi după acelaşi model (adica wl-ap-2454 de la Ral).
La intervale total neregulate, fără absolut nici o logică, mi se deconectau toţi (absolut toţi) clienţii de pe el, fără să apară a fi deconectaţi. Access-pointul era în regulă pe partea de LAN, puteam ajunge să îl comand, dar era aiurea pentru că eu aflam de multe ori la o oră sau mai mult de deconectare. Am monitorizare foarte bine pusă la punct, dar nu am un sistem care sa mă sune pe mobil sau sa îmi dea sms când apar probleme.
Aici mi-am creat singur problema: cum să pot da restart la acel AP automat când toţi clienţii sunt deconectaţi. Aparatul fiind o sculă ieftină, nu are telnet şi interfaţa web este (la prima vedere) html + ceva java script. Adică toate paginile se termină în .html .
Am luat o imagine a flash-ului (pentru update) de la wl-ap-2454, m-am uitat în ea cu viewer-ul de la Volkov Commander (se poate cu orice hex editor) si am văzut că de fapt este o arhivă arj cu extensia .bin. Am deschis fisierul cu winrar si, într-adevăr, era o arhiva cu un singur fisier în ea. L-am extras si am cautat în Volkov Commander ceva cuvinte “restart” , “reboot” , etc. Nu am gasit ceva să mă mulţumească, dar am gasit altceva interesant. Toate fişierele pe care eu le vedeam cu extensia html apăreau în memoria ROM şi cu extensia cgi.
Am căutat ceva pe google şi am aflat (de fapt ştiam dar nu eram sigur) că pot trimite date prin metoda POST la o pagină web cu ajutorul comenyilor linux wget şi curl, cu ultima fiint mult mai uşor.
După multe încercări am ajuns la următoare linie de comandă în linux:

curl -d "host_name=trend&xrMode=1&apply=1" \

http://admin:admin@192.168.102.36/basic_setting.cgi

Pe româneşte, îî schimb numele în “trend”, îi activez Extended Range şi apăs butonul “Apply” (adică îl fac să creadă că am schimbat câte ceva pe acolo şi apoi îl forţez să se restarteze)
Faza funcţionează şi la TEW-450APB şi la WL-AP-2454 şi cred că are şanse foarte mari să meargă şi la WAP-4000 al lui Planet (asta pentru că are relativ acelaşi soft)
Dacă am reuşit asta… deja restul e floricică de bujor la urechea dreaptă. Adica am trântit un script în bash:

#!/bin/bash
cd /aurel/ap/reset
sleep 10
oprite=0
lista="11 12 13 14 15 16 17"
for ap in `echo $lista`
do
    a=`ping -c1 -i1 -w2 192.168.102.$ap | grep rtt | wc -l`
    if [ $a = 0 ]
    then
       oprite=`expr $oprite \+ 1`
    fi
done
echo oprite=$oprite
if [ $oprite = 7 ]
then
   curl -d "host_name=trend&xrMode=1&apply=1" \

http://admin:admin@192.168.102.36/basic_setting.cgi

   echo `date`-reset >> log.txt
fi

şi i-am zis în /etc/crontab să fie rulat o data la 2 minute.
Ce face? Verifică dacă toţi cei 7 clienţi sunt deconectaţi. Dacă raspunsul este TRUE, trimite linia de restart la Access Point şi acesta se va restarta. Deci în maxim 2 minute clienţii vor avea din nou reţea, internet, youtube, hi5, messenger, bla bla bla.

aurel [dot] ro

posted by admin in Hardware,Idei,Tutorial and have No Comments