libpnet6 at SourceForge



Many thanks to

SourceForge Logo
Latest news (Wed Mar 16 2005) libpnet6 has been accepted as part of the IBM's Linux On Power 2005 Open Source Development Contest. If you're thinking of trying to go for the G5 Mac using libpnet6 as one of the Tier 2 projects, then you're in luck. Libpnet6 has been designed to be extremely easy to port to any platform, and has in the past been ported to various shady platforms, such as AIX, Tru64 (say what?), and other sundry OSes. So, go forth, and get that G5 box!
Latest news (Sun Dec 22 2002) A new version of libpnet6 (0.1.5) has been released. Not many improvements, I've been mainly concentrating on getting the multi-threaded stuff to work OK. I'm curious if it does, let's hope some one'll send feedback. Go to the Downloads section to get it.
Latest news (Mon Nov 13 2002) The latest version is available now. I've added some new functions, and improved the way RAW sockets are handled. Also, libpnet6 has been ported to MinGW, and of course, lots of bugs have been fixed.
Latest news (Mon Nov 7 2002) The latest version is 0.1.3, available for download now. There's also a FreeBSD package file and a FreeBSD ports definition and an RPM spec file.
Latest news (Mon Oct 28 2002) The latest version of libpnet6, v 0.1.1 is now available for donwload. Get it from our Downloads section. There'a s lot of improvements, to the code, as well as a bunch of new functionality and several useful examles.
Latest news (Wed Oct 2 2002) I've been working heavily on the project, and a new release, 0.1.0 is scheduled for Octber 3rd. The version has been bumped up a bit, since a lot of functionality has changed. Older versions will not be compatible with the new ones. See our Downloads section.

What is libpnet6?

libpnet6 is a powerful library for writing cross-platform network applications. libpnet6 facilitates the writing of professional quality client/server applications in the TCP, UDP, and UNIX domain protocols, offering full support for the IPv4 and IPv6 Internet protocols. In addition, advanced networking functionality such as network inteface access and configuration, and the reading and writing of raw packets on the datalink are also supported. The following is a short overview of the most important functionality offered by libpnet6. As far as possible, this functionality is available on all operating systems which libpnet6 supports.

  • Protocol independent "standard" sockets API, with full IPv6 support;
  • Access to IPv4, IPv6, TCP, ICMPv6 socket options;
  • Broadcasting (with IPv4), and multicasting (both IPv4 and IPv6);
  • Access to detailed datagram information, such as actual destination address, and the interface a datagram was received on;
  • Raw socket access, enabling the reading and writing of for example ICMP and IGMP messages as well as direct access to IP datagrams;
  • IP, IPv6, TCP, ICMP, UDP header manipulation routines;
  • Datalink access: direct access to raw network packets. Read and write IP and non-IP packets (e.g. ARP and RevARP packets) bypassing the regular protocols stack.


    The main goal of the project is to provide a highly portable API, which offers a wide range of functionality on an equally wide range of operating systems. Currently, we support a wide range of Unix platforms, Windows, Linux and MAC OS X.

    See the Platforms link for exact details on which platforms are currently supported.

    The Current Release

    You can get the latest release of libpnet6 from our downloads section.

Website Text Copyright (c) 2002, Peter Bozarov
Logo and Layout: Nupur Sarpal, saunup at