genesis block is just there to start the blockchain, you don't need it to be manually transported to everyone to be able to connect.
from the official
geth manual :
Starting Up Your Member Nodes
With the bootnode operational and externally reachable (you can try telnet to ensure it's indeed reachable), start every subsequent Geth node pointed to the bootnode for peer discovery via the --bootnodes flag. It will probably also be desirable to keep the data directory of your private network separated, so do also specify a custom --datadir flag.
geth --datadir path/to/custom/data/folder --networkid 15 --bootnodes <bootnode-enode-url-from-above>
So just connecting to the boot node will spark the synchronization, which is related to the folder you specify in