dev
hostname-service
A simple program that integrates with Windows Services to retrieve the hostname given an IP address.
Prerequisites
Python
- At least python3.10 or higher (may work on lower versions but untested)
- python and pip are in your environmental variables (python --version)
pip install pywin32 python-dotenv
Go
- At least go 1.18 or higher
- go is in your environmental variables (go version)
go install github.com/kardianos/service
Installation
Python
- Download
hostname-service.pyandenv.txtfiles - Copy
env.txtto.env - Edit
.envfile to match your requirements - Open terminal as admin
python hostname_service.py run
Go
- Clone the repository
git clone https://git.dou.bet/iamdoubz/hostname-service - Enter the directory
cd hostname-service - Open terminal
go run hostname_service.go run
Building
Go
go build -o hostname_service.exe hostname_service.go- Test it
./hostname_service.exe
Program Run Options
Python
Use python hostname_service.py and one of the following option names.
| Option Name | Description |
|---|---|
| run | Start the server in standalone mode |
| install | Create a Windows Service entry |
| start | Start the Windows service |
| stop | Stop the Windows service |
| restart | Stop then Start the Windows service |
| remove | Removes the Windows Service entry |
| debug | Runs the Windows service in debug mode |
Go
Use go run hostname_service.go and one of the following option names.
| Option Name | Description |
|---|---|
| run | Start the server in standalone mode |
| install | Create a Windows Service entry |
| start | Start the Windows service |
| stop | Stop the Windows service |
| restart | Stop then Start the Windows service |
| uninstall | Removes the Windows Service entry |
How to use
- Make a post request to http://127.0.0.1:8999 with a body payload of
{"ip":"8.8.8.8"} - Should return
{"hostname": "dns.google"}