Mikrotik රවුටරවල අවසන් වරට සුරකින ලද වින්‍යාසය ස්වයංක්‍රීයව ප්‍රතිසාධනය කිරීම

බොහෝ දෙනෙකුට අපූරු විශේෂාංගයක් හමු වී ඇත, උදාහරණයක් ලෙස, HPE ස්විචයන් මත - කිසියම් හේතුවක් නිසා වින්‍යාසය අතින් සුරකිනු නොලැබේ නම්, නැවත පණගැන්වීමෙන් පසු පෙර සුරකින ලද වින්‍යාසය ආපසු හරවනු ලැබේ. තාක්ෂණය තරමක් නිර්දය (එය සුරැකීමට අමතක වී ඇත - එය නැවත කරන්න), නමුත් සාධාරණ සහ විශ්වසනීයයි.

නමුත් Mikrotik හි, දත්ත ගබඩාවේ එවැනි කාර්යයක් නොමැත, ලකුණ දිගු කලක් තිස්සේ දැන සිටියද: "දුරස්ථව රවුටරයක් ​​සැකසීම යනු දිගු ගමනකි." අසල ඇති රවුටරයක් ​​පවා "නැවත සැකසීමට පෙර ගඩොල්" බවට පත් කිරීම ඉතා පහසුය.

පුදුමයට කරුණක් නම්, මම මේ කාරණය සම්බන්ධයෙන් එක අත්පොතක් සොයා ගත්තේ නැත, එබැවින් මට එය අතින් කිරීමට සිදු විය.

අපි කරන පළමු දෙය නම් වින්‍යාසයේ උපස්ථ පිටපතක් සෑදීම සඳහා ස්ක්‍රිප්ට් එකක් සෑදීමයි. අනාගතයේදී, අපි මෙම ස්ක්‍රිප්ට් එක සමඟ රාජ්‍යය "සුරකින්නෙමු".

යන්න පද්ධතිය -> ස්ක්‍රිප්ට් සහ පිටපතක් සාදන්න, උදාහරණයක් ලෙස, "සම්පූර්ණ උපස්ථ" (ඇත්ත වශයෙන්ම, උපුටා දැක්වීම් නොමැතිව).

system backup save dont-encrypt=yes name=Backup_full

අපි මුරපදය භාවිතා නොකරමු, එසේ නොමැතිනම් එය යාබද ස්ක්‍රිප්ටයේ පැහැදිලිව සඳහන් කිරීමට සිදුවනු ඇත; එවැනි "ආරක්ෂාව" යන කාරණය මට නොපෙනේ.

අපි වින්‍යාසය ආරම්භ කරන සෑම අවස්ථාවකම එය ප්‍රතිසාධනය කරන දෙවන ස්ක්‍රිප්ට් එකක් සාදන්නෙමු. අපි එය "full_restore" ලෙස හඳුන්වමු.

මේ පිටපත ටිකක් සංකීර්ණයි. කාරණය වන්නේ වින්යාසය ප්රතිෂ්ඨාපනය කරන විට, නැවත පණගැන්වීමක් ද සිදු වේ. කිසිදු පාලන යාන්ත්‍රණයක් භාවිතා නොකර, අපට චක්‍රීය නැවත පණගැන්වීමක් ලැබෙනු ඇත.

පාලන යාන්ත්රණය ටිකක් "ඕක්", නමුත් විශ්වසනීය විය. ස්ක්‍රිප්ට් දියත් කරන සෑම අවස්ථාවකම, එය ප්‍රථමයෙන් “restore_on_reboot.txt” ගොනුව තිබේදැයි පරීක්ෂා කරයි.
එවැනි ගොනුවක් තිබේ නම්, උපස්ථයකින් ප්රතිෂ්ඨාපනය කිරීම අවශ්ය වේ. අපි ගොනුව මකා දමා නැවත පණගැන්වීමෙන් පසුව ප්රතිසාධනය කරන්නෙමු.

එවැනි ගොනුවක් නොමැති නම්, අපි සරලව මෙම ගොනුව නිර්මාණය කර කිසිවක් නොකරමු (එනම්, මෙය දැනටමත් උපස්ථයකින් ප්රතිෂ්ඨාපනය කිරීමෙන් පසු දෙවන බාගැනීමයි).

:if ([/file find name=restore_on_reboot.txt] != "") do={ /file rem restore_on_reboot.txt; system backup load name=Backup_full password=""} else={ /file print file=restore_on_reboot.txt }

කාර්යය කාලසටහනට එකතු කිරීමට පෙර, මෙම අදියරේදී ස්ක්‍රිප්ට් පරීක්ෂා කිරීම වඩාත් සුදුසුය.

සෑම දෙයක්ම හරි නම්, තුන්වන සහ අවසාන පියවර වෙත යන්න - සෑම ඇරඹුමකදීම ස්ක්‍රිප්ට් ධාවනය කිරීමේ කාර්යය උපලේඛකයාට එක් කරන්න.

යන්න පද්ධතිය -> උපලේඛනය සහ නව කාර්යයක් එක් කරන්න.
ක්ෂේත්රයේ ආරම්භක කාලය දක්වන්න පණ ගන්වන්න (ඔව්, අපි එය අකුරු වලින් ලියන්නේ එලෙසයි)
ක්ෂේත්රයේ සිදුවීමේදී අපි ලියනවා
/system script run full_restore

ඊළඟට වින්‍යාසය සුරකින ස්ක්‍රිප්ට් ධාවනය කරන්න! මේ ඔක්කොම ආයෙ කරන්න ඕන නෑ නේද?

පරීක්ෂා කිරීමට හෝ වැදගත් දෙයක් මකා දැමීමට අපි සැකසුම් වලට "කසළ" කිහිපයක් එකතු කර අවසාන වශයෙන්, රවුටරය නැවත ආරම්භ කිරීමට උත්සාහ කරන්න.

ඔව්, බොහෝ අය පවසනු ඇත: "ආරක්ෂිත මාදිලියක් තිබේ!" කෙසේ වෙතත්, කාර්යයේ ප්රතිඵලයක් ලෙස, ඔබට රවුටරය වෙත නැවත සම්බන්ධ වීමට සිදු වුවහොත් එය ක්රියා නොකරනු ඇත (උදාහරණයක් ලෙස, ඔබ සම්බන්ධ වී ඇති wifi ජාලයේ ලිපිනය හෝ පරාමිතීන් වෙනස් කළහොත්). තවද මෙම මාදිලිය සක්රිය කිරීමට "අමතක" වීමේ හැකියාව ගැන ඔබ අමතක නොකළ යුතුය.

PS දැන් ප්රධාන දෙය වන්නේ "සුරකින්න" අමතක නොකිරීමයි.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න