How would you scan / query a local network for computers not on a particular domain (particularly windows)?
The quickest way I can think of is to use Angry IP Scanner, I prefer version 2.21.
Under Options > Options... > Select scanned columns... choose everything, then OK & Save.
Under Options > Options... > Display choose Only Alive, then OK & Save.
Scan the network from a domain member PC. Look at the results, especially the column Group Name. Assuming your domain isn't called WORKGROUP or N/A, you should spot most of the standalone machines here.
Another nice feature is you can save the scan as comma-separated text, XML and other formats, which makes it easy to import into Excel. You can script the creation of these scan reports (see the help). You can add custom tools to the right-click menu, which allows you to right-click a host in the list and surf there or connect via RDP, this is useful for quickly confirming what something actually is.
Spiceworks (http://www.spiceworks.com/) works extremely well.
For it to pick up full data about the computers, you need to have the username/password of an admin account on those computers. If they're not on a domain, it'll have to be a local admin account.
If you don't have admin account info, it'll make a guess about what the device is based on open network ports. You can manually go in and change any of the info later.