From dbfc07b026d4f1454f1a7ad77440161d84c9600e Mon Sep 17 00:00:00 2001 From: Alex Zenla Date: Sun, 11 Feb 2024 16:09:03 +0000 Subject: [PATCH] network: ensure multicast bit is unset in random mac addresses --- controller/src/ctl/mod.rs | 1 + network/src/backend.rs | 1 + 2 files changed, 2 insertions(+) diff --git a/controller/src/ctl/mod.rs b/controller/src/ctl/mod.rs index 1b716fb..fff968a 100644 --- a/controller/src/ctl/mod.rs +++ b/controller/src/ctl/mod.rs @@ -85,6 +85,7 @@ impl Controller { let mut mac = MacAddr6::random(); mac.set_local(true); + mac.set_multicast(false); let ipv4 = self.allocate_ipv4()?; let ipv6 = mac.to_link_local_ipv6(); let launch_config = LaunchInfo { diff --git a/network/src/backend.rs b/network/src/backend.rs index 0c0b440..e1239bc 100644 --- a/network/src/backend.rs +++ b/network/src/backend.rs @@ -132,6 +132,7 @@ impl NetworkBackend { let mac = self.force_mac_address.unwrap_or_else(|| { let mut mac = MacAddr6::random(); mac.set_local(true); + mac.set_multicast(false); mac }); let mac = smoltcp::wire::EthernetAddress(mac.to_array());