Welcome to the arp-whisper project! 🎉
arp-whisper is an open-source project written in Rust. It listens to ARP requests on a network interface and responds to them based on a list of IP-MAC address mappings defined in a configuration file. With arp-whisper, you can easily create an ARP responder to handle network queries and provide the appropriate MAC address for each IP address.
arp-whisper continuously monitors incoming ARP requests on the specified network interface. It checks if the request's target IP address matches any of the IP addresses in the configuration file. If a match is found, arp-whisper generates an ARP response with the corresponding MAC address and sends it back to the requester.
We welcome contributions from everyone! Whether you are a seasoned developer or new to open-source, there are various ways you can contribute to arp-whisper:
To install arp-whisper, ensure you have Rust and Cargo installed, then run the following command:
shell
cargo install arp-whisper
You can configure arp-whisper using a configuration file. Here's an example of the configuration file format: ```ini ; Optional field ; Default value: info ; Possible values: info, warn, debug, off logging_level = "debug" [Network] interface = eth0
[Hosts] ; ip = mac_address 192.168.1.2 = aa:bb:cc:dd:ee:ff 192.168.1.3 = 00:11:22:33:44:55 ```
In this example, the [Network] section specifies the network interface to listen on, and the [Hosts] section defines the IP-MAC address mappings. How to Run
To run arp-whisper with your configuration file, use the following command:
shell
sudo arp-whisper config.ini
Replace config.ini with the path to your actual configuration file.
arp-whisper is licensed under the GNU General Public License v3.0 (GPLv3). See the LICENSE file for more details.