libdnet provides a simplified, portable interface to several low-level networking routines, including network address manipulation, kernel arp(4) cache and route(4) table lookup and manipulation, network firewalling, network interface lookup and manipulation, IP tunnelling, and raw IP packet and Ethernet frame transmission.
Before reporting an issue, please make sure you check the 'devel' branch to see if it's already fixed. This is the current WIP and contains already a lot of fixes, but for compatibilty reasons, it's not yet included in the main branch.