Noyzi!!a’s Blog


perl telnet reboot router

Posted in จับฉ่าย by Noyzi!!a on the January 28th, 2008

Router ที่บ้าน (Yasda) ฟรีจาก Cat เปิดทิ้งไว้พอตอนเช้าทีไรตายสนิท ต้องทำการปลุกผีด้วยการ reboot ทุกที
ตอนแรกนั่งเขียน shell ให้ telnet ไป reboot ทุกๆเช้า “โฮก”บุญไม่ถึง ทำไม่สำเร็จ ลุงต่อเลยแนะนำให้ใช้ perl แทน

ตามนี้เลยครับ

use Net::Telnet;$telnet = new Net::Telnet ( Timeout=>10, Errmode=>’die’);
$telnet->host(’192.168.1.1′);
$telnet->port(’*******’);
$telnet->open();
$telnet->waitfor(’/login: $/i’);
$telnet->print(’*********’);
$telnet->waitfor(’/password: $/i’);
$telnet->print(’*********’);
$telnet->waitfor(’/\$$/i’);
$telnet->cmd(”reboot\n”);
$telnet->waitfor(’/\$$/i’);
$telnet->cmd(”quit\n”);
print “End \n”;

เสร็จแล้วก็เอาไปใส่ crontab ตั้งเวลาให้รันทุก 6.00 ซะตื่นมาก็เล่นได้เลยไม่ต้องเสียอารมมานั่ง Reboot เอง

http://www.perlfect.com/articles/telnet.shtml

http://search.cpan.org/~jrogers/Net-Telnet-3.03/lib/Net/Telnet.pm

Leave a Reply