To 1: See article
"Hostcache... how do I access them?". A list of current hostcaches is in the sticky thread in this forum.
To 2: Gnutella clients usually use one port (TCP 6346 or any other free port of your choice). Gnutella has no fixed ports, it can handle all incoming connections on one listening socket of your choice.
Have fun coding!
Moak