dns-ng - generate /etc/netgroup entries from DNS tables
dns-ng [ option... ][ infile [ outfile ]]
The dns-ng program is used to generate a netgroup file from DNS
Each host is given a netgroup. Higher-level netgroups can be
created from patterns applied to the HINFO field.
The following options are understood:
The idea is that you have all of the information concerning each computer in the
one file. This makes it less likely that something will be omitted, and
simpler to change if the name or IP address changes.
Provide some help with using the dns-ng program.
Print the version of the dns-ng program being executed.
- -Group name pattern
In addition to one netgroup for each host, a netgroup of the given name will
be created for all hosts with a second HINFO field matching the given
pattern. This option may be specified more than once. The first pattern
match found is used, machines are not placed in more than one of these
groups. Patterns are regular expressions.
- This option may be used to delete A and NS records which reference names
in domains outside the domain specified in the closest preceeding SOA
This option may be used to set the search path for include files.
See the file man1/arglex.so.
See the file man1/exit.so.
By using netgroups, you can assign NFS mount permissions (the
/etc/exports file) and rlogin permissions (the
/etc/hosts.equiv file) based on the kind of machine they are.
Given a database file called ``example.com'' and which
contains the following text
You can generate the /etc/netgroup file using the following command
See the file man1/example.so.
Here is what you would see as the output
% dns-ng example.com /etc/netgroup \
-g pc MSDOS -g mac MacOS \
-g unix UNIX -g other '.*'
Note that the output uses relative names.
All of this can be automated using the following makefile fragment:
See the file man1/example.netgroup.so.
By doing this, all you need to do is edit the example.com file, and the
use the make(1) command to bring everything up-to-date.
dns-ng example.com $@ -g pc MSDOS \
-g mac MacOS -g unix UNIX -g other '.*'
If you were using NIS, NIS+ or LDAP you would update them, rather
than the static file, especially since on many systems the static file
doesn't do anything.
See the file man1/copyright.so.
See the file man1/author.so.