From 8c0652a2e2dac8c38ddd668b33b8aaf5d586754d Mon Sep 17 00:00:00 2001 From: Luna Yao <40349250+ZnqbuZ@users.noreply.github.com> Date: Wed, 29 Apr 2026 03:33:32 +0200 Subject: [PATCH] config: add disabled flag --- easytier/src/dns/config/dns.rs | 1 + easytier/src/instance/instance.rs | 17 ++++++++--------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/easytier/src/dns/config/dns.rs b/easytier/src/dns/config/dns.rs index 811238b6..f5aeb611 100644 --- a/easytier/src/dns/config/dns.rs +++ b/easytier/src/dns/config/dns.rs @@ -12,6 +12,7 @@ use std::collections::HashMap; #[optional_struct(DnsConfigRaw)] #[derive(Debug, Clone, Default, PartialEq, Deserialize, Serialize)] pub struct DnsConfigParsed { + pub disabled: bool, #[serde(rename = "zone")] pub zones: Vec, #[optional_skip_wrap] diff --git a/easytier/src/instance/instance.rs b/easytier/src/instance/instance.rs index 9f8a96f9..6723afcd 100644 --- a/easytier/src/instance/instance.rs +++ b/easytier/src/instance/instance.rs @@ -7,6 +7,12 @@ use std::sync::{Arc, Weak}; #[cfg(feature = "tun")] use std::time::Duration; +use super::listeners::ListenerManager; +use super::public_ipv6_provider::{ + reconcile_public_ipv6_provider_runtime, run_public_ipv6_provider_reconcile_task, + should_run_public_ipv6_provider_reconcile, validate_public_ipv6_config, + validate_public_ipv6_config_values, +}; use crate::common::PeerId; use crate::common::acl_processor::AclRuleBuilder; use crate::common::config::ConfigLoader; @@ -17,7 +23,7 @@ use crate::connector::manual::{ConnectorManagerRpcService, ManualConnectorManage use crate::connector::tcp_hole_punch::TcpHolePunchConnector; use crate::connector::udp_hole_punch::UdpHolePunchConnector; #[cfg(feature = "magic-dns")] -use crate::dns::node::DnsNode; +use crate::dns::{config::DnsConfigLoaderExt, node::DnsNode}; use crate::gateway::icmp_proxy::IcmpProxy; #[cfg(feature = "kcp")] use crate::gateway::kcp_proxy::{KcpProxyDst, KcpProxyDstRpcService, KcpProxySrc}; @@ -60,13 +66,6 @@ use tokio::sync::{Mutex, Notify}; use tokio::{sync::oneshot, task::JoinSet}; use tokio_util::task::AbortOnDropHandle; -use super::listeners::ListenerManager; -use super::public_ipv6_provider::{ - reconcile_public_ipv6_provider_runtime, run_public_ipv6_provider_reconcile_task, - should_run_public_ipv6_provider_reconcile, validate_public_ipv6_config, - validate_public_ipv6_config_values, -}; - #[cfg(feature = "socks5")] use crate::gateway::socks5::Socks5Server; @@ -930,7 +929,7 @@ impl Instance { } #[cfg(feature = "magic-dns")] - { + if !self.global_ctx.config.get_dns().disabled { let mut node = DnsNode::new( self.get_peer_manager(), self.get_global_ctx(),