mirror of
https://github.com/tun2proxy/tun2proxy.git
synced 2025-04-26 16:56:05 +00:00
add udp timeout option
This commit is contained in:
parent
74e5220d08
commit
361cf95f4e
2 changed files with 6 additions and 2 deletions
|
@ -45,6 +45,10 @@ pub struct Args {
|
||||||
#[arg(long, value_name = "seconds", default_value = "600")]
|
#[arg(long, value_name = "seconds", default_value = "600")]
|
||||||
pub tcp_timeout: u64,
|
pub tcp_timeout: u64,
|
||||||
|
|
||||||
|
/// UDP timeout in seconds
|
||||||
|
#[arg(long, value_name = "seconds", default_value = "10")]
|
||||||
|
pub udp_timeout: u64,
|
||||||
|
|
||||||
/// Verbosity level
|
/// Verbosity level
|
||||||
#[arg(short, long, value_name = "level", value_enum, default_value = "info")]
|
#[arg(short, long, value_name = "level", value_enum, default_value = "info")]
|
||||||
pub verbosity: ArgVerbosity,
|
pub verbosity: ArgVerbosity,
|
||||||
|
@ -62,6 +66,7 @@ impl Default for Args {
|
||||||
dns_addr: "8.8.8.8".parse().unwrap(),
|
dns_addr: "8.8.8.8".parse().unwrap(),
|
||||||
bypass: vec![],
|
bypass: vec![],
|
||||||
tcp_timeout: 600,
|
tcp_timeout: 600,
|
||||||
|
udp_timeout: 10,
|
||||||
verbosity: ArgVerbosity::Info,
|
verbosity: ArgVerbosity::Info,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,7 +50,6 @@ mod virtual_dns;
|
||||||
const DNS_PORT: u16 = 53;
|
const DNS_PORT: u16 = 53;
|
||||||
|
|
||||||
const MAX_SESSIONS: u64 = 200;
|
const MAX_SESSIONS: u64 = 200;
|
||||||
const UDP_TIMEOUT_SEC: u64 = 10; // 10 seconds
|
|
||||||
|
|
||||||
static TASK_COUNT: std::sync::atomic::AtomicU64 = std::sync::atomic::AtomicU64::new(0);
|
static TASK_COUNT: std::sync::atomic::AtomicU64 = std::sync::atomic::AtomicU64::new(0);
|
||||||
use std::sync::atomic::Ordering::Relaxed;
|
use std::sync::atomic::Ordering::Relaxed;
|
||||||
|
@ -87,7 +86,7 @@ where
|
||||||
let mut ipstack_config = ipstack::IpStackConfig::default();
|
let mut ipstack_config = ipstack::IpStackConfig::default();
|
||||||
ipstack_config.mtu(mtu);
|
ipstack_config.mtu(mtu);
|
||||||
ipstack_config.tcp_timeout(std::time::Duration::from_secs(args.tcp_timeout));
|
ipstack_config.tcp_timeout(std::time::Duration::from_secs(args.tcp_timeout));
|
||||||
ipstack_config.udp_timeout(std::time::Duration::from_secs(UDP_TIMEOUT_SEC));
|
ipstack_config.udp_timeout(std::time::Duration::from_secs(args.udp_timeout));
|
||||||
|
|
||||||
let mut ip_stack = ipstack::IpStack::new(ipstack_config, device);
|
let mut ip_stack = ipstack::IpStack::new(ipstack_config, device);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue