SNMP クライアント
前回(SNMP 入門のための環境構築)の続きで、クライアント側を作ってみます。
WPFアプリ
WPFアプリを準備します。
Nuget
WPFアプリからSNMPの通信を行うため、NuGetライブラリを追加します。
今回は以下のライブラリを追加します。
SNMPリクエスト
SNMPリクエスト部分の処理を以下に示します。
var endpoint = new IPEndPoint(IPAddress.Parse(_ipAddress), _port);
var community = new OctetString(_community);
var result = Messenger.Get(VersionCode.V1, endpoint, community, new List<Variable> { new Variable(new ObjectIdentifier(oid)) }, 6000);
if (result.Count > 0 && result[0].Data.TypeCode != SnmpType.NoSuchObject)
{
return result[0].Data.ToString();
}
else
{
throw new Exception("SNMPリクエストが失敗しました。");
}
まとめ
作成したソースコードはGitHubに登録しました。詳細は以下のリンクからご覧いただけます。