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.
The crawler maintained by Bitnodes connects from these IP addresses: