Jump to content
TokyoIoT

Port and Services

Recommended Posts

TokyoIoT

It wounld be nice if the agent would do a port scan and list the available services as well as list up the available Bonjour services.

Share this post


Link to post
Share on other sites
Lars

To do that, we'd somehow already be able to know what kind of services the device in question offers and that's a tad hard to do, especially as there's no universal database for this, as far as I'm aware. We've started to do this on a few devices, such as NAS appliances where we know that the default port is 5000 in the case on Synology and 8080 for QNAP. As such, they're options you can select when you try to remote connect to said devices. However, to do this across all brands of devices would be a very tall task, as a port scan is only going to give us potentially open ports and beyond things like HTTP/HTTPS, telnet and SSH, we wouldn't be able to guess what the open ports would be used for.

Share this post


Link to post
Share on other sites
TokyoIoT

All iPhone network scanning apps on the iPhone I have used are able to list ports in use and Bonjour service available.

 

 

image.png

image.png

Share this post


Link to post
Share on other sites
Giancarlo

Actually most of the iPhone network scan just rely on a small subset of port to scan (usually around 1 thousands on around 35K that can be generally opened), and when highlighting an opened port, they state the service on the base of the "expected" service on that port.

 

For example, on the Raspberry it scans port 22, and since usually there is a SSH service, it states so. However, it scans also port 3000: since usually there is a DIS on port 3000, it states so (in your screenshot above). But on that port, we know, there is a Web Service which is part of the Domotz Agent (it's definitely not a DIS).

 

On the other hand, when Domotz scan for opened ports, at the moment, it verifies the service behind that. Domotz is currently scanning for ports that we need for the "connect" functionality (today just HTTP, but in a couple of weeks we will add more). So, when Domotz state that on port 80, or 8080, or 8888, 5000, for example, there is an HTTP protocol, this is something probed, not just based on a table.

 

This methodology, of course, is more robust, but it is a little bit more CPU consuming. But if we want to make use of the ports scanned (i.e. we need to be sure about the protocol behind a specific port) this is the only way to go. 

 

Anyway, we are going to add the check on other protocols (which will be probed as the above), such as:

- ssh

- telnet

- RDP

- VNC

- HTTPS

 

So in few weeks you might be able to see this list of probed open ports in the Device Detail page (and use them to connect to the device itself ;) )

 

In future we will add further ones...

Share this post


Link to post
Share on other sites
TokyoIoT

Sounds great.

 

One thing I am missing is that the client does not have an option to refresh the data. Having an option to force a refresh would allow you to reduce the frequency of the port scans.

 

I don't believe Bonjour requires a port scan to list the services.

 

One thing about the agent updating its data, is that it is deleting data which I prefer it wouldn't. I am playing around with two routers and one router provides the name in DHCP reservation list as DNS names. Changing the router and the name is no longer provided and the name is removed. It would be nice to see changes happening on the network, maybe a history for each device.

 

Share this post


Link to post
Share on other sites
Giancarlo
2 hours ago, TokyoIoT said:

 

I don't believe Bonjour requires a port scan to list the services.

 

 

 

You are perfectly right: no port scan to get the Bonjour services available (this is something in the Roadmap, together with uPnP services).

 

With regard to the history of the network, this is something also in our roadmap: a central point, where you can check the history of all the events on the network, e.g. including name changes or IP changes of devices. I recognize this as a good value.

 

2 hours ago, TokyoIoT said:

 

One thing I am missing is that the client does not have an option to refresh the data. Having an option to force a refresh would allow you to reduce the frequency of the port scans.

 

 

The port scan is currently triggered periodically (not very high frequency though): the refresh button, as other set of commands from the App to our backend and finally to the agent, is something we will work in the future, but I can't promise it will be soon.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...