twsnmp / twsnmpfc

TWSNMP For Container
Apache License 2.0
10 stars 1 forks source link

Trap受信時に、プログラムが落ちる #3

Closed KOSNetworkIT closed 2 years ago

KOSNetworkIT commented 3 years ago

プライベートMIBのTrapを受信した際に、「TWSNMP FC」のプログラムが落ちる現象がありましたので、報告致します。

使用したのは、バージョン1.2.0です。

この事象は、NECのQX-Sシリーズのスイッチで発生しました。 ログインやコマンドを実行した際に起こった為、これらの操作の際に出力されたTrapを受信した事で発生している様です。

Trap送信を止めると、起こりませんでした。

なお、SNMPのバージョンは「v3」で、認証・暗号化ありです。

twsnmp commented 2 years ago

すみません。見逃してました。 GO言語のSNMPパッケージを更新したので、解決しているかもしれません。

twsnmp commented 2 years ago

v1.3.0でも発生するようならばpanicと表示されるデバックログを貼り付けていただければ ありがたいです。

KOSNetworkIT commented 2 years ago

ご返答頂き、ありがとうございます。

一度、時間のある時にでも、試してみます。

KOSNetworkIT commented 2 years ago

バージョン1.3.0を試してみました。

やはり、落ちます。

色々と試した所、Trap送信先の設定を行っていないスイッチに、TWSNMP FCを実行しているPCをTrap送信先にする設定を入れた途端に落ちました。

想像ですが、同コマンドを実行した際のTrapを受信した事で、発生しているのではないかと思っています。

正しいかどうかは分かりませんが、「panicと表示されるデバックログ」と思われる物を、以下に貼り付けておきます。


panic: interface conversion: interface {} is []uint8, not string

goroutine 55 [running]: github.com/twsnmp/twsnmpfc/logger.snmptrapd.func1(0xc000742000, 0xc0000f2000) /Users/ymimacmini/prj/twsnmp/twsnmpfc/logger/snmptrapd.go:84 +0x97f github.com/twsnmp/gosnmp.(TrapListener).listenUDP(0xc000640b90, 0x1f1708b, 0xb, 0x0, 0x0) /Users/ymimacmini/go/pkg/mod/github.com/twsnmp/gosnmp@v1.32.2/trap.go:219 +0x302 github.com/twsnmp/gosnmp.(TrapListener).Listen(0xc000640b90, 0x1f1708b, 0xb, 0x0, 0x0) /Users/ymimacmini/go/pkg/mod/github.com/twsnmp/gosnmp@v1.32.2/trap.go:349 +0x1dd github.com/twsnmp/twsnmpfc/logger.snmptrapd.func2(0xc000640b90) /Users/ymimacmini/prj/twsnmp/twsnmpfc/logger/snmptrapd.go:103 +0x4b created by github.com/twsnmp/twsnmpfc/logger.snmptrapd /Users/ymimacmini/prj/twsnmp/twsnmpfc/logger/snmptrapd.go:102 +0x22d

twsnmp commented 2 years ago

ありがとうございます。理由がわかりました。 修正します。 TRAPにOctet String型のデータが付いている場合に発生しているようです。 SNMPv3は関係ないようです。試してみます。

twsnmp commented 2 years ago
snmptrap -v 2c -c public 192.168.1.250  '' .1.3.6.1.6.3.1.1.5.3 .1.3.6.1.6.3.1.1.5.4 s test

で再現できました。

twsnmp commented 2 years ago

この問題は修正しました。次のリリースv1.4.0で反映されます。 Docker版は、明日には更新すると思います。 配布版は、他の修正後なので、今週末とかです。 ありがとうございました。

twsnmp commented 2 years ago

ただし、SNMPv3で暗号無しのモードに設定して、暗号ありのTRAPを受信すると 問題が発生するようです。ライブラリの問題なので別途対応します。

KOSNetworkIT commented 2 years ago

ご対応、ありがとうございました。

v1.4.0がリリースされたら、試してみようと思います。