From 43e076ef1888420a9f1fa1dcc49219f2109beab3 Mon Sep 17 00:00:00 2001 From: m1m1sha <18262227804@163.com> Date: Mon, 13 May 2024 15:47:07 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9E=20fix:=20same=20tun=20name?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- easytier/src/instance/virtual_nic.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/easytier/src/instance/virtual_nic.rs b/easytier/src/instance/virtual_nic.rs index 3b4b69cb..5a98710f 100644 --- a/easytier/src/instance/virtual_nic.rs +++ b/easytier/src/instance/virtual_nic.rs @@ -275,9 +275,18 @@ impl VirtualNic { #[cfg(target_os = "windows")] { + use rand::distributions::Distribution as _; use std::net::IpAddr; let c = crate::arch::windows::interface_count()?; - config.name(format!("et{}_{}", self.dev_name, c)); + let mut rng = rand::thread_rng(); + let s: String = rand::distributions::Alphanumeric + .sample_iter(&mut rng) + .take(4) + .map(char::from) + .collect::() + .to_lowercase(); + + config.name(format!("et{}_{}_{}", self.dev_name, c, s)); // set a temporary address config.address(format!("172.0.{}.3", c).parse::().unwrap()); }