All RIRs publish transfers statistics in JSON format on their respective
ftp sites. For example: https://ftp.ripe.net/pub/stats/ripencc/transfers/transfers_latest.json
For each transaction (which may involve transfer of more than one block), the
records in RIPE NCC"s stats look like this:
{ "transfer_date": "2012-11-30T19:00:00Z", "asns": [], "ip4nets": [ { "original_set": [ { "start": "94.155.0.0", "end": "94.155.255.255" } ], "transfer_set": [ { "start": "94.155.176.0", "end": "94.155.191.255" }, { "start": "94.155.208.0", "end": "94.155.215.255" } ] } ], "ip6nets": [], "type": "RESOURCE_TRANSFER", "source_organization": { "name": "ITD Network SA" }, "recipient_organization": { "name": "Bulsatcom AD" }, "source_rir": "RIPE NCC", "recipient_rir": "RIPE NCC" }, Other RIRs JSON data have the same structure, be it with a few subtle differences in tag names and available information. To make the statistics more accessible for command line tools like grep and analysis with frameworks like R, I have a python script that transforms the JSON into a .csv file with the | symbol as seperator. For the transaction above the output becomes: 2012-11-30|94.155.176.0|94.155.191.255|4096|RIPE NCC|RIPE NCC|ITD Network SA|Bulsatcom AD|RESOURCE_TRANSFER 2012-11-30|94.155.208.0|94.155.215.255|2048|RIPE NCC|RIPE NCC|ITD Network SA|Bulsatcom AD|RESOURCE_TRANSFER The source code of the python script is here Outputs for all RIRs (generated on 17 Dec 2019) are below afrinic-transfers.csv apnic-transfers.csv arin-transfers.csv lacnic-transfers.csv ripencc-transfers.csv |