Projects


mhost  

mhost  

A modern take on the classic host DNS lookup utility including an easy to use and very fast Rust library.

mhost is very fast and uses multiple DNS servers concurrently to aggregate all results for more reliable lookups. You can use hundreds of name servers. If you don’t know that many name servers personally, mhost allows you to download up-to-date server lists from public-dns and OpenNIC. It also comes with a serious list of publicly available name servers built-in. mhost supports classic DNS over UDP and TCP as well as modern DNS over TLS (DoT) and HTTP (DoH). mhost presents results in an easy, human readable format as well as JSON for post-processing. In case you want to do service lookups, mhost helps you with easy to use service lookups.

In addition to lookups, mhost may be used to discover host names and subdomains of domains as well as lint DNS zone configurations. You can use all these capabilities of mhost in your own projects using the async mhost Rust library.

nmap-analyze  

nmap-analyze  

Analyzes and compares nmap scan results with port specification for easy verification of firewall and port filter configurations

nmap is a highly sophisticated and widely used port scanner. It scans a single host or a group of hosts for open TCP and UDP ports. This allows administrators to verify firewall and port filter configurations. nmap-analyze is a very simplistic tool that helps to ease this verification process. Basically, it takes nmap’s scan results as XML, compares these results for each host scanned with a specification, and reports all deviations. nmap-analyze supports both, human readable as well as JSON output. The later can be used for further post-processing.

nmap-analyze needs three inputs: 1. nmap scan results in XML format, 2. a mapping of IP addresses to ports specifications, and 3. the port specifications. The mapping allows you to define groups of hosts that are mapped to the same port specification.

ifconfig-rs  

ifconfig-rs  

Yet another "what's my IP" clone but this time written in Rust and with an API

ifconfig-rs is yet another “what’s my IP address” service currently powering myip.rs. It is written in Rust (hence the “-rs” suffix) using the Rocket web framework and includes GeoLite2 data created by MaxMind, available from http://www.maxmind.com. The UI is made with uikit. It is MIT licensed so please feel free to clone and to fork it.

ifconfig_rs offers an API to query information like the origin’s IP address, TCP port, host name, geoip based location, ISP, as well as user agent. See myip.rs for API and special CLI tool support.

Features

  • It’s really fast.
  • Shows your IP address, TCP port, host name, geoip based location, ISP, and user agent.
  • Google Maps integration for geoip location
  • JSON API
  • Special support for CLI tools like curl, httpie, and wget. API calls will be answered with just the base information followed by a newline for easy script integration.

luftpost  

luftpost  

Watches luftdaten.info particulates sensors and sends e-mails if measurements exceed thresholds

luftdaten.info offers a very easy do-it-yourself instruction on how to build an inexpensive yet powerful particulates sensor complete with a fully functional firmware. This firmware regularly measures the particulates concentration and transmits the resulting data to luftdaten.info where it is processed and displayed on a world map. Even though most sensors are deployed in Germany you can find sensors all over the world.

luftpost is a simple program that monitors luftdaten.info sensors and notifies you via e-mail in case a particulates concentration measurement exceeds a threshold. The e-mail is nicely formatted and may contain the very same graphs that luftdaten.info offers — see below for an example. The notification can be triggered by every measurement, only when a measurement exceeds a threshold, or on changes only, i.e., once after exceeding a threshold and then after returning back below a threshold.

rs-collector  

rs-collector  

An scollector compatible telemetry collector for Galera, JVM, Mongo, Postfix etc.

rs-collector is a Bosun-compatible collector for various services that are not covered by scollector, and that we use at CenterDevice.

Collectors

  1. Galera - Collects metrics about the cluster status and cluster sync performance of a MySQL Galera cluster.
  2. HasIpAddr - Checks if a host has bound specific IPv4 addresses.
  3. JVM - Collects garbage collection statistics.
  4. MongoDB - Collects replicaset metrics.
  5. Postfix - Collects queue lengths for all postfix queues.
  6. rs-collector - Collects internal metrics for rs-collector.