\

Pythonはネットワーク自動化に非常に有用な言語であり、その中でもtelnetlibライブラリは特に注目に値します。このライブラリはPythonの標準ライブラリに含まれており、Telnetプロトコルをサポートしています。Telnetは、ネットワーク機器やサーバーと対話的に通信するためのプロトコルの一つです。

以下に、telnetlibライブラリを使用してTelnetセッションを開始し、コマンドを送信する基本的な例を示します。

import telnetlib

# Telnet接続先の情報
host = "192.168.10.254"
port = 23  # デフォルトのTelnetポート番号

# Telnetセッションの開始
tn = telnetlib.Telnet(host, port)

# ユーザー名とパスワードの送信
tn.read_until(b"Password: ")
tn.write(b"\\n")

tn.read_until(b"Username: ")
tn.write(b"admin\\n")

tn.read_until(b"Password: ")
tn.write(b"password\\n")

# コマンドの送信
tn.write(b"show config\\n")

# コマンドの結果を取得
output = tn.read_until(b">", timeout=10).decode("utf-8")

# 結果の表示
print(output)

# Telnetセッションの終了
tn.close()

このコードは、ヤマハのルータRTX1210に接続して、情報を取得しています。

しかし、telnetlibライブラリはPython3.11から非推奨となり、Python3.13から正式に削除される予定です。そのため、将来的なアップデートに備えて、telnetlib3ライブラリかサードパーティ製ライブラリへの移行も検討しておくとよいでしょう。

以上がPythonとtelnetlibを用いたネットワーク自動化の基本的な手法です。これを応用し、さまざまなネットワーク機器の設定や確認の自動化を行うことが可能です。ネットワーク運用の効率化にぜひ活用してみてください。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です