diff --git a/src/network/utils.rs b/src/network/utils.rs index 30ccff0..4b5c94f 100644 --- a/src/network/utils.rs +++ b/src/network/utils.rs @@ -114,8 +114,11 @@ pub fn get_ip_from_mac(mac: &str, network: &str) -> Option { log("network_utils", &*stdout, LogLevel::Debug); for line in stdout.lines() { - if line.contains(mac) { - if let Some(ip_line) = line.split('\n').find(|l| l.contains("Nmap scan report for")) { + if line.contains("Nmap scan report for") { + let ip_line = line; + log("network_utils", &*ip_line, LogLevel::Debug); + if let Some(next_line) = stdout.lines().find(|l| l.to_lowercase().contains(mac)) { + log("network_utils", &*next_line, LogLevel::Debug); if let Some(ip) = ip_line.split_whitespace().last() { return Some(ip.to_string()); }