|0.1.0||Feb 20, 2022|
#6 in #netfilter
38 downloads per month
This project aims at providing building blocks for netlink (see
man 7 netlink).
netlink_syscrate provides netlink sockets. Integration with
- Each netlink protocol has a
netlink-packet-<protocol_name>crate that provides the packets for this protocol:
netlink-packet-coreis the glue for all the other
netlink-packet-*crates. It provides a
NetlinkMessage<T>type that represent any netlink message for any sub-protocol.
netlink_protocrate is an asynchronous implementation of the netlink protocol. It only depends on
netlink-sysfor the socket.
rtnetlinkcrate provides higher level abstraction for the route protocol
auditcrate provides higher level abstractions for the audit protocol.
netlink-packet-genericcrate provide message for the generic netlink
genetlinkcrate provide higher level abstraction for the generic netlink protocol
ethtoolcrate provide higher level abstraction for ethtool netlink protocol
- https://github.com/jbaublitz/neli: the main alternative to these crates, as it is actively developed.
- Other but less actively developed alternatives:
My main resource so far has been the source code of
pyroute2 (python) and
a lot. These two projects are great, and very nicely written. As someone who does not read C fluently, and that does not
know much about netlink, they have been invaluable.
I'd also like to praise
libnl for its documentation. It helped me a lot in understanding the protocol basics.
Thanks also to the people behind tokio for the amazing tool they are building, and the support they provide.