Skip to content

Commit ecc0b62

Browse files
authored
Create README.md
1 parent a2cdb06 commit ecc0b62

1 file changed

Lines changed: 61 additions & 0 deletions

File tree

README.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# 🖥️ IP Address Lookup Tool (PowerShell GUI)
2+
3+
A user-friendly PowerShell application for performing IP address hostname lookups via a graphical interface. Built by **Ryan Johnson**.
4+
5+
---
6+
7+
## 📌 Features
8+
9+
-**Three operational modes:**
10+
- **Single IP Mode:** Look up a single IP address manually
11+
- **Text File Mode:** Upload a `.txt` file of IPs and bulk check all entries
12+
- **Manual Bulk Mode:** Manually add IPs one-by-one and bulk check them
13+
14+
- 💾 **CSV Export Support:** Lookup results are saved as a structured CSV file
15+
16+
- 🎨 **Intuitive GUI:** Made with Windows Forms (`System.Windows.Forms`) for a simple and accessible user interface
17+
18+
- 🛠️ **Input Validation:** Built-in regex filter to verify valid IPv4 addresses
19+
20+
- 🔒 **Safe File Handling:** Cleans whitespace in text file mode and gracefully handles invalid input or unresolved hostnames
21+
22+
---
23+
24+
## 🖱️ GUI Overview
25+
26+
| Control | Function |
27+
|--------|----------|
28+
| **Check Text File** | Load a `.txt` file containing IP addresses to look up |
29+
| **Check Single IP** | Input one IP address to resolve |
30+
| **Check Bulk Manually** | Add IPs one-by-one via textbox and export all at once |
31+
| **Browse Buttons** | Browse and select input/output paths |
32+
| **Run** | Executes the lookup and writes results to the designated output |
33+
| **Add/Clear (Manual Mode)** | Add IPs to the list or reset the entry array |
34+
| **Output Box** | Displays real-time status messages and lookup results |
35+
36+
---
37+
38+
## ⚙️ How It Works
39+
40+
- Uses `[System.Net.Dns]::GetHostEntry()` to resolve each IP to a hostname
41+
- Catches and logs resolution errors (including invalid formats)
42+
- Saves output as a `.csv` file at the selected path
43+
44+
---
45+
46+
## 🧠 Built With
47+
48+
- PowerShell
49+
- Windows Forms GUI (`System.Windows.Forms`)
50+
- .NET assemblies
51+
- Regex for IP validation
52+
53+
---
54+
55+
## 📂 File Output Example
56+
57+
```csv
58+
"IPAddress","Hostname"
59+
"8.8.8.8","dns.google"
60+
"1.1.1.1","one.one.one.one"
61+
"256.256.256.256","Invalid IP Format"

0 commit comments

Comments
 (0)