ho visto che la classe ManagementObject mette a disposizione vari metodi per estrarre informazioni hardware.
ho provato una cosa del genere:
codice:
ManagementObjectSearcher searcher = 
  new ManagementObjectSearcher("Select Name from Win32_CDROMDrive");
foreach(ManagementObject cdrom in searcher.Get())
{
   Console.WriteLine("CD-ROM Name: {0}", cdrom.GetPropertyValue("Name"));
}
ma mi da un errore System.NotimplementedException.
penso che il problema sia dovuto al fatto che provo a far girare questo codice su linux (tramite monodevelop).

come faccio con mono ad ottenere informazioni hardware?
nello specifico dovrei usare le shede di rete:
-identificare schede di rete
-usarne una per la scan delle reti wireless
-connettermici

secondo voi è possibile fare questo usando c# e mono?