A modern, user-friendly GUI tool for calculating and visualizing IPv4/IPv6 subnets. Easily analyze networks, split into subnets, and check IPs for IT professionals, students, and enthusiasts.
https://fnbubbles420.org/discordinvite
- IPv4 & IPv6 support: Calculate subnets for both address types.
- CIDR and netmask input: Accepts both CIDR notation (e.g.
192.168.1.0/24) and netmask (e.g.255.255.255.0). - Subnetting: Split a network into smaller subnets with a chosen prefix length.
- IP Lookup: Check if an IP address belongs to the calculated network.
- Export results: Save results as TXT, CSV, or JSON for easy sharing or analysis.
- Copy to clipboard: Quickly copy results for use elsewhere.
- Recent calculations history: View your last 10 calculations.
- Network visualization: See a graphical representation of your network and host range.
- Theme switching: Choose between Light, Dark, or System themes.
- Keyboard shortcuts: Fast access to common actions.
- Python 3.11+ (Tested on Python 3.11.9)
- customtkinter
Install dependencies:
pip install customtkinter>=5.2.2- Clone this repository:
git clone https://github.com/KernFerm/Subnet-Calculator.git cd subnet-calculator - Install dependencies:
pip install customtkinter
- Run the app:
python subnet_calculator.py
- Enter an IP address or CIDR notation in the Network Input section (e.g.
192.168.1.0or192.168.1.0/24or2001:db8::). - Enter a prefix length (e.g.
24for IPv4,64for IPv6) or a netmask (IPv4 only). - Select IP version (IPv4 or IPv6).
- Click Calculate or press
Ctrl+Rto compute results. - View results in the Results section:
- Network address
- Netmask
- Wildcard mask
- Broadcast address (IPv4)
- Total hosts
- Host range
- Use Subnetting to split the network into subnets:
- Enter a subnet prefix length greater than the main network's prefix.
- Click Show Subnets to view all subnets and their host ranges.
- Use IP Lookup to check if an IP is in the network.
- Export results using the File menu or Export buttons (TXT, CSV, JSON).
- Copy results using the Copy buttons or Edit menu.
- Change theme in the View menu.
- See recent calculations in the right panel.
Ctrl+C: Copy NetworkCtrl+E: Export ResultsCtrl+R: Calculate
- TXT: Human-readable results
- CSV: For spreadsheets
- JSON: For scripts and automation
- If the app does not start, ensure you have Python 3.11.9 and
customtkinterinstalled. - For display issues, try switching themes in the View menu.
- For errors with IP or mask input, check the format and refer to the help section in the app.
Contributions, suggestions, and bug reports are welcome! Please open an issue or submit a pull request.
Learning License
===============
This software is provided for educational and personal learning purposes only.
You are free to use, modify, and share this code for non-commercial, instructional, & self-study activities.
Restrictions:
- Commercial use, distribution, or resale is not permitted.
- No warranty is provided; use at your own risk.
- Please credit the original author if sharing or adapting the code.
For other uses, please contact the author for permission.