{ "info": { "author": "Virginijus Magelinskas", "author_email": "virginijus@noia.network", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "srv6\\_tracert\n=============\n\nUsage\n-----\n\n::\n\n usage: srv6_traceroute.py [-h] (-d DESTINATION | -f DESTINATION_FILE)\n [-c COUNT] [-s PACKETSIZE] [-t TIMEOUT]\n [-v VERBOSITY]\n\n SRv6 traceroute script\n\n optional arguments:\n -h, --help show this help message and exit\n -d DESTINATION, --destination DESTINATION\n Destination host IPv6\n -f DESTINATION_FILE, --destination_file DESTINATION_FILE\n File with destination hosts IPv6\n -c COUNT, --count COUNT\n Count of random IPv6 SR hops\n -s PACKETSIZE, --packetsize PACKETSIZE\n ICMP echo packet data size\n -t TIMEOUT, --timeout TIMEOUT\n Scapy packet timeout\n -v VERBOSITY, --verbosity VERBOSITY\n Scapy verbosity\n\nExample of DESTINATION\\_FILE is in the file ``hosts.yml.example``.\n\nSample output\n-------------\n\nSingle traceroute\n~~~~~~~~~~~~~~~~~\n\n::\n\n -> srv6_traceroute.py -d dead:beef:ca1f\n ======= Starting ICMP (packet size: 8) traceroute to dead:beef:ca1f =======\n ======= Starting SRv6 (packet size: 8) traceroute to dead:beef:ca1f =======\n +-----+-----------------------------+-------------------------+-------------------------+--------------------+\n | TTL | ASN | ICMP dst | SR dst | Latency |\n +-----+-----------------------------+-------------------------+-------------------------+--------------------+\n | 1 | - | - | - | - |\n | 2 | - | - | - | - |\n | 3 | AS-CHOOPA - Choopa, LLC, US | 2001:19f0:5000::a48:131 | - | 9.755134582519531 |\n | 4 | AMS-IX1, NL | 2001:7f8:1::a502:4940:1 | 2001:7f8:1::a502:4940:1 | 44.83842849731445 |\n | 5 | HETZNER-AS, DE | 2a01:4f8:0:3::11d | 2a01:4f8:0:3::11d | 24.158716201782227 |\n | 6 | HETZNER-AS, DE | 2a01:4f8:0:3::f9 | 2a01:4f8:0:3::f9 | 27.796506881713867 |\n | 7 | HETZNER-AS, DE | 2a01:4f8:0:e0c0::a002 | 2a01:4f8:0:e0c0::a002 | 33.812522888183594 |\n | 8 | - | - | - | - |\n | 9 | HETZNER-AS, DE | 2a01:4f8:0:e0c0::1c16 | 2a01:4f8:0:e0c0::1c16 | 20.31564712524414 |\n | 10 | - | - | - | - |\n | 11 | HETZNER-AS, DE | dead:beef:ca1f | dead:beef:ca1f | 17.747879028320312 |\n +-----+-----------------------------+-------------------------+-------------------------+--------------------+\n\nMulti destination traceroute\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n::\n\n -> srv6_traceroute.py -f hosts.yml\n Performing traceroute on server host1 (dead:beef:ca1f)\n ======= Starting ICMP (packet size: 8) traceroute to dead:beef:ca1f =======\n ======= Starting SRv6 (packet size: 8) traceroute to dead:beef:ca1f =======\n Results of traceroute to server host1 (dead:beef:ca1f)\n +-----+----------------+-------------------------+-------------------------+--------------------+\n | TTL | ASN | ICMP dst | SR dst | Latency |\n +-----+----------------+-------------------------+-------------------------+--------------------+\n | 1 | - | - | - | - |\n | 2 | - | - | - | - |\n | 3 | - | - | - | - |\n | 4 | AMS-IX1, NL | 2001:7f8:1::a502:4940:1 | 2001:7f8:1::a502:4940:1 | 7.732629776000977 |\n | 5 | HETZNER-AS, DE | 2a01:4f8:0:3::11d | 2a01:4f8:0:3::11d | 14.463424682617188 |\n | 6 | HETZNER-AS, DE | 2a01:4f8:0:3::f9 | 2a01:4f8:0:3::f9 | 18.020153045654297 |\n | 7 | HETZNER-AS, DE | 2a01:4f8:0:e0c0::a002 | 2a01:4f8:0:e0c0::a002 | 17.49587059020996 |\n | 8 | - | - | - | - |\n | 9 | HETZNER-AS, DE | 2a01:4f8:0:e0c0::1c16 | 2a01:4f8:0:e0c0::1c16 | 17.79937744140625 |\n | 10 | - | - | - | - |\n | 11 | HETZNER-AS, DE | dead:beef:ca1f | dead:beef:ca1f | 16.185998916625977 |\n +-----+----------------+-------------------------+-------------------------+--------------------+\n Performing traceroute on server host2 (1d1e:f001)\n ======= Starting ICMP (packet size: 8) traceroute to 1d1e:f001 =======\n ======= Starting SRv6 (packet size: 8) traceroute to 1d1e:f001 =======\n Results of traceroute to server host2 (1d1e:f001)\n +-----+-----------------------------+-------------------------+-------------------------+--------------------+\n | TTL | ASN | ICMP dst | SR dst | Latency |\n +-----+-----------------------------+-------------------------+-------------------------+--------------------+\n | 1 | - | - | - | - |\n | 2 | - | - | - | - |\n | 3 | AS-CHOOPA - Choopa, LLC, US | 2001:19f0:5000::a48:131 | 2001:19f0:5000::a48:131 | 22.018909454345703 |\n | 4 | AMS-IX1, NL | 2001:7f8:1::a502:4940:1 | 2001:7f8:1::a502:4940:1 | 7.369518280029297 |\n | 5 | HETZNER-AS, DE | 2a01:4f8:0:3::11d | 2a01:4f8:0:3::11d | 12.90130615234375 |\n | 6 | HETZNER-AS, DE | 2a01:4f8:0:3::b2 | 2a01:4f8:0:3::b2 | 18.60523223876953 |\n | 7 | HETZNER-AS, DE | 2a01:4f8:0:3::ee | 2a01:4f8:0:3::ee | 19.85001564025879 |\n | 8 | HETZNER-AS, DE | 1d1e:f001 | 1d1e:f001 | 19.013166427612305 |\n +-----+-----------------------------+-------------------------+-------------------------+--------------------+\n\nSample when Routing Extension Header is blocked by one of the Tier1 ISPs\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n::\n\n ======= Starting ICMP (packet size: 8) traceroute to dead:beef:cafe =======\n ======= Starting SRv6 (packet size: 8) traceroute to dead:beef:cafe =======\n +-----+----------------------------------------------+------------------------+------------------------+--------------------+\n | TTL | ASN | ICMP dst | SR dst | Latency |\n +-----+----------------------------------------------+------------------------+------------------------+--------------------+\n | 1 | LEASEWEB-UK-LON-11, GB | 2a0d:3001:2100:a002::2 | 2a0d:3001:2100:a002::2 | 81.56800270080566 |\n | 2 | LEASEWEB-UK-LON-11, GB | 2a0d:3000::254 | 2a0d:3000::254 | 64.85724449157715 |\n | 3 | TELIANET Telia Carrier, SE | 2001:2000:3080:1bbf::1 | - | 69.17166709899902 |\n | 4 | TELIANET Telia Carrier, SE | 2001:2000:3019:79::1 | - | 137.43948936462402 |\n | 5 | TELIANET Telia Carrier, SE | 2001:2000:3019:b6::1 | - | 145.21098136901855 |\n | 6 | TELIANET Telia Carrier, SE | 2001:2000:3019:72::1 | - | 167.96255111694336 |\n | 7 | TELIANET Telia Carrier, SE | 2001:2000:3018:99::1 | - | 170.88818550109863 |\n | 8 | TELIANET Telia Carrier, SE | 2001:2000:3080:1b2f::2 | - | 138.5951042175293 |\n | 9 | LEASEWEB-USA-WDC-01 - Leaseweb USA, Inc., US | 2607:f5b7::253 | - | 140.91253280639648 |\n | 10 | LEASEWEB-USA-WDC-01 - Leaseweb USA, Inc., US | dead:beef:cafe | - | 144.75488662719727 |\n +-----+----------------------------------------------+------------------------+------------------------+--------------------+\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/vmag/srv6_tracert", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "srv6-tracert", "package_url": "https://pypi.org/project/srv6-tracert/", "platform": "any", "project_url": "https://pypi.org/project/srv6-tracert/", "project_urls": { "Homepage": "https://github.com/vmag/srv6_tracert" }, "release_url": "https://pypi.org/project/srv6-tracert/0.0.8/", "requires_dist": [ "scapy", "prettytable", "ipwhois", "pyyaml" ], "requires_python": ">=3", "summary": "SRv6 compatible traceroute", "version": "0.0.8" }, "last_serial": 5517319, "releases": { "0.0.5": [ { "comment_text": "", "digests": { "md5": "72d876f75771876b6095b9c2933807b3", "sha256": "55bba2e348171a883e31af8e2a2d9d1859dea336fdd809179be08193c2f338a1" }, "downloads": -1, "filename": "srv6_tracert-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "72d876f75771876b6095b9c2933807b3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 4223, "upload_time": "2019-07-11T11:29:11", "url": "https://files.pythonhosted.org/packages/30/d7/f66852a9d873db42619367bf30411c9d72fcd68691aeb9a3cad9f3b282c8/srv6_tracert-0.0.5-py3-none-any.whl" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "3379b8aa9d65961c78b85360c9d11071", "sha256": "d4af019b743b29588a68e9d091da4cd7b8eec7c6dbac99a4504a60a133951e09" }, "downloads": -1, "filename": "srv6_tracert-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "3379b8aa9d65961c78b85360c9d11071", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 5762, "upload_time": "2019-07-11T11:50:14", "url": "https://files.pythonhosted.org/packages/5a/78/7fc85850f190413223cb843176c07d5f0f737ad7ce8f155b796762300916/srv6_tracert-0.0.7-py3-none-any.whl" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "edfd5139c21c73235262a1978b3b3084", "sha256": "6f21e64d4e34fad640f409df67b1664a8342e74b63befec40e691fcf255b7af2" }, "downloads": -1, "filename": "srv6_tracert-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "edfd5139c21c73235262a1978b3b3084", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 5880, "upload_time": "2019-07-11T12:11:45", "url": "https://files.pythonhosted.org/packages/78/0d/83429bf332d19ee0e119889e8cca6a77d71d2cdb58c3f72cb7f9474acc8c/srv6_tracert-0.0.8-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "edfd5139c21c73235262a1978b3b3084", "sha256": "6f21e64d4e34fad640f409df67b1664a8342e74b63befec40e691fcf255b7af2" }, "downloads": -1, "filename": "srv6_tracert-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "edfd5139c21c73235262a1978b3b3084", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 5880, "upload_time": "2019-07-11T12:11:45", "url": "https://files.pythonhosted.org/packages/78/0d/83429bf332d19ee0e119889e8cca6a77d71d2cdb58c3f72cb7f9474acc8c/srv6_tracert-0.0.8-py3-none-any.whl" } ] }