Jump to content

PeerGuardian

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Zscout370 (talk | contribs) at 18:23, 19 May 2007 (Criticism: rm unsourced information). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

PeerGuardian
Developer(s)Phoenix Labs
Stable release
2.0 Beta 6b (Windows), 1.4.2 (Mac OS X) / September 18, 2005 (Windows), June 26, 2006 (Mac OS X)
Operating systemCross-platform
TypeFirewalls
LicenseGPL or zlib/libpng license (depends on OS)
Websitewww.phoenixlabs.org

PeerGuardian and PeerGuardian 2 are free and open source programs developed by Phoenix Labs. They are capable of blocking incoming and outgoing connections based on IP blocklists. Their purpose is to help protect the user's privacy from organizations such as the RIAA and MPAA while using filesharing networks such as FastTrack and BitTorrent [citation needed]. The system is also capable of blocking advertising, spyware, government and educational ranges, depending upon user preferences.

History

The original PeerGuardian (1.0, led by programmer Tim Leonard) was programmed in Visual Basic and quickly became popular among more knowledgeable P2P users despite blocking only the common TCP protocol and being known for high RAM and CPU usage when connected to P2P networks. The original version was made open source, and development began on a new version (2.0, led by programmer Cory Nelson) to resolve the shortcomings of the original. The latest version, PeerGuardian 2, is coded in C and C++ and sits low in the kernel so that it can block all IPv4 protocols and ports.

Operation

On Windows, Linux, and Mac OS X, PeerGuardian uses a driver to queue all incoming and outgoing connections. Connections are checked for their status in the blocklist using a binary search.

Blocklist formats

The blocklist is stored in a number of different formats:

Binary Formats

The binary formats (known as P2B) were created at the release of the first beta version of PeerGuardian 2, in order to create the smallest possible blocklist.

  • P2B Version 1 - This format was used only in the earliest releases of PeerGuardian 2. It was compressed using the gzip format. Lists are no longer produced in this format.
  • P2B Version 2 - The most widely used format, this is supported among a number of applications, including eMule and the Linux version of PeerGuardian. It is equivalent to the first version of the P2B format, but instead uses UTF-8 to store names. Lists are produced in this format.
  • P2B Version 3 - The newest version of the P2B format, this is currently supported only on the latest version of the Windows flavor of PeerGuardian 2. This format uses 7z compression for additional size reduction. Unfortunately, the recent adoption of this format and the somewhat obscure nature of the compression used make this format the least compatible one. Lists are produced in this format.

P2P Plaintext Format

The original format for PeerGuardian version 1.x was a simple plain text format . Unfortunately this meant that lists became very large and cost a lot of bandwidth to distribute, heralding the construction of the smaller binary formats.

The format is as follows:

 Range Name:FirstIP-LastIP

For example:

 Localhost:127.0.0.1-127.0.0.1

This format is used in eMule, in the SafePeer Azureus plugin and in Protowall.


See also

and www.bluetack.co.uk - blocklists