Virtual network for hacking

Hi everyone,

would you have any tips how to establish virtual infrastructure for network hacking? Like some kind of virtual routers, APs, firewals atc. without need to actually buy physical devices? There is many single VMs but I couldnt find anything like this, which could simulate whole network.