Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vschwaberow/ip-analyzer
IP Analyzer is a command-line tool that provides detailed information about IP addresses and their associated network properties. It offers a user-friendly interface with a visually appealing Commodore Amiga Copper-style output.
https://github.com/vschwaberow/ip-analyzer
Last synced: about 2 months ago
JSON representation
IP Analyzer is a command-line tool that provides detailed information about IP addresses and their associated network properties. It offers a user-friendly interface with a visually appealing Commodore Amiga Copper-style output.
- Host: GitHub
- URL: https://github.com/vschwaberow/ip-analyzer
- Owner: vschwaberow
- License: mit
- Created: 2024-09-09T05:22:34.000Z (5 months ago)
- Default Branch: master
- Last Pushed: 2024-09-09T05:33:26.000Z (5 months ago)
- Last Synced: 2024-09-09T06:39:27.299Z (5 months ago)
- Language: C++
- Homepage:
- Size: 5.86 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# IP Analyzer
IP Analyzer is a command-line tool that provides detailed information about IP addresses and their associated network properties. It offers a user-friendly interface with a visually appealing Commodore Amiga Copper-style output.
## Features
- Analyze IP addresses with CIDR notation
- Display IP address details in both decimal and binary formats
- Show network address, netmask, and broadcast address
- Calculate usable IP range and number of hosts
- Determine if the IP address is private
- Present results in a colorful, easy-to-read format## Prerequisites
To build and run this project, you need:
- C++17 compatible compiler (e.g., GCC 7+, Clang 5+, or MSVC 2017+)
- CMake 3.10 or higher
- fmt library (will be automatically downloaded if not found)## Building the Project
1. Clone the repository:
```bash
git clone https://github.com/vschwaberow/ip-analyzer.git
```2. Build using CMake:
```bash
cmake -S . -B ./build
cmake --build build --config Release
```3. Run the executable:
```bash
./build/ip-analyzer
```4. You can also run the tests:
```bash
./build/ip_analyzer_tests
```## Usage
To analyze an IP address, run the program and enter the IP address with CIDR notation:
```bash
./build/ip-analyzer
Enter an IP address with CIDR notation: 192.168.178.0/24
```When prompted, enter an IP address with or without CIDR notation. The tool will automatically detect whether it's an IPv4 or IPv6 address.
## Examples
### IPv4 Example
Input:
```bash
Enter an IP address with CIDR notation: 192.168.178.0/24
```
## Supported IPv6 FormatsThe IP Analyzer supports various IPv6 address formats, including:
- Full notation: `2001:0db8:85a3:0000:0000:8a2e:0370:7334`
- Compressed notation: `2001:db8:85a3::8a2e:370:7334`
- IPv4-mapped IPv6 addresses: `::ffff:192.0.2.128`The program will display detailed information about the IP address.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
## Pull Requests
If you find a bug or want to contribute to the project, feel free to submit a pull request.