This container checks IP status, conducts port scans, and lists access points.
772
This Docker container offers a versatile status scanning tool for assessing the status of IP addresses, conducting TCP port scans, and retrieving information about access points. It exposes endpoints that facilitate these functionalities through HTTP requests. Authentication is required via an API key.
To run the container, use the following command:
docker run --privileged -d -e PORT=8080 -e API_KEY=123456789 -e DEVICE=wlp6s0 -e DEBUG=true --network host fluxx03/status_scanner:latest
Change port 8080 as per your needs.
If the port or API key is not explicitly mentioned, the default port is 80 and the default API key is an empty string.
If the DEVICE variable is not passed during container startup, the default value is set to wlan0. If you're unsure about the device name, you can use the ifconfig command to find the name of the WiFi interface. to install use sudo apt install net-tools .
On providing an invalid API key, you will receive a response:
{
"error":"Invalid API key"
}
To check the status of an IP address, send a GET request to /ping/<ip_address> with the API key provided as a query parameter.
Example Request:
GET {{endpoint}}/ping/192.168.0.100?api_key=123456789
Example Response (Success):
{
"status": "success"
}
Example Response (Error):
{
"status": "error"
}
To conduct a TCP port scan on a specific port of an IP address, send a GET request to /tcp-check/<ip_address>/<port> with the API key provided as a query parameter.
Example Request:
GET {{endpoint}}/tcp-check/192.168.0.100/80?api_key=123456789
Example Response (Success):
{
"status": "success"
}
Example Response (Error):
{
"status": "error"
}
To get a list of access points along with their signal strengths, send a GET request to /accesspoints with the API key provided as a query parameter.
Example Request:
GET {{endpoint}}/accesspoints?api_key=123456789
Example Response (Success):
{
"access_points": [
{
"SSID": "DIR-615-0519",
"signal_strength": -26.0
}
],
"status": "success"
}
Example Response (Error):
{
"status": "error"
}
To measure internet speeds, send a GET request to /speedtest with the API key provided as a query parameter.
Example Request:
GET {{endpoint}}/speedtest?api_key=123456789
Example Response (Success):
{
"bytes_received": 19405100,
"bytes_sent": 59244544,
"client": {
"country": "US",
"ip": "xx.xx.xx.xx",
"isp": "Datacom Pvt",
"ispdlavg": "0",
"isprating": "3.7",
"ispulavg": "0",
"lat": "xx",
"loggedin": "0",
"lon": "xx",
"rating": "0"
},
"download": 15268101.921166344,
"download_mbps": "122 mbps",
"ping": 36.974,
"server": {
"cc": "IN",
"country": "India",
"d": 376.05691147703544,
"host": "speed.ssolution.in:8080",
"id": "50291",
"lat": "xx",
"latency": 36.974,
"lon": "xx",
"name": "Vasad",
"sponsor": "Wifi Wale (SS)",
"url": "http://speed.ssolution.in:8080/speedtest/upload.php"
},
"share": null,
"status": "success",
"timestamp": "2024-05-16T09:32:08.475330Z",
"upload": 47046212.04956795,
"upload_mbps": "376 mbps"
}
Example Response (Error):
{
"status": "error"
}
Feel free to reach out if you have any questions or need further assistance.
Content type
Image
Digest
sha256:79210aae1…
Size
55.6 MB
Last updated
about 2 years ago
docker pull fluxx03/status_scanner