Can we estimate how many node has the Bitcoin network? Is it possible to estimate the amount of nodes (hosts) are connected to the Bitcoin network in a given time?

Note: Here node means host.
Not very accurately, because it depends on what you consider a node. A host is even more unclear. 


Is it only full nodes?
Does it include light clients?
What minimum level of verification must it be doing?
Must it be listening for peers?


Websites such as bitnodes.io provide a number of listening nodes, but that doesn't necessarily guarantee that they are operating as such, or doing any transaction verification:


  Bitnodes is currently being developed to estimate the size of the
  Bitcoin network by finding all the reachable nodes in the network. The
  current methodology involves sending getaddr messages recursively to
  find all the reachable nodes in the network, starting from a set of
  seed nodes. Bitnodes uses Bitcoin protocol version 70001 (i.e. >=
  /Satoshi:0.8.x/), so nodes running an older protocol version will be
  skipped. The crawler implementation in Python is available from GitHub
  (ayeowch/bitnodes) and the crawler deployment is documented in
  Provisioning Bitcoin Network Crawler.