全1305文字
ネットワークを管理するには、ネットワーク機器や回線の状態を常に把握し、状況に応じて適切に設定する必要がある。そのために必要な作業をすべて手作業で行うのは大変だ。
よく行うのが、入力する順番にコマンドを並べた手順書を作り、毎回その手順通りにコマンドを打ち込むやり方だ。これだと、コマンドの数が増えるに従って多くの手間や時間がかかるようになる。
それに加え、手作業だとミスも発生しやすくなる。設定に誤りがあっても、すぐにネットワークの挙動がおかしくなるとは限らない。後になって不具合が発生することも多い。こうした場合は、不具合の原因を調べるだけでも大変だ。
こうした作業をプログラムとして記述すれば、そのプログラムを実行するだけで作業が完了する。手間や時間が節約できるのに加え、手作業に起因するミスも起こらなくなる。
Pythonで作業を自動化しよう
こうしたプログラミングによるネットワーク管理の自動化に適しているのが、「Python」というプログラミング言語である。Pythonの最大の特徴は、利用できるライブラリーが豊富なことだ。いわば「IT分野の十徳ナイフ」といえる。
特に人工知能(AI)関連のライブラリーが充実していることで有名だが、ネットワーク関連のライブラリーも多い。パケットを生成・送信したり取得したりできる「Scapy」、Webページの内容を解析して情報を抜き取るスクレーピングを行う「Beautiful Soup」などのライブラリーがある。