Terkin Agent

Introduction

As we have been busy to build this small tool for Wartungsmodus für den Terkin-Datenlogger, there might be some explanatory words missing yet. Let’s catch up on that. Also thanks to all who participated in making this happen.

About

The Terkin Agent [1] acts as a generic MAC address network scanner like a poor-man’s LAN sweeper. Multiple ARP address prefixes can be specified comma-separated on the command line to designate devices of interest. After the agent finds respective devices on the local network, it can optionally invoke actions on them.

Synopsis

make terkin-agent action=monitor

Output

2019-07-12 16:24:29,024  IP networks found: ['192.168.178.0/24']
2019-07-12 16:24:29,024  Waiting for any devices having MAC address prefixes of ['80:7d:3a', '30:ae:a4'] to appear on your local network
2019-07-12 16:24:29,528  Sending ARP ping request to 192.168.178.0/24
2019-07-12 16:24:30,488  Found device at {'mac': '80:7d:3a:c2:de:44', 'ip': '192.168.178.44'}

By default, the program will listen for devices from the family of Pycom modules. See also MAC-Adressierungs-Schema der PyCom-Boards. [1:1]

Screenshot

When the Terkin Agent detects a device of interest, it will emit a desktop notification for your convenience.
image

Details

Under the hood, it works by sweeping through all IP networks attached to your workstation using ARP ping requests when starting up. While sitting there and running, it will sniff for any ARP traffic to find devices of interest and optionally will invoke some actions on them.

Possible actions are the currently implemented subcommands "maintain" and "field" to pull the device into maintenance mode and put it back into field mode respectively. More details about what they actually do have been described within Wartungsmodus für den Terkin-Datenlogger and constitute the baseline for Maintenance mode galore.


  1. It is currently implemented within the single file tools/terkin.py. ↩︎ ↩︎

1 Like