We did this a while ago along with a custom software package that we created for programmatically spawning and controlling simulated drones and similarly controlling physical drones with predefined choreographies: https://github.com/dennisss/tansa.
Anyway, the network configuration that we used was: a wifi router connected over ethernet to a laptop. Each drone using MavESP8266 and configured on a different static ip connected to that router. Also important is to make sure that the mavlink mode in PX4 is configured to 'custom' or another low-rate mode to not congest the network. Otherwise things can get crazy. So far this is the best WiFi based setup we've tested and has been tested with up to 8 drones simultaneously.