public ip is easy to find. if you got a cable modem then im sure you'll have a static ip ( one that doesnt change often. maybe not at all ) Just visit
http://checkip.dyndns.org and that should be your public ip address. I tried it through a proxy and it still got my right ip. as for opening ports. you need to know your LAN ip. if you have a router and you want to forward the ports then you dont need to know your WAN or Public ip unless your running a server. goto
http://www.portforward.com and select your router and model and then the program you want to set up. or just read how to forward ports on your specific router.