When you say "private ip" are you referring to the ip address of the server machine? Are you accessing from outside your network? It seems to me that you should not have to specify any ip address at all if port forwarding is done correctly. Just tossing out ideas. I'm not 100% clear on the issue.
Have you solved this issue yet?
You say that you can play the audio file if you use the public IP address in the formula. Create a calculated field of type Container, and make the calculation equal to the link in the regular container field, but with the Private IP substituted for the Public IP in the formula using SUBSTITUTE.
And I agree with what RickWhitelaw mentions about possible problems with port forwarding.