dhcpcanon - DHCP anonymity profile

PyPI Build Status Coverage Status Documentation Status CII Best Practices

DHCP client disclosing less identifying information.

Python implementation of the DHCP Anonymity Profile (RFC7844) designed for users that wish to remain anonymous to the visited network minimizing disclosure of identifying information.


This implementation uses the Python Scapy Automata

What is the Anonymity Profile?

As the RFC7844 stats:

Some DHCP options carry unique identifiers. These identifiers can enable device tracking even if the device administrator takes care of randomizing other potential identifications like link-layer addresses or IPv6 addresses. The anonymity profiles are designed for clients that wish to remain anonymous to the visited network. The profiles provide guidelines on the composition of DHCP or DHCPv6 messages, designed to minimize disclosure of identifying information.

What is DHCP?

From Wikipedia:

The Dynamic Host Configuration Protocol (DHCP) is a standardized network protocol used on Internet Protocol (IP) networks. The DHCP is controlled by a DHCP server that dynamically distributes network configuration parameters, such as IP addresses, for interfaces and services. A router or a residential gateway can be enabled to act as a DHCP server. A DHCP server enables computers to request IP addresses and networking parameters automatically, reducing the need for a network administrator or a user to configure these settings manually. In the absence of a DHCP server, each computer or other device (eg., a printer) on the network needs to be statically (ie., manually) assigned to an IP address.


A more extensive online documentation is available in Read the docs. The documentation source is in this repository.

Visit DHCPAP for an overview of all the repositories related to the RFC7844 implementation work.


See Installation and Running


You can download this project in either zip or tar formats.

You can also clone the project with Git by running:

git clone https://github.com/juga0/dhcpcanon

Bugs and features

If you wish to signal a bug or report a feature request, please fill-in an issue on the dhcpcanon issue tracker.

Current status

WIP, still not recommended for end users. Testers welcomed.



dhcpcanon is copyright 2016-2018 by juga ( juga at riseup dot net) and is licensed by the terms of the MIT license. The documentation is under CC-BY-SA-4.0.


To all the persons that have given suggestions and comments about this implementation, the authors of the RFC 7844, the Prototype Fund Project of the Open Knowledge Foundation Germany and the Federal Ministry of Education and Research who partially funds this work.

Indices and tables