mirror of
https://mirror.suhoan.cn/https://github.com/EasyTier/EasyTier.git
synced 2025-12-15 06:07:23 +08:00
Add a setting "disable_udp_hole_punch" to disable UDP hole punch function (#291)
It can solve #289 tentative. Co-authored-by: 3rdnature <root@natureblog.net>
This commit is contained in:
@@ -108,6 +108,9 @@ core_clap:
|
|||||||
disable_p2p:
|
disable_p2p:
|
||||||
en: "disable p2p communication, will only relay packets with peers specified by --peers"
|
en: "disable p2p communication, will only relay packets with peers specified by --peers"
|
||||||
zh-CN: "禁用P2P通信,只通过--peers指定的节点转发数据包"
|
zh-CN: "禁用P2P通信,只通过--peers指定的节点转发数据包"
|
||||||
|
disable_udp_hole_punching:
|
||||||
|
en: "disable udp hole punching"
|
||||||
|
zh-CN: "禁用UDP打洞功能"
|
||||||
relay_all_peer_rpc:
|
relay_all_peer_rpc:
|
||||||
en: "relay all peer rpc packets, even if the peer is not in the relay network whitelist. this can help peers not in relay network whitelist to establish p2p connection."
|
en: "relay all peer rpc packets, even if the peer is not in the relay network whitelist. this can help peers not in relay network whitelist to establish p2p connection."
|
||||||
zh-CN: "转发所有对等节点的RPC数据包,即使对等节点不在转发网络白名单中。这可以帮助白名单外网络中的对等节点建立P2P连接。"
|
zh-CN: "转发所有对等节点的RPC数据包,即使对等节点不在转发网络白名单中。这可以帮助白名单外网络中的对等节点建立P2P连接。"
|
||||||
|
|||||||
@@ -178,6 +178,8 @@ pub struct Flags {
|
|||||||
pub disable_p2p: bool,
|
pub disable_p2p: bool,
|
||||||
#[derivative(Default(value = "false"))]
|
#[derivative(Default(value = "false"))]
|
||||||
pub relay_all_peer_rpc: bool,
|
pub relay_all_peer_rpc: bool,
|
||||||
|
#[derivative(Default(value = "false"))]
|
||||||
|
pub disable_udp_hole_punching: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, Deserialize, Serialize, PartialEq)]
|
#[derive(Debug, Clone, Deserialize, Serialize, PartialEq)]
|
||||||
|
|||||||
@@ -605,6 +605,9 @@ impl UdpHolePunchConnector {
|
|||||||
if self.data.global_ctx.get_flags().disable_p2p {
|
if self.data.global_ctx.get_flags().disable_p2p {
|
||||||
return Ok(());
|
return Ok(());
|
||||||
}
|
}
|
||||||
|
if self.data.global_ctx.get_flags().disable_udp_hole_punching {
|
||||||
|
return Ok(());
|
||||||
|
}
|
||||||
|
|
||||||
self.run_as_client().await?;
|
self.run_as_client().await?;
|
||||||
self.run_as_server().await?;
|
self.run_as_server().await?;
|
||||||
|
|||||||
@@ -266,6 +266,13 @@ struct Cli {
|
|||||||
)]
|
)]
|
||||||
disable_p2p: bool,
|
disable_p2p: bool,
|
||||||
|
|
||||||
|
#[arg(
|
||||||
|
long,
|
||||||
|
help = t!("core_clap.disable_udp_hole_punching").to_string(),
|
||||||
|
default_value = "false"
|
||||||
|
)]
|
||||||
|
disable_udp_hole_punching: bool,
|
||||||
|
|
||||||
#[arg(
|
#[arg(
|
||||||
long,
|
long,
|
||||||
help = t!("core_clap.relay_all_peer_rpc").to_string(),
|
help = t!("core_clap.relay_all_peer_rpc").to_string(),
|
||||||
|
|||||||
Reference in New Issue
Block a user