You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

routeparser

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

routeparser

A route command output text parser

0.1.0
pipPyPI
Maintainers
1

routeparser: A route command output text parser

It provides:

  • Reading text output of routes into Python objects
  • Simple identification of routes that match hosts or networks

Installation:

  • pip install routeparser

Usage: * example (where netstat_rn.txt is full output from 'netstat -rn' on Linux)::

    import routeparser

    # read lines from a file
    with open('netstat_rn.txt', 'r') as file_handle:
        lines = file_handle.readlines()

    # You can just get objects representing the routes if you wish:
    routes = routeparser.Route.from_linux_netstat_lines(lines)

    # These have attributes such as gateway, interface and network.
    # Some example values as in-line comments:
    routes[0].gateway  # ipaddress.IPv4Address('192.168.1.1')
    routes[0].interface  # 'eth0'
    routes[0].network  # ipaddress.IPv4Network('10.10.0.0/16')

    # Route objects support membership testing:
    '10.10.10.1' in routes[0]  # would return True, given the above example route

    # You can get a RoutingTable object from the lines:
    table = routeparser.RoutingTable.from_linux_netstat_lines(lines)

    # which you can then use to check for specific route matches:
    table.match('10.10.10.1')  # would result in a matching Route object, if any

    # It supports string or Address/Network objects from the ipaddress module:
    import ipaddress
    table.match(ipaddress.ip_network('10.10.10.0/24'))

    # You can even get a list of all matching routes:
    table.matches('10.10.10.10')

    # Currently supported outputs and associated methods (for Route and RoutingTable)
    # Windows:
    #  - 'route print': from_windows_route_print_lines
    # Linux:
    #  - 'ip route': from_ip_route_lines
    #  - 'netstat -r[nv]': from_linux_netstat_lines
    #  - 'route [-n]': from_linux_route_lines

Keywords

network route parser

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.