TABLEUTIL(1) BSD General Commands Manual TABLEUTIL(1)NAMEtableutil — converts and performs operations on tables
SYNOPSIStableutil-c commands
tableutil-f file
tableutil-q type [file]
DESCRIPTIONtableutil can be used to convert files with IP-addresses and ranges and
aggregate networks. The options are as follows:
-c commands
execute the commands specified by commands.
-f file
file is the name of the file with commands to be loaded.
-q type [file]
Quick-convert file from type to a CIDR-notation, as used by PF.
type can be either 'text' or 'p2b'. The text format accepts
addresses on the form 'n.n.n.n', 'n.n.n.n-n.n.n.n' or
'n.n.n.n/n'. p2b is the format used in the lists provided by
blocklist.org. If file is omitted, standard input is assumed.
p2b-files can be either gzipped or uncompressed.
COMMAND FILE/STRING
The command file/string consists of a series of statements separated by ;
GRAMMAR
TODO...
EXAMPLES
Example quick-conversion:
$ tableutil-q p2b ads.p2b.gz
Example command-file:
# Assign some values to some variables
$range = { 192.168.0.0-192.168.2.255 };
$cidr = { 192.168.3.0/24 };
$text = load(text, "file_with_networks");
$p2b = load(p2b, "ads.p2b.gz");
# Do some calculations and store them in some other variables
$table1 = difference($p2b, $text);
$table2 = union($range, $cidr);
$table3 = invert( { 192.168.0.1 } );
$table4 = intersect( { 192.168.1.0-192.168.3.255 }, $range);
# Save some of the variables, and a bonus, to files.
save(cidr, "table1", $table1);
save(range, "table2", $table2);
save(cidr, "table3", $table3);
save(cidr, "table4", $table4);
save(range, "table5", { 0.0.0.0/0 } );
save(single, "table6", $cidr );
RETURN VALUEStableutil can exit with the following values:
0 Command completed successfully.
1 Invalid arguments supplied.
-1 Internal error.
BUGS
Many, probably. And the man-page needs improving.
SEE ALSOpfctl(8)BSD July 8 2005 BSD