Not sure if it matters to your program, but within the range of "numerically valid" IP addresses that everyone's suggestions capture, there are some ranges that are reserved by certain protocols. For instance, the subnet 224.0.0.0, is reserved for Cisco multicast group addresses. There are other examples, as well, such as reserved private subnets 172.0.0.0 and 192.0.0.0. These subnets are not publicly routable. There are other examples, as well.
Just thought that I would kick in my $.02, in case it mattered
Update:As merlyn has adeptly pointed out, in an indirect fashion, Tuna should NOT post before getting caffeine into his system. Sorry for the misinformation.