Multiplayer how to for ios

How do you make multiplayer functions for a game.
I need to have Coop,Multiplayer(with at least 10 max players) and leaderboards

For the Coop people can direct connect or join players from around the world

For the multiplayer how should I do it
Should I buy a server to host the games or have the host host from his iphone?

How should I make leaderboards do I have to buy a server to host it…

Please post your thoughts on how to do this
Thanks

I think Unity networking is safe for that number of connections to host from an iphone. I am doing a similar setup and no problems yet, just make sure to send RPCs efficiently.

For the leaderboards, you want persistant data, like totals across all players? It is possible to update end-game scores to an online database via System.Net.WebRequest.