DHCP client disclosing less identifying information.
Python implmentation 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
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.
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.
State-transition diagram for DHCP clients:
WIP, still not recommended for end users.
See TODO
See Installation
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
If you wish to signal a bug or report a feature request, please fill-in an issue on the dhcpcanon issue tracker.
dhcpcanon is Copyright 2016 by juga ( juga at riseup dot net), and is covered by the GPLv3 license.
To the persons that push me to implement yet another DHCP client and to the person that told me about the anonymity profile.