Skip to content

v1.3.1

Latest

Choose a tag to compare

@github-actions github-actions released this 25 Sep 11:58
441ea02

v1.3.1 で変わったこと

外部レビューと、修正ごとの再検査を重ねて見つかった不具合を直しました。

変更

  • 画面: クリアとエクスポートのボタンを、どの画面でも一覧・ログのすぐ上に左寄せで並べました(FTP / TFTP / SFTP サーバーにもエクスポートを追加)
  • 画面: 窓を狭めてもボタンが隠れないようにしました(SNMP は最小幅 1160px → 376px)。SNMP の GET / WALK はポート欄をホストの下へ移しました
  • 保存: ログ記録の開始とエクスポートは、前回保存したフォルダから開きます
  • 保存: エクスポートは、選んだ種類に合わせて拡張子が変わります(Syslog に CSV を追加)。付け替えた先にファイルがあるときは上書きを確認します
  • 端末の範囲選択は、ドラッグした時点でクリップボードへコピー。右クリックは貼り付け(改行や制御文字を含む内容は、送る前に確認)
  • 端末へのテキストのドラッグ&ドロップと、編集メニューの「ペースト」(Ctrl+Shift+V)を廃止
  • キープアライブとマクロは、接続先リストで機器を右クリック →「ツール」へ移動(未接続・接続先が違う項目では選べません)
  • タブを開いている機器は、名前と接続先(ホスト・ポート・プロトコル)の変更、削除ができません
  • 打ちかけの入力があるあいだは、キープアライブを送りません
  • SNMP の GET / WALK を途中で止められます(そこまでの結果を「途中まで」として表示・書き出し)
  • NetBelt を 2 つ同時に起動できなくなりました(2 つ目は動いている窓を前に出して終了)
  • 保存されたパスワードを復号できない機器へは接続しません(起動時にも知らせます)
  • known_hosts に読めない行があり、名前欄がその機器の接続先と完全に一致するときは、その機器への接続を断ります(ワイルドカードの行やハッシュ化した名前の壊れた行は照合せず、警告だけ出して接続します)。保存済みと違う鍵が来たときは上書きせず中止します
  • SFTP クライアント: 上書きの確認を経ていない送信は既存ファイルを置き換えません。同じ保存先への二重ダウンロードを断ります。リンクの権限変更はリンク先の現在値を初期値にします
  • 内蔵 FTP / TFTP / SFTP サーバ: 同じ名前へ同時にアップロードされたときは、後から来た方を断ります
  • 同じ名前の共通マクロ(プリセット)が複数あるときは、その名前のマクロの実行・編集・削除を断ります(起動時にも知らせます)
  • 自動更新: インストール先を排他してから書き換え、展開の直前に ZIP のハッシュを照合します
  • ログ記録中のダイアログは、アプリが書いたバイト数を表示します(記録の開始・停止のメッセージは廃止)

修正

端末・ログ

  • 長い出力の途中で上へスクロールしても、一番下へ戻されていた
  • show tech-support のような大量出力で端末が固まっていた
  • 画面消去や行の挿入・削除を含む出力で、数秒〜十数秒固まることがあった
  • 受信が描画より速いと、描いていない分が際限なく溜まっていた
  • コピーと全ログ保存で、無関係な行が 1 行に繋がる・1 行が 2 行に割れることがあった
  • 窓の大きさや文字サイズを変えると、受信済みの文字が消えることがあった
  • 更新のために終了すると、記録中のログが閉じられず受信分が失われていた
  • 閉じている途中に、更新の知らせなどのダイアログが開くことがあった
  • 大きな貼り付けの送信が、長さに対して極端に遅くなっていた
  • SSH / Telnet で、受け取りの遅い機器へ大きく貼り付けると、途中でセッションが切れていた

接続・設定

  • 起動時に Default グループを補う保存が、Windows では必ず失敗していた
  • 設定ファイルの一部が壊れているだけで、設定全体が初期状態に戻っていた
  • 同じ名前の機器が 2 台あると、編集・削除・移動で別の 1 台が書き換わる・消えることがあった
  • グループの変更が保存に失敗しても、終了時に保存されていた
  • NetBelt を 2 つ起動していると、known_hosts の保存がぶつかって鍵が残らないことがあった
  • known_hosts にハッシュ化した名前の壊れた行が 1 行あるだけで、どの機器にも接続できなくなっていた
  • 設定のポート番号が文字列("22" など)だと、SSH で保存済みのホスト鍵と照合されず、別の鍵を受け入れていた(Telnet は繋がらなかった)
  • 同じ名前の機器が別のグループにあると、接続した機器とは別のグループの自動実行コマンドを送っていた
  • 同じ名前の共通マクロが複数あると、選んだものと別のマクロが送られる・まとめて削除されることがあった
  • コンソール接続のボーレート変更をポートが拒んでも、表示と再接続用の設定が戻らなかった

