    CIDR_TABLE(5)                                                    CIDR_TABLE(5)

    NAME
           cidr_table - format of Postfix CIDR tables

    SYNOPSIS
           postmap -q "string" cidr:/etc/postfix/filename

           postmap -q - cidr:/etc/postfix/filename <inputfile

    DESCRIPTION
           The  Postfix  mail  system  uses  optional  lookup tables.
           These tables are usually in dbm or  db  format.   Alterna-
           tively,  lookup tables can be specified in CIDR (Classless
           Inter-Domain Routing) form. In this case,  each  input  is
           compared  against  a  list  of  patterns.  When a match is
           found, the corresponding result is returned and the search
           is terminated.

           To  find out what types of lookup tables your Postfix sys-
           tem supports use the "postconf -m" command.

           To test lookup tables, use the  "postmap  -q"  command  as
           described in the SYNOPSIS above.

    TABLE FORMAT
           The general form of a Postfix CIDR table is:

           network_address/network_mask     result
                  When  a search string matches the specified network
                  block, use the corresponding result value.  Specify
                  0.0.0.0/0  to match every IPv4 address, and ::/0 to
                  match every IPv6 address.

                  An IPv4 network address is a sequence of four deci-
                  mal  octets  separated  by ".", and an IPv6 network
                  address is a sequence of three to eight hexadecimal
                  octet pairs separated by ":".

                  Before  comparisons are made, lookup keys and table
                  entries are converted from string to binary. There-
                  fore  table  entries  will be matched regardless of
                  redundant zero characters.

                  Note: address information may  be  enclosed  inside
                  "[]" but this form is not required.

                  IPv6 support is available in Postfix 2.2 and later.

           network_address     result
                  When a search string matches the specified  network
                  address, use the corresponding result value.

           blank lines and comments
                  Empty  lines and whitespace-only lines are ignored,
                  as are lines whose first  non-whitespace  character
                  is a `#'.

           multi-line text
                  A  logical  line starts with non-whitespace text. A
                  line that starts with whitespace continues a  logi-
                  cal line.

    TABLE SEARCH ORDER
           Patterns  are applied in the order as specified in the ta-
           ble, until a pattern is  found  that  matches  the  search
           string.

    EXAMPLE SMTPD ACCESS MAP
           /etc/postfix/main.cf:
               smtpd_client_restrictions = ... cidr:/etc/postfix/client.cidr ...

           /etc/postfix/client.cidr:
               # Rule order matters. Put more specific whitelist entries
               # before more general blacklist entries.
               192.168.1.1             OK
               192.168.0.0/16          REJECT

    SEE ALSO
           postmap(1), Postfix lookup table manager
           regexp_table(5), format of regular expression tables
           pcre_table(5), format of PCRE tables

    README FILES
           DATABASE_README, Postfix lookup table overview

    HISTORY
           CIDR table support was introduced with Postfix version 2.1.

    AUTHOR(S)
           The CIDR table lookup code was originally written by:
           Jozsef Kadlecsik
           KFKI Research Institute for Particle and Nuclear Physics
           POB. 49
           1525 Budapest, Hungary

           Adopted and adapted by:
           Wietse Venema
           IBM T.J. Watson Research
           P.O. Box 704
           Yorktown Heights, NY 10598, USA

                                                                     CIDR_TABLE(5)