{"id":13498120,"url":"https://github.com/t2mune/mrtparse","last_synced_at":"2025-03-28T23:30:31.544Z","repository":{"id":13764897,"uuid":"16459713","full_name":"t2mune/mrtparse","owner":"t2mune","description":"MRT format data parser","archived":false,"fork":false,"pushed_at":"2023-10-23T13:23:55.000Z","size":2899,"stargazers_count":135,"open_issues_count":2,"forks_count":39,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-08-06T00:17:27.864Z","etag":null,"topics":["bgp","mrt","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/t2mune.png","metadata":{"files":{"readme":"README.rst","changelog":"ChangeLog","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-02-02T18:05:14.000Z","updated_at":"2024-06-13T15:07:57.000Z","dependencies_parsed_at":"2024-06-18T22:39:34.009Z","dependency_job_id":"609ac93f-3646-4be8-a4b9-77c2b29db2ba","html_url":"https://github.com/t2mune/mrtparse","commit_stats":{"total_commits":496,"total_committers":11,"mean_commits":45.09090909090909,"dds":0.5665322580645161,"last_synced_commit":"23e569c28b66be0f2480808292225040c54cc406"},"previous_names":["yoshiyukiyamauchi/mrtparse"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t2mune%2Fmrtparse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t2mune%2Fmrtparse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t2mune%2Fmrtparse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t2mune%2Fmrtparse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/t2mune","download_url":"https://codeload.github.com/t2mune/mrtparse/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222426427,"owners_count":16982679,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bgp","mrt","python"],"created_at":"2024-07-31T20:00:51.411Z","updated_at":"2024-10-31T14:31:28.724Z","avatar_url":"https://github.com/t2mune.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"mrtparse\n########\n\nIntroduction\n============\n\n| mrtparse is a module to read and analyze the MRT format data.\n| The MRT format can be used to export routing protocol messages, state changes, and routing information base contents, and is defined in RFC6396_.\n| Programs like FRRouting_, Quagga_, Zebra_, BIRD_, OpenBGPD_ and PyRT_ can dump the MRT format data.\n| You can also download archives from `the Route Views Projects`_, `RIPE NCC`_.\n\n.. _RFC6396: https://tools.ietf.org/html/rfc6396\n.. _FRRouting: https://frrouting.org/ \n.. _Quagga: https://www.nongnu.org/quagga/\n.. _Zebra: https://www.gnu.org/software/zebra/\n.. _BIRD: https://bird.network.cz/\n.. _OpenBGPD: http://www.openbgpd.org/\n.. _PyRT: https://github.com/mor1/pyrt\n.. _`the Route Views Projects`: http://archive.routeviews.org/\n.. _`RIPE NCC`: https://www.ripe.net/analyse/internet-measurements/routing-information-service-ris/ris-raw-data\n\nSupport\n=======\n\nPython Version\n--------------\n\nIf you want your code to run faster, you should use PyPy or PyPy3.\n\n* Python2\n* Python3\n* PyPy\n* PyPy3\n\nMRT Type\n--------\n\n+-------------------+---------+\n| Name              | Value   |\n+===================+=========+\n| TABLE\\_DUMP       | 12      |\n+-------------------+---------+\n| TABLE\\_DUMP\\_V2   | 13      |\n+-------------------+---------+\n| BGP4MP            | 16      |\n+-------------------+---------+\n| BGP4MP\\_ET        | 17      |\n+-------------------+---------+\n\nTABLE_DUMP Subtype\n------------------\n\n+-------------------+---------+\n| Name              | Value   |\n+===================+=========+\n| AFI\\_IPv4         | 1       |\n+-------------------+---------+\n| AFI\\_IPv6         | 2       |\n+-------------------+---------+\n\nTABLE_DUMP_V2 Subtype\n---------------------\n\n+-------------------------------+---------+\n| Name                          | Value   |\n+===============================+=========+\n| PEER_INDEX_TABLE              | 1       |\n+-------------------------------+---------+\n| RIB\\_IPV4\\_UNICAST            | 2       |\n+-------------------------------+---------+\n| RIB\\_IPV4\\_MULTICAST          | 3       |\n+-------------------------------+---------+\n| RIB\\_IPV6\\_UNICAST            | 4       |\n+-------------------------------+---------+\n| RIB\\_IPV6\\_MULTICAST          | 5       |\n+-------------------------------+---------+\n| RIB\\_GENERIC                  | 6       |\n+-------------------------------+---------+\n| RIB\\_IPV4\\_UNICAST\\_ADDPATH   | 8       |\n+-------------------------------+---------+\n| RIB\\_IPV4\\_MULTICAST\\_ADDPATH | 9       |\n+-------------------------------+---------+\n| RIB\\_IPV6\\_UNICAST\\_ADDPATH   | 10      |\n+-------------------------------+---------+\n| RIB\\_IPV6\\_MULTICAST\\_ADDPATH | 11      |\n+-------------------------------+---------+\n| RIB\\_GENERIC\\_ADDPATH         | 12      |\n+-------------------------------+---------+\n\nBGP4MP/BGP4MP_ET Subtype\n------------------------\n\n+--------------------------------------+---------+\n| Name                                 | Value   |\n+======================================+=========+\n| BGP4MP\\_STATE\\_CHANGE                | 0       |\n+--------------------------------------+---------+\n| BGP4MP\\_MESSAGE                      | 1       |\n+--------------------------------------+---------+\n| BGP4MP\\_MESSAGE\\_AS4                 | 4       |\n+--------------------------------------+---------+\n| BGP4MP\\_STATE\\_CHANGE\\_AS4           | 5       |\n+--------------------------------------+---------+\n| BGP4MP\\_MESSAGE\\_LOCAL               | 6       |\n+--------------------------------------+---------+\n| BGP4MP\\_MESSAGE\\_AS4\\_LOCAL          | 7       |\n+--------------------------------------+---------+\n| BGP4MP\\_MESSAGE\\_ADDPATH             | 8       |\n+--------------------------------------+---------+\n| BGP4MP\\_MESSAGE\\_AS4\\_ADDPATH        | 9       |\n+--------------------------------------+---------+\n| BGP4MP\\_MESSAGE\\_LOCAL\\_ADDPATH      | 10      |\n+--------------------------------------+---------+\n| BGP4MP\\_MESSAGE\\_AS4\\_LOCAL\\_ADDPATH | 11      |\n+--------------------------------------+---------+\n\nBGP Capability\n--------------\n\n+--------------------------------------------+---------+\n| Name                                       | Value   |\n+============================================+=========+\n| Multiprotocol Extensions for BGP-4         | 1       |\n+--------------------------------------------+---------+\n| Route Refresh Capability for BGP-4         | 2       |\n+--------------------------------------------+---------+\n| Outbound Route Filtering Capability        | 3       |\n+--------------------------------------------+---------+\n| Graceful Restart Capability                | 64      |\n+--------------------------------------------+---------+\n| Support for 4-octet AS number capability   | 65      |\n+--------------------------------------------+---------+\n| ADD-PATH Capability                        | 69      |\n+--------------------------------------------+---------+\n\nBGP Attribute\n-------------\n\n+-------------------------+---------+\n| Name                    | Value   |\n+=========================+=========+\n| ORIGIN                  | 1       |\n+-------------------------+---------+\n| AS\\_PATH                | 2       |\n+-------------------------+---------+\n| NEXT\\_HOP               | 3       |\n+-------------------------+---------+\n| MULTI\\_EXIT\\_DISC       | 4       |\n+-------------------------+---------+\n| LOCAL\\_PREF             | 5       |\n+-------------------------+---------+\n| ATOMIC\\_AGGREGATE       | 6       |\n+-------------------------+---------+\n| AGGREGATOR              | 7       |\n+-------------------------+---------+\n| COMMUNITY               | 8       |\n+-------------------------+---------+\n| ORIGINATOR\\_ID          | 9       |\n+-------------------------+---------+\n| CLUSTER\\_LIST           | 10      |\n+-------------------------+---------+\n| MP\\_REACH\\_NLRI         | 14      |\n+-------------------------+---------+\n| MP\\_UNREACH\\_NLRI       | 15      |\n+-------------------------+---------+\n| EXTENDED COMMUNITIES    | 16      |\n+-------------------------+---------+\n| AS4\\_PATH               | 17      |\n+-------------------------+---------+\n| AS4\\_AGGREGATOR         | 18      |\n+-------------------------+---------+\n| AIGP                    | 26      |\n+-------------------------+---------+\n| LARGE\\_COMMUNITY        | 32      |\n+-------------------------+---------+\n| ATTR\\_SET               | 128     |\n+-------------------------+---------+\n\nInstallation\n============\n\n::\n\n    $ pip install mrtparse\n\nor\n\n::\n\n    $ git clone https://github.com/t2mune/mrtparse.git\n    $ cd mrtparse\n    $ python setup.py install\n\nUsage\n=====\n\nFirst, import the module.\n\n::\n\n    from mrtparse import *\n\nor\n\n::\n\n    import mrtparse\n\n| And pass a MRT format data as a filepath string or file object to a class Reader().\n| It is also supported gzip and bzip2 format.\n| You can retrieve each entry from the returned object using a loop and then process it.\n|\n\n::\n\n    for entry in Reader(f):\n        # Parsed data is stored in \"entry.data\"\n        \u003cstatements\u003e\n\nWe have prepared some example scripts and sample data in `\"examples\"`_ and `\"samples\"`_ directory.\n\n.. _`\"examples\"`: examples\n.. _`\"samples\"`: samples\n\nAuthors\n=======\n\n| Tetsumune KISO t2mune@gmail.com\n| Yoshiyuki YAMAUCHI info@greenhippo.co.jp\n| Nobuhiro ITOU js333123@gmail.com\n\nLicense\n=======\n\n| Licensed under the `Apache License, Version 2.0`_\n| Copyright (C) 2022 Tetsumune KISO\n\n.. _`Apache License, Version 2.0`: http://www.apache.org/licenses/LICENSE-2.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ft2mune%2Fmrtparse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ft2mune%2Fmrtparse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ft2mune%2Fmrtparse/lists"}