Python Netlink library
Python netlink library. The main goal of the project is to implement complete NETLINK_ROUTE family as well as several other families (NETLINK_NETFILTER etc.)
Current feature status see in STATUS.md
More samples you can read in the project documentation. Low-level interface:
from pyroute2 import IPRoute # get access to the netlink socket ip = IPRoute() # print interfaces print ip.get_links() # stop working with netlink and release all sockets ip.release()
High-level transactional interface, IPDB:
from pyroute2 import IPDB # local network settings ip = IPDB() # create bridge and add ports and addresses # transaction will be started with `with` statement # and will be committed at the end of the block with ip.create(kind='bridge', ifname='rhev') as i: i.add_port(ip.em1) i.add_port(ip.em2) i.add_ip('10.0.0.2/24')
The project contains several modules for different types of netlink messages, not only RTNL.
make install or pip install pyroute2
Python >= 2.6
test reqs (optional): python-coverage, python-nose
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.