Is a public IP required to be a host for files?
Yes, you are identified on the network by your IP and it should be static too. If you change your IP, uploaders won't be able to confirm file contracts later and you will not be paid for used storage. Alternatively, use DynDNS and announce your host with a domain name.
Taek mention on Slack recently this may change in the future.
Arrgghhh, I didnt realise that... Cant you just use the wallet address as the identifier?