内蔵サーバ

  • TFTP: 機器が転送を打ち切っても再送を続けていた
  • Syslog(TCP): 終端の無い最後の 1 行が届かないことがあった。保持件数の設定が壊れていると受信できなかった
  • FTP: アップロードの進捗が出ていなかった。終わった転送の名前で進捗が出ることがあった
  • FTP / SFTP: 同じ名前へ同時にアップロードされると、どちらも成功と出るのに中身が混ざっていた
  • TFTP: 大きさ(tsize)が極端な要求で画面にエラーが出ていた。停止の待ち時間が転送の本数ぶん長くなっていた
  • Syslog とサーバのログ: 書き出したテキストで、特殊な改行文字によって 1 行が割れることがあった

SNMP・MIB

  • 別ベンダーの MIB にある同名の定義を親として借りて、Trap に他社の名前が付くことがあった(一部の形は未対応)
  • IMPORTS などの語が定義の名前として登録されることがあった
  • BOM 付きで連結した MIB で、モジュールの境目を取り違えていた
  • mibs フォルダのファイルが読めない・消えたときに、MIB を 1 件も読み込めないことがあった
  • 書き出した CSV に対象ホストが入っていなかった

SFTP クライアント

  • 置き換えに失敗したとき、最終名も一時名も機器から消えることがあった
  • 時間切れや切断のあとも「接続中」の表示が残っていた。同じ知らせが 2 回出ることがあった
  • リンクを確かめている最中に SFTP が切れると、「接続中」のまま残っていた

自動更新

  • インストール先へ書き込めないときに「別の更新が進行中です」と出ていた
  • 更新の残骸(適用用の写し・控え・一時名の実行ファイル)が片付かず溜まっていた
  • 2 つの NetBelt が同じ更新を保存すると、「ダウンロード完了」と出たのに適用できないことがあった
  • TEMP のパスに [ ] があると、更新が毎回失敗していた(1.3.0 以前からの更新では、その 1 回だけ手で入れ替えが必要です。README を参照)

1.2.0 以前から更新する場合は、更新を当てるのが旧版の updater.bat のため、
途中で英語のエラーが出ることがあります。詳しくは README の自動更新の項を
参照してください(NetBelt を終了してから当ててください)。


NetBelt ポータブル版

📄 ライセンスと対応するソースコード

NetBelt は GNU General Public License v3.0 で配布しています。

この実行ファイルには PyQt6 (GPL-3.0)、Qt (LGPL-3.0)、paramiko (LGPL-2.1-or-later)
などが組み込まれています。この実行ファイルに対応するソースコードは、
本リリースに自動添付される Source code アーカイブ、および
https://github.com/gomanizm/NetBelt のタグ v1.3.1 で入手できます。
ビルドは同梱の requirements.txt(バージョン固定済み)と NetBelt.spec、
Python 3.11 で再現できます。

組み込まれた第三者パッケージの一覧・ライセンス本文・配布元は、
ZIP 内の THIRD-PARTY-NOTICES.txt を参照してください。

📦 パッケージ内容

  • NetBelt.exe - アプリケーション本体
  • updater.bat - 自動更新が使うスクリプト(削除しないでください)
  • README.txt - 使い方ガイド
  • LICENSE.txt - NetBelt のライセンス(GPL-3.0)
  • THIRD-PARTY-NOTICES.txt - 同梱した第三者パッケージのライセンス表示
  • CHANGELOG.txt - この版で変わったこと
  • mibs/ - MIB ファイルの配置先(既定では空。README を参照)

ZIP のチェックサムは ZIP の中ではなく、本リリースに別添えの
NetBelt-v1.3.1-Windows-Portable.zip.sha256 です。自動更新がダウンロード後に
照合し、一致しなければ更新を中止します(破損の検知が目的で、GitHub 自体が
侵害された場合の改ざんは検知できません)。

🚀 インストール方法

  1. ZIPファイルをダウンロード
  2. 任意のフォルダに展開
  3. NetBelt.exe をダブルクリックして起動

💻 動作環境

  • Windows 10 / Windows 11 (64bit)
  • Pythonのインストールは不要
  • すべての依存ファイルが含まれています

✨ 主な機能

  • SSH、Telnet、シリアル接続に対応
  • デバイス管理とグループ化
  • マクロ機能
  • SNMP Trap / Syslog 受信(カスタムMIB対応)
  • SFTP ファイル転送

📝 初回起動

  • 初回起動時に config.json が自動生成されます
  • MIB ファイルは同梱していません。mibs/README.md の手順で配置してください

詳しい使い方は README.md をご覧ください。