Swarm of private nodes but not necessarily in a private LAN


I want a swarm of private nodes but not all of them in a private network, which I successfully achieved is a few nodes connected in a private network, forcing the daemon to run in a private network with the flag LIBP2P_FORCE_PNET=1 and this way only start if a swarm.key is defined but the IPs of the nodes are privates, can I use the swarm.key starting the daemon as a public swarm in order to allow connect to my nodes only nodes that have the same swarm.key?

Thanks in advance