Another solution is to ping a VM and check the TTL value.
Due to slightly different TCP/IP implementation on each OS-family, you can
identify the OS family by checking this
<https://subinsb.com/default-device-ttl-values/> table


On Mon, Jun 17, 2019, 12:44 Riepl, Gregor (SWISS TXT) <
gregor.ri...@swisstxt.ch> wrote:

>
> > version. Another way is to open the console and see the login screen.
> > This will get the actual data but I want to do automation to see for
> > all VM's and opening the console is not feasible to automate. Is
> > there any other way to get it?
>
> Are the VMs networked?
>
> You could fetch their public IPs and run nmap -sS -O against them. This
> should produce fairly accurate results.
>
> If they are all on the same Cloudstack network, you could also SSH into
> a connected VM and run nmap from there.
>
> I don't think that there is a generic way to obtain the actual OS
> running on a VM via Cloudstack. It might be possible through the
> hypervisor, but nmap will work in most cases.
>

Reply via email to