diff --git a/polkadot/node/service/src/lib.rs b/polkadot/node/service/src/lib.rs
index 4dda57110825925ec40da0908526c91b2fc5e123..d0b6db17ed0e59069c701f1438e968c49f844e5b 100644
--- a/polkadot/node/service/src/lib.rs
+++ b/polkadot/node/service/src/lib.rs
@@ -828,10 +828,11 @@ pub fn new_full<OverseerGenerator: OverseerGen>(
 		net_config.add_request_response_protocol(beefy_req_resp_cfg);
 	}
 
+	// validation/collation protocols are enabled only if `Overseer` is enabled
 	let peerset_protocol_names =
 		PeerSetProtocolNames::new(genesis_hash, config.chain_spec.fork_id());
 
-	{
+	if auth_or_collator || overseer_enable_anyways {
 		use polkadot_network_bridge::{peer_sets_info, IsAuthority};
 		let is_authority = if role.is_authority() { IsAuthority::Yes } else { IsAuthority::No };
 		for config in peer_sets_info(is_authority, &peerset_protocol_names) {