twpcap

Network sensor by packet capture for TWSNMP FC

View on GitHub

twpcap

TWSNMP FCのためのパケットキャプチャーによるネットワークセンサー

English 日本語

Godoc Reference Go Report Card

概要

パケットキャプチャーからTWSNMP FCで監視するために必要な情報をsyslogまたはMQTTで送信するためのセンサープログラムです。
現在のバージョンでは以下の情報を取得できます。

状態

ダウンロード

実行バイナリ

各プラットフォーム向けにビルド済みの実行ファイルは、GitHubのリリースからダウンロードできます。

Dockerイメージ

Dockerイメージは GitHub Container Registry (ghcr.io) からも配布しています。

docker pull ghcr.io/twsnmp/twpcap:latest

ビルド

ビルドはmakeで行います。

$make

以下のターゲットが指定できます。

  all        全実行ファイルのビルド(省略可能)
  mac        Mac用の実行ファイルのビルド
  docker     Docker Imageのビルド
  clean      ビルドした実行ファイルの削除
  zip        リリース用のZIPファイルを作成

実行すれば、MacOS, Windows, Linux(amd64), Linux(arm)用の実行ファイルが、distのディレクトリに作成されます。

Dockerイメージを作成するためには、

$make docker

を実行します。twsnmp/twpcapというDockerイメージが作成されます。

実行

使用方法

Usage of ./twpcap:
  -debug
    	debug mode
  -iface string
    	monitor interface
  -interval int
    	syslog send interval(sec) (default 600)
  -list
    	list interface
  -mqtt string
    	mqtt destination list
  -mqttclient string
    	mqtt client id (default "twpcap")
  -mqttpassword string
    	mqtt password
  -mqtttopic string
    	mqtt base topic (default "twpcap")
  -mqttuser string
    	mqtt user name
  -retention int
    	data retention time(sec) (default 3600)
  -syslog string
    	syslog destnation list

送信先の設定

Syslog

syslogの送信先はカンマ区切りで複数指定できます。ポート番号を指定することもできます。

-syslog 192.168.1.1,192.168.1.2:5514

MQTT

MQTTブローカーの送信先を指定します。ユーザー名やパスワードが必要な場合はそれぞれのオプションを使用してください。

-mqtt 192.168.1.100:1883 -mqttuser user -mqttpassword pass

MQTTのトピックは -mqtttopic で指定したベーストピックの下にプロトコル名が付与されます(例: twpcap/DNS, twpcap/TLS など)。

パケットキャプチャーするLAN I/Fのリスト

以下のコマンドで表示できます。

# ./twpcap -list

起動方法

モニタするLAN I/F(-iface)と、送信先(-syslog または -mqtt)が必要です。

# ./twpcap -iface eth0 -syslog 192.168.1.1

環境変数を使用して設定することも可能です。 例: TWPCAP_IFACE=eth0, TWPCAP_SYSLOG=192.168.1.1

TWSNMP FCのパッケージ

TWSNMP FCのパッケージにtwpcapが含まれています。
詳しくは、noteの記事を見てください。

著作権

LICENSE を参照してください。

Copyright 2021-2026 Masayuki Yamai