c5a07e30b589b4d67a3bcac2ea8069a115e3a35f
lglass.md
... | ... | @@ -0,0 +1,44 @@ |
1 | +lglass is a Python software package designed for Internet Registries like the DN42. You can generate zone files for DNS and rDNS IPv4/v6, and handle the registry. It is available on GitHub as free software: |
|
2 | + |
|
3 | + $ git clone git://github.com/fritz0705/lglass.git |
|
4 | + |
|
5 | +## Running your own Whois daemon |
|
6 | + |
|
7 | +lglass provides an event-based whois daemon with internal caching, which was written in Python. It is very simple to run an instance: |
|
8 | + |
|
9 | + $ ./bin/lglass-whoisd -D $PATH_TO_DATA_DIR -H $HOST -P $PORT |
|
10 | + |
|
11 | +## Generate zone files |
|
12 | + |
|
13 | +lglass also provides a script to generate zone files from the registry. It's named zonegen.py and requires a registry dump from Monotone. |
|
14 | + |
|
15 | +To generate DNS zones: |
|
16 | + |
|
17 | + $ ./bin/lglass-zonegen -d $PATH_TO_DATA_DIR -n ns1... -n ns2... -e foo.bar.com dns -z dn42 |
|
18 | + |
|
19 | +To generate IPv4 rDNS zones: |
|
20 | + |
|
21 | + $ ./bin/lglass-zonegen -d $PATH_TO_DATA_DIR -n ns1... -n ns2... -e foo.bar.com rdns4 -N 172.22.0.0/16 |
|
22 | + |
|
23 | +To generate IPv6 rDNS zones: |
|
24 | + |
|
25 | + $ ./bin/lglass-zonegen -d $PATH_TO_DATA_DIR -n ns1... -n ns2... -e foo.bar.com rdns6 -N fd00::/8 |
|
26 | + |
|
27 | +## Reformat RPSL files |
|
28 | + |
|
29 | +You can also reformat RPSL files using lglass by using the lglass.rpsl module: |
|
30 | + |
|
31 | + $ ./bin/lglass-rpsl < $DATA/inetnum/172.22.0.53_32 |
|
32 | + |
|
33 | +lglass.rpsl also supports in-place operation: |
|
34 | + |
|
35 | + $ ./bin/lglass-rpsl -i $DATA/inetnum/172.22.0.53_32 |
|
36 | + |
|
37 | +This opens the file, reads the content into memory, seeks to position 0, writes the formatted object and truncates the file. |
|
38 | +Simple web interface |
|
39 | + |
|
40 | +lglass also comes with a simple web interface written in Python3 using Bottle and Jinja2. It also provides a binary to run it using wsgiref: |
|
41 | + |
|
42 | + $ ./bin/lglass-web |
|
43 | + |
|
44 | +Furthermore you can use any WSGI server like Gunicorn by using lglass.web.application:app as WSGI callback. You can provide a path to the configuration file in the environment variable `LGLASS_WEB_CFG`. |