Fun Run was made in Corona, but unless the makers chime in (and they are not active in the forums) and talk about their back end, all anyone can do is speculate.
For LAN options, may apps used something called AUTOLAN. I believe @roaminggamer updated the library to be IPv6 compatible recently. I know this was a pretty popular way to do local LAN games.
Once you get to games over the Internet the ways of doing multiplayer games jumps drastically. Some games can work with TCP based socket communications, others will need to use UDP. Corona supports Lua sockets which lets you do either. You likely would have to have a dedicated server to manage your lobby and packet passing between players in the session.
Then you have to consider various real-time vs. turn-based system. Some people will use Apple’s GameCenter or Google’s Google Play Game Services to implement both real-time and turn-based methods. Some people will use WebSockets. Other turn-based games could be done with simple Web HTML scripts.
Plugins like GameSparks and PlayFab can be used for multi-player games as well, and perhaps you need a combination of all of these to implement your strategy. Or you can look at services like Photon cloud (https://marketplace.coronalabs.com/corona-plugins/photon-cloud) which offers real-time message passing.
Rob