diff options
author | Daniil Baturin <daniil@baturin.org> | 2018-05-14 06:10:04 +0200 |
---|---|---|
committer | Daniil Baturin <daniil@baturin.org> | 2018-05-14 06:10:04 +0200 |
commit | 860b229fe00998d2dd2d020d7dc847f99e709c26 (patch) | |
tree | 7e0b63c4b12ef82dbd7922dc963327ff8adf5a65 /src/op-mode | |
parent | 1e79af9f4684425a02427dd9146b1e4d38a93cb4 (diff) | |
download | vyos-1x-860b229fe00998d2dd2d020d7dc847f99e709c26.tar.gz vyos-1x-860b229fe00998d2dd2d020d7dc847f99e709c26.zip |
T564: initial implementation of the DNS forwarding op mode commands.
Diffstat (limited to 'src/op-mode')
-rwxr-xr-x | src/op-mode/vyos-dns-forwarding-statistics.py | 24 | ||||
-rwxr-xr-x | src/op-mode/vyos-restart-dns-forwarding.sh | 8 |
2 files changed, 32 insertions, 0 deletions
diff --git a/src/op-mode/vyos-dns-forwarding-statistics.py b/src/op-mode/vyos-dns-forwarding-statistics.py new file mode 100755 index 000000000..3d1e30aee --- /dev/null +++ b/src/op-mode/vyos-dns-forwarding-statistics.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 + +import subprocess +import jinja2 + +PDNS_CMD='/usr/bin/rec_control' + +OUT_TMPL_SRC = """ +DNS forwarding statistics: + +Cache entries: {{ cache_entries -}} +Cache size: {{ cache_size }} kbytes + +""" + + +if __name__ == '__main__': + data = {} + + data['cache_entries'] = subprocess.check_output([PDNS_CMD, 'get cache-entries']).decode() + data['cache_size'] = "{0:.2f}".format( int(subprocess.check_output([PDNS_CMD, 'get cache-bytes']).decode()) / 1024 ) + + tmpl = jinja2.Template(OUT_TMPL_SRC) + print(tmpl.render(data)) diff --git a/src/op-mode/vyos-restart-dns-forwarding.sh b/src/op-mode/vyos-restart-dns-forwarding.sh new file mode 100755 index 000000000..12106fcc1 --- /dev/null +++ b/src/op-mode/vyos-restart-dns-forwarding.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +if cli-shell-api exists service dns forwarding; then + echo "Restarting the DNS forwarding service" + systemctl restart pdns-recursor +else + echo "DNS forwarding is not configured" +fi |