dmarc_view_reports - Man Page

Synopsis

  dmarc_view_reports [ --option=value ]

Dumps the contents of the DMARC data store to your terminal. The most recent records are show first.

Search Options

    rid          - report ID (internal database ID)
    author       - report author (Yahoo! Inc, google.com, etc..)
    from_dom     - message sender domain
    begin        - epoch start time to display messages after
    end          - epoch end time to display messages before
    disposition  - DMARC disposition (none,quarantine,reject)
    dkim         - DKIM alignment result (pass/fail)
    spf          - SPF alignment result  (pass/fail)

    limit        - limit number of reports returned (defaults to 100)
    sort         - sort by: rid, author, from_domain, begin, end (append :asc or :desc)

The default sort is rid:desc (newest reports first). You can also use --sort=newest or --sort=oldest.

Prefix a value with ! to negate the match (exclude matching records). This is supported for author, from_dom, disposition, dkim, and spf. For example, --author=!google.com will exclude reports authored by google.com.

Other Options

  dmarc_view_reports [ --geoip --dns --help --verbose ]

    geoip        - do GeoIP lookups (requires the free Maxmind GeoCityLitev6 database).
    dns          - do reverse DNS lookups and display hostnames
    help         - print this syntax guide
    verbose      - print additional debug info

Examples

To view a specific report by its ID:

  dmarc_view_reports --rid=560

To search for all reports from google.com that failed DMARC alignment:

  dmarc_view_reports --author=google.com --dkim=fail --spf=fail

Note that we don't use --disposition. That would only tell us the result of applying DMARC policy, not necessarily if the messages failed DMARC alignment.

To exclude reports from google.com:

  dmarc_view_reports --author=!google.com

To exclude rows with a specific disposition:

  dmarc_view_reports --disposition=!none

To show only the newest 50 reports:

    dmarc_view_reports --limit=50

To view oldest reports first:

    dmarc_view_reports --sort=oldest

To display GeoIP lookup data for the source ip:

  dmarc_view_reports --geoip

By default; city, country_code & continent_code are shown. You can optionally pass a comma delimited string to --geoip= with any of the following fields:

country_code country_code3 country_name region region_name city postal_code latitude longitude time_zone area_code continent_code metro_code

  dmarc_view_reports --geoip=country_name,continent_code
  dmarc_view_reports --geoip=continent_code,country_name # keep order
  dmarc_view_reports --geoip=city,city,city              # repeat

Sample Output

 ID  Author            Report-Start
  | -- Qty From                                         IP             Disposition DKIM SPF

 570  theartfarm.com   2013-05-20 09:40:50
  | --   1 simerson.net                                 75.126.200.152 quarantine  fail fail

 568  yeah.net         2013-05-21 09:00:00
  | --   1 tnpi.net                                     111.176.77.138 reject      fail fail

 565  google.com       2013-05-20 17:00:00
  | --  88 mesick.us                                    208.75.177.101 none        pass pass

 563  google.com       2013-05-20 17:00:00
  | --   1 lynboyer.com                                 2a00:1450:4010:c03::235 none pass fail  forwarded
  | --  12 lynboyer.com                                 208.75.177.101          none pass pass
  | --   1 lynboyer.com                                 209.85.217.174          none pass fail  forwarded

Authors

Info

2026-06-15 perl v5.42.2 User Contributed Perl Documentation