Can exist bitcoin network with all nodes behind NAT?
Can exist bitcoin network with all nodes behind NAT?


Sure. Both the Bitcoin client and many SOHO routers support UPnP. Failing that, Bitcoin users could set up port forwarding.


  Or bitcoin client will try to make UDP/TCP hole punching connection?


No, it won't do that.


  If its mandatory for some miner to have public IP address?


Generally, mining pools will have a public IP address. There's no reason why you couldn't set up a mining pool server behind NAT and use port forwarding to make it public, but it would be a very strange way to set things up.