Cách tự động khởi động lại bộ định tuyến của bạn theo cách Geeky
Verizon FIOS là tuyệt vời - tốc độ đáng kinh ngạc, và giá là tốt, khá đắt. Vấn đề thực sự là bộ định tuyến khủng khiếp mà họ cung cấp cho bạn cần phải được khởi động lại mọi lúc, đó là một nỗi đau của hoàng gia khi xem xét nó ở dưới tầng hầm. Thêm vào đó, tôi không muốn rời khỏi đi văng.
Vì vậy, tôi đã suy nghĩ làm thế nào tôi có thể giải quyết vấn đề này bằng cách sử dụng công nghệ. Đó là những gì các chuyên viên máy tính làm, phải không?
Vâng, tôi biết, tôi có thể gọi cho Verizon và nâng cấp bộ định tuyến, tôi chắc chắn bây giờ họ có một mô hình tốt hơn. Và chắc chắn, bạn có thể cập nhật chương trình cơ sở, nhưng điều đó sẽ không hoạt động cho bộ định tuyến cũ của tôi vì không có bản cập nhật. Thời gian cho một giải pháp dễ dàng hơn lý tưởng liên quan đến một công việc định kỳ. Công việc định kỳ luôn là một quyết định đúng đắn.
Sau ba phút nghiên cứu và động não, một giải pháp đã tự hiện ra: Bạn có thể kích hoạt telnet trên bộ định tuyến, thiết lập một tập lệnh tự động chạy một loạt các lệnh bằng giao diện telnet, sau đó lên lịch cho tập lệnh đó với công việc định kỳ để chạy thường xuyên nền tảng. Đối với tôi, điều đó có nghĩa là mỗi buổi sáng lúc 7 giờ sáng, một giờ trước khi tôi thức dậy và một lần nữa vào lúc 5:30 chiều, vì tôi luôn ra khỏi nhà vào thời điểm đó. Vấn đề đã được giải quyết và tôi có thể sử dụng Vim, điều này cũng khiến tôi hài lòng.
Và tất nhiên, bạn có thể tạo một tập lệnh để chạy theo yêu cầu để ngay lập tức khởi động lại bộ định tuyến bất cứ khi nào bạn muốn.
Chú thích: bạn có thể làm điều tương tự với bộ định tuyến không phải là Verizon. Bạn sẽ cần kiểm tra bảng quản trị bộ định tuyến của mình và xem các tùy chọn hoạt động trên đó như thế nào.
Kết nối với Bộ định tuyến của bạn qua Telnet
Điều đầu tiên bạn sẽ muốn làm là tìm ra cách bật telnet trên bộ định tuyến. Đối với bộ định tuyến Verizon, yêu cầu phải đi vào Nâng cao -> Quản trị cục bộ và đảm bảo rằng Sử dụng Cổng Telnet chính được bật. Đảm bảo nhấp vào Áp dụng.
Tại thời điểm này, bạn có thể dễ dàng sử dụng telnet từ thiết bị đầu cuối hoặc dấu nhắc lệnh để kết nối với bộ định tuyến. Nếu bạn đang sử dụng Windows, có lẽ bạn sẽ phải bật telnet. Để kết nối, chỉ cần nhập cái này, thay thế địa chỉ IP cho IP của bộ định tuyến của bạn nếu cần (mặc dù hầu hết được đặt để sử dụng phạm vi 192)
điện thoại 192.168.1.1
Khi bạn đã ở đó, bạn thường có thể nhập lệnh trợ giúp để xem các tùy chọn là gì. Đối với Verizon FIOS, tùy chọn mà tôi đang tìm kiếm nằm trong phần phụ của hệ thống và được đặt tên là khởi động lại một cách khéo léo. Bạn phải thực sự gõ lại hệ thống khởi động lại hệ thống và không chỉ đơn giản là khởi động lại.
Khi bạn nhập lệnh tại dấu nhắc, bạn sẽ bị ngắt kết nối và bộ định tuyến sẽ được khởi động lại. Dễ thôi Nhưng ai muốn làm tất cả mà gõ?
Script Telnet thông qua Terminal (OS X hoặc Linux hoặc Cygwin trên Windows)
Chúng tôi sẽ cho rằng bạn có quyền truy cập vào bash shell, cho dù đó là trong hệ điều hành bình thường của bạn hay nếu hệ điều hành (Windows) của bạn không có bash, bạn có thể phải cài đặt Cygwin.
Thật dễ dàng để kịch bản một tập lệnh và đưa chúng vào ứng dụng telnet. Tất cả bạn cần làm là một cái gì đó như thế này:
(tên lệnh echo; echo othercommand) | điện thoại 192.168.1.1
Vấn đề duy nhất là thông tin đăng nhập dai dẳng mà bạn phải thông qua, nó không hiển thị ngay lập tức. Vì vậy, nếu bạn chuyển sang một quản trị viên tiếng vang tiếng Nhật, và sau đó là mật khẩu tiếng vang tiếng vang, thì nó sẽ xảy ra quá nhanh và sẽ không được gửi đến máy chủ. Giải pháp? Sử dụng lệnh ngủ!
Thêm vào một vài lệnh ngủ 3, để chờ ba giây, giải quyết vấn đề. Trước tiên, chúng tôi sẽ lặp lại tên người dùng và mật khẩu, sau đó chúng tôi sẽ lặp lại lệnh khởi động lại và mỗi lần chúng tôi sẽ đợi ba giây giữa. Lệnh cuối cùng sẽ khởi động lại máy chủ ngay lập tức:
(ngủ 3; echo admin; ngủ 3; echo mypassword; ngủ 3; echo hệ thống khởi động lại; ngủ 3;) | điện thoại 192.168.1.1
Bạn có thể đặt nó vào một kịch bản shell và chạy nó bất cứ khi nào bạn muốn. Hoặc bạn có thể thêm nó vào cron của mình như thế này (trên OS X hoặc Linux):
crontab -e
Thêm dòng này ở đâu đó:
1 7 * * * (ngủ 3; echo admin; ngủ 3; echo mypassword; ngủ 3; echo hệ thống khởi động lại; ngủ 3;) | điện thoại 192.168.1.1
Điều này sẽ khởi động lại bộ định tuyến của bạn lúc 7:01 sáng mỗi sáng.
Khởi động lại bộ định tuyến theo cách Windows
Nếu bạn đang chạy Windows, việc lập lịch trình này sẽ tự động phức tạp hơn rất nhiều, nhưng chúng tôi chắc chắn có thể tạo kịch bản đủ dễ dàng. Trước tiên, bạn cần truy cập Bảng điều khiển, truy cập các tính năng của Windows Turn Windows trên hoặc tắt bảng điều khiển (chỉ cần tìm kiếm), sau đó kích hoạt Máy khách Telnet.
Bây giờ bạn có thể dán đoạn mã sau vào Notepad, nhưng thay đổi IP của bộ định tuyến nếu cần và thay đổi dòng mật khẩu thành mật khẩu thực tế của bạn. Bạn có thể cần chỉnh sửa tập lệnh cho các lệnh khác nhau.
Tùy chọn rõ ràng Dim oShell đặt oShell = Wscript.CreateObject ("WScript.Shell") oShell.Run "telnet" WScript.S ngủ 3000 oShell.Sendkeys "mở 192.168.1.1 ~" WScript.S ngủ 3000 oShell.Sendkeys "admin ~". Ngủ 3000 oShell.Sendkeys "mypassword ~" WScript.S ngủ 3000 oShell.Sendkeys "khởi động lại hệ thống ~" WScript.S ngủ 3000 oShell.Sendkeys "~" Wscript.Quit
Lưu nó dưới dạng một phần mở rộng .vbs, và sau đó bạn có thể nhấp đúp vào nó bất cứ khi nào bạn muốn khởi động lại bộ định tuyến.
Lập lịch trình trong Windows với tác vụ theo lịch trình
Mở Trình lập lịch tác vụ và tạo Tác vụ cơ bản mới, đặt tên và lịch biểu - hàng ngày vào một thời điểm nhất định sẽ hoạt động. Sau đó, sử dụng tùy chọn Bắt đầu chương trình và duyệt đến tệp tập lệnh mà bạn đã tạo.
Đó là khá nhiều tất cả những gì bạn phải làm.
Chú thích: các hướng dẫn trong bài viết này dành riêng cho Verizon FIOS nhưng bạn có thể làm điều này với bất kỳ bộ định tuyến nào. Vui lòng cho chúng tôi biết trong các nhận xét nếu bạn làm cho nó hoạt động với bộ định tuyến khác và chúng tôi sẽ cập nhật bài viết để phản ánh nó.