[Ruby]Resetowanie adsl w routerach TP-Link

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Radeko
Piegowaty Guziec
Piegowaty Guziec
Posty: 8
Rejestracja: 01 mar 2009, 17:25
Płeć: Mężczyzna
Wersja Ubuntu: 8.10
Środowisko graficzne: GNOME

[Ruby]Resetowanie adsl w routerach TP-Link

Post autor: Radeko »

Witam :)
Zaczynam przygodę z Ruby i w ramach ćwiczeń napisałem skrypt resetowania połączenia adsl w routerze TP-Link za pomocą telnetu.
Skrypt działa o wiele szybciej, niż reset routera przez www.

Kod: Zaznacz cały

#!/usr/bin/env ruby
#TP-Link reset ADSL by Radeko
# admin to domyśle hasło do routera, jeżeli zostało zmienione zmień je na swoje
require 'net/telnet'
server = Net::Telnet.new('Host' => '192.168.1.1', 'Port' => '23', 'Telnetmode' => false)
lines_to_send = ['admin', 'wan ads re', 'ex']

lines_to_send.each do |line|
 sleep(0.5)
 server.puts(line)
 sleep(0.5)

 server.waitfor(/./) do |data|
  puts data
 end
end
Do działania wymagany jest oczywiście zainstalowany ruby. W tablicy lines_to_send pierwsze jest hasło do routera, podałem domyślne. Jeżeli zostało zmienione należy wpisać swoje. Skrypt można zapisać np pod nazwą adsl_reset.rb, należy wykonać na nim:

Kod: Zaznacz cały

sudo chmod +x
czyli jeżeli zostanie zapisany w katalogu domowym w folderze "scripts" (tak zapisałem go u siebie), to należy wykonać:

Kod: Zaznacz cały

cd ~/scripts/ | sudo chmod +x adsl_reset.rb
Skrypt uruchamia się przez

Kod: Zaznacz cały

./adsl_reset.rb
można też utworzyć skrót, przez dodanie do programów startowych linijki

Kod: Zaznacz cały

alias adsl_reset='cd ~/scripts/|./adsl_reset.rb'
Teraz skrypt będzie uruchamiany przez wpisanie w konsoli adsl_reset.

Nie jest to oczywiście nic skomplikowanego. Mam nadzieję, że posiadacze łącza ADSL i routera TP-Link docenią jak ten skrypt ułatwia reset połączenia. Oczywiście można go przystosować do innych routerów. Jeżeli ktoś dopatrzy się jakichś niedociągnięć, które pewnie są :razz: Proszę o napisanie w tym wątku, poprawię jak szybko to możliwe. W razie pytań proszę pisać.

Pozdrawiam Radeko :)
sir_herrbatka
Zakręcona Traszka
Zakręcona Traszka
Posty: 587
Rejestracja: 10 maja 2009, 14:44
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86

Re: [Ruby]Resetowanie adsl w routerach TP-Link

Post autor: sir_herrbatka »

Wypróbowałem skrypt u siebie ─ działa bez zarzutu.
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

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