Thanks for the list of 1.3 billion potentially in-use IP addresses! I had to spend USD15 to run 8 medium EC2 instances for 16 hours to only find 200++ million hosts.
s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.getprotobyname("icmp"))
for address in addresses:
s.sendto(pkt, (address, 1))
s.close()
At the same time, I had tcpdump running, i.e. "tcpdump -i en1 icmp[icmptype] == icmp-echoreply" to capture the replies.