From baa71a51eb7b9359883ad7eee70c423d3a449efa Mon Sep 17 00:00:00 2001 From: lubeilin <1791778603@qq.com> Date: Wed, 30 Aug 2023 21:53:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B9=BF=E6=92=AD=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vnt/src/handle/tun_tap/mod.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/vnt/src/handle/tun_tap/mod.rs b/vnt/src/handle/tun_tap/mod.rs index fa37b8e..1f95e8c 100644 --- a/vnt/src/handle/tun_tap/mod.rs +++ b/vnt/src/handle/tun_tap/mod.rs @@ -1,5 +1,5 @@ use std::io; -use std::net::SocketAddrV4; +use std::net::{Ipv4Addr, SocketAddrV4}; use std::sync::Arc; use parking_lot::RwLock; use packet::ip::ipv4::packet::IpV4Packet; @@ -121,12 +121,14 @@ pub async fn base_handle(sender: &ChannelSender, buf: &mut [u8], } } Protocol::Udp => { - client_cipher.encrypt_ipv4(&mut net_packet)?; let multicast_members = if let Some(igmp_server) = igmp_server { igmp_server.load(&dest_ip) } else { + //当作广播处理 + net_packet.set_destination(Ipv4Addr::BROADCAST); None }; + client_cipher.encrypt_ipv4(&mut net_packet)?; broadcast(server_cipher, multicast_members, sender, &mut net_packet, ¤t_device).await?; } _ => {} @@ -173,8 +175,6 @@ pub async fn base_handle(sender: &ChannelSender, buf: &mut [u8], let mut ipv4_packet = IpV4Packet::new(net_packet.payload_mut())?; ipv4_packet.set_source_ip(source_ip); ipv4_packet.update_checksum(); - }else{ - log::warn!("不存在接口 {:?}",dest_addr); } } Protocol::Udp => {