tuhochi / nro-delegated-stats

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NRO Delegated Stats

Reverse engineering delegated stats normally produced by Geoff Houston from APNIC.

Goal is to reproduce: https://www.nro.net/wp-content/uploads/apnic-uploads/delegated-extended [1]

Input files are data from RIRs, and IANA files which is also from Jeff.

    APNIC   -> "https://ftp.apnic.net/stats/apnic/delegated-apnic-extended-latest",
    AFRINIC -> "https://ftp.afrinic.net/stats/afrinic/delegated-afrinic-extended-latest",
    ARIN    -> "https://ftp.arin.net/pub/stats/arin/delegated-arin-extended-latest",
    LACNIC  -> "https://ftp.lacnic.net/pub/stats/lacnic/delegated-lacnic-extended-latest",
    RIPENCC -> "https://ftp.ripe.net/pub/stats/ripencc/delegated-ripencc-extended-latest",
    IANA    -> "https://ftp.apnic.net/pub/stats/iana/delegated-iana-latest",

Reports

More detailed description about the generated reports is documented here.

Usage

Building single jar assembly can be done with sbt assembly and look for nro-delegated-stats.jar in target directory.

There are two main operations that can be performed. Generating the delegated extended stats, and notification/email to existing Registry contacts of RIRs in case of persisting conflicts.

Here are the description of available command lines options.

NRO Extended Allocation and Assignments Statistics
Usage: java -jar nro-delegated-stats.jar [generate|notify|iana-file] [options]

  -b, --base-url <value>   Base URL for retrieving previously generated files. Defaults to https://ftp.ripe.net/pub/stats/ripencc/nro-stats.
  -h, --help               print this message
Command: generate [options]
Generate NRO Delegated Extended Statistic, based on each RIRs delegated stats and IANA file
  -s, --startDate <value>  Start date for processing NRO delegated stat, default to today: YYYY-MM-DD
  -e, --endDate <value>    End date for processing NRO delegated stat, default to today: YYYY-MM-DD
  --ownIana                Use own generated IANA file as input, defaults to using http://ftp.apnic.net/stats/iana/delegated-iana-latest
Command: notify [options]
Notify RS contacts if there are persistent conflicts over a grace period
  -c, --conflict-date <value>
                           Current conflict date, defaults to today: YYYY-MM-DD
Command: iana-file
Generate IANA file based on  numbers and resources from iana.org

For generate operation, by default the script will generate stats for today. You can configure to run it for past days by setting appropriate start/end date parameters.

For notify operation you need to provide base-url to fetch previous conflicts, with defaults to ftp.ripe.net.

Other application configuration that are not supplied via command line are provided in this application.conf which by default is bundled, but can be overriden using -Dconfig.file=<application.conf>.

License

Copyright (c) 2019-2022 RIPE NCC All rights reserved.

This software and all its separate source code is licensed under the terms of the BSD 3-Clause License. If a copy of the license was not distributed to you, you can obtain one at https://github.com/RIPE-NCC/nro-delegated-stats/blob/main/LICENSE.txt.

About

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Scala 96.6%Language:Shell 3.2%Language:Dockerfile 0.2%