2016-04-28 13 views
0

私はPythonには新しく、get要求に応答するSNMPエージェントとして動作するようにシミュレートされた既存のスクリプトがあります。これは、次の機能を行います。PythonスクリプトでのSNMP OIDの比較

  1. が応答予想通り、この作品

として定義された文字列を送信要求

  • の長さを比較要求取得SNMPを収集します。

    このスクリプトを拡張して、要求で送信されたOIDを確認し、OIDに基づいて異なる応答を送信する必要があります。これを行う方法に関する提案はありますか?

  • 答えて

    0

    OIDが何であるかによって異なります。1.2.3.4のような文字列がある場合は、単純に文字列を直接比較できます。しかし、整数のリストにOIDを分割する方が便利です。

    >>> oidstr = '1.2.3.4' 
    >>> oid = [int(x) for x in oidstr.split('.')] 
    

    あなたにも、リストの平等を比較することができます。

    b'\x01\x02\x03\x04'のようなバイナリ文字列を使用している場合は、バイナリ文字列をiterableにすることができるので、同様の理解度(oid = [x for x in oidbin])を使用して整数リストに変換できます。