TNT SOLUTION RECRUIT 2021

MEMBER BLOG社員ブログ

Turn the Lights Back On

こんにちは、T.Sです。みなさんお元気ですか?

突然ですが、私は昔からビリージョエルというアーティストが好きなんですが…
今年1月に来日したばかりでなく、17年ぶりの新譜を発表しました。
ファンとしてはぜひともライブに…と思っていましたが、諸事情からいけませんでした。
せめてもと思い、最近は通勤時にずっとビリージョエルを聴いています。

去年から、ローリングストーンズが新作を出し
ビートルズも「最後の新曲」として、ジョンレノンの生前デモテープを編集して曲を発表したり…
とクラシックロック好きには嬉しいニュースが多かったですが
私にとってはビリージョエルの新曲が一番嬉しかったです。

そんなことより…

社員ブログなのに音楽の話ばかりしていたらいけないのでそろそろ終わりにしまして…

最近、ネットワーク機器の設定を作業PCに保存するのが面倒だと感じる時があり
何とかして楽に行う方法がないかと考えてました。
ネットワーク機器の設定を保存するには、多くの場合以下の手順を踏みます。

  1. ターミナルソフトの起動
    ターミナルソフトは簡単に言うとサーバやネットワーク機器の設定を
    表示したり変える際に使用するソフトです。私はTera Termを使用しています。
  2. ログイン
    機器ログインするために必要な情報を入力します。
  3. コマンド実行
    設定を表示するためのコマンドを実行します。
  4. 実行したコマンドで出力された設定値を保存
    3で出力された値を作業PCに保存します。

大雑把にこんなものです。

まくろ

Tera TermにはTera Termマクロという動作をある程度自動化できる機能があるらしく…

ものは試し

ということで、実際にマクロを作ってみることにしました。
1つ1つコマンドを説明していくと、とんでもなく長くなりそうなので
頻出のコマンドだけ説明したいと思います。

sendln

文字列と改行を送信します。
sendln 'show running-config'
と入れておくと、「show running-config」を入力した上で
エンターを押したのと同様の動作になります。

pause

次の動作を行うまで、少し休止させたいにはこのコマンド。地味に使いそうなコマンドです。
pause 2
と書いておくと、次の指令まで2秒待ってくれます。
まれにマクロの処理が早すぎて、Tera Termが処理を行ってくれないときがあるので
適度にこのコマンドを入れておくと、エラーがなくなり幸せになれます。

wait

これも休止させるためのコマンドです。ですが、pauseとは役目が少し異なります。

wait 'Username:'

と設定することによって、「Username:」という文字列が表示されるまで待ってくれます。
先ほど紹介したsendlnコマンドとセットで使えばいい感じにログインを自動化できます。

wait 'Username:' ←「Username:」という文字列が表示されたら
sendln USERNAME ←「USERNAME」と入力しエンターの動作
wait 'Password' ←「Password」という文字列が表示されたら
sendln PASSWORD ←「PASSWORD」と入力しエンターの動作

こんな具合にできちゃいます。

そんなこんなで…

ああでもない、こうでもない、とコネコネこねくり回して
なんとか当初の目的であった「ネットワーク機器の設定を保存するためのマクロ」
が完成しました。

とはいえ素人がつくったマクロなので、業務に使用するには不十分です。
何かあったときに原因を探し出して修正できる程度まで学習したのち
業務に活用していけたらなと思います。

シェアする: