DNS Statistics Collector https://www.dns-oarc.net/oarc/data/dsc
2025-09-11 15:18:55 +02:00
.builds CI updates 2025-09-10 11:37:11 +02:00
.copr SPEC 2024-11-11 16:51:40 +01:00
.forgejo/workflows fix scan-build 2025-09-11 15:11:00 +02:00
debian Migrate to Codeberg 2025-09-03 13:14:26 +02:00
doc License 2019-02-11 09:20:10 +01:00
m4 Update Copyright and known TLDs 2022-01-11 11:43:33 +01:00
rpm SPEC 2024-11-11 17:31:12 +01:00
src Migrate to Codeberg 2025-09-03 13:14:26 +02:00
.clang-format Code formatting and moved external code to own directory 2017-08-17 10:41:51 +02:00
.gitignore Configure options 2018-07-05 12:50:16 +02:00
.gitmodules Migrate to Codeberg 2025-09-03 13:14:26 +02:00
autogen.sh Configure options 2018-07-05 12:50:16 +02:00
CHANGES Release 2.15.2 2024-08-30 10:51:23 +02:00
configure.ac Migrate to Codeberg 2025-09-03 13:14:26 +02:00
fmt.sh Known TLDs 2020-05-08 12:13:42 +02:00
LICENSE Copyright 2024-04-23 14:38:10 +02:00
Makefile.am Remove upload scripts 2022-01-13 12:05:37 +01:00
README.md Migrate to Codeberg 2025-09-03 13:14:26 +02:00
sonar-project.properties.local SonarCloud 2020-06-15 13:38:49 +02:00
UPGRADE.md Release 2.0.0rc1 2016-05-10 08:07:31 +02:00

DNS Statistics Collector

Bugs Security Rating

DNS Statistics Collector (DSC) is a tool used for collecting and exploring statistics from busy DNS servers. It can be set up to run on or near nameservers to generate aggregated data that can then be transported to central systems for processing, displaying and archiving.

Together with dsc-datatool the aggregated data can be furthur enriched and converted for import into for example InfluxDB which can then be accessed by Grafana for visualzation, see this wiki on how to set up that:

DSC data transforming and enriching tool can be found here:

More information about DSC may be found here:

Issues should be reported here:

General support and discussion:

Dependencies

dsc requires a couple of libraries beside a normal C compiling environment with autoconf, automake, libtool and pkgconfig.

dsc has a non-optional dependency on the PCAP library and optional dependency on the MaxMindDB library (for the asn and country indexer).

To install the dependencies under Debian/Ubuntu:

apt-get install -y libpcap-dev

To install the dependencies under CentOS (with EPEL/PowerTools enabled):

yum install -y libpcap-devel

To install the dependencies under FreeBSD 10+ using pkg:

pkg install -y libpcap

NOTE: It is recommended to install the PCAP library from source/ports on OpenBSD since the bundled version is an older and modified version.

DNSTAP support

To enable DNSTAP support, first install the necessary dependencies and then run configure with --enable-dnstap.

  • Debian/Ubuntu: apt-get install -y libdnswire-dev libuv1-dev
  • CentOS: yum install -y dnswire-devel libuv-devel
  • FreeBSD: pkg install -y libuv
  • OpenBSD: pkg_add libuv

dnswire packages for Debian, Ubuntu and CentOS exists at https://dev.dns-oarc.net/packages/, for other distributions please see https://codeberg.org/DNS-OARC/dnswire.

Building from source tarball

The source tarball from DNS-OARC comes prepared with configure:

tar zxvf dsc-version.tar.gz
cd dsc-version
./configure [options]
make
make install

NOTE: If building fails on FreeBSD/OpenBSD, try adding these configure options: --with-extra-cflags="-I /usr/local/include" --with-extra-ldflags="-L/usr/local/lib".

Building from Git repository

If you are building dsc from it's Git repository you will first need to initiate the Git submodules that exists and later create autoconf/automake files, this will require a build environment with autoconf, automake, libtool and pkgconfig to be installed.

git clone https://codeberg.org/DNS-OARC/dsc.git
cd dsc
git submodule update --init
./autogen.sh
./configure [options]
make
make install

NOTE: If building fails on FreeBSD/OpenBSD, try adding these configure options: --with-extra-cflags="-I /usr/local/include" --with-extra-ldflags="-L/usr/local/lib".

Puppet

John Bond at ICANN DNS Engineering team has developed a puppet module for DSC, the module and code can be found here: