调整mtu
This commit is contained in:
+1
-1
@@ -43,7 +43,7 @@
|
|||||||
|
|
||||||
### -u `<mtu>`
|
### -u `<mtu>`
|
||||||
|
|
||||||
设置虚拟网卡的mtu值,大多数情况下使用默认值效率会更高,也可根据实际情况微调这个值,默认值为1430
|
设置虚拟网卡的mtu值,大多数情况下使用默认值效率会更高,也可根据实际情况微调这个值,不加密默认为1430,加密默认为1410
|
||||||
|
|
||||||
### --tcp
|
### --tcp
|
||||||
和服务端使用tcp通信。有些网络提供商对UDP限制比较大,这个时候可以选择使用TCP模式,提高稳定性。一般来说udp延迟和消耗更低
|
和服务端使用tcp通信。有些网络提供商对UDP限制比较大,这个时候可以选择使用TCP模式,提高稳定性。一般来说udp延迟和消耗更低
|
||||||
|
|||||||
+1
-1
@@ -435,7 +435,7 @@ fn print_usage(program: &str, _opts: Options) {
|
|||||||
println!(" -w <password> 使用该密码生成的密钥对客户端数据进行加密,并且服务端无法解密,使用相同密码的客户端才能通信");
|
println!(" -w <password> 使用该密码生成的密钥对客户端数据进行加密,并且服务端无法解密,使用相同密码的客户端才能通信");
|
||||||
println!(" -W 加密当前客户端和服务端通信的数据,请留意服务端指纹是否正确");
|
println!(" -W 加密当前客户端和服务端通信的数据,请留意服务端指纹是否正确");
|
||||||
println!(" -m 模拟组播,默认情况下组播数据会被当作广播发送,开启后会模拟真实组播的数据发送");
|
println!(" -m 模拟组播,默认情况下组播数据会被当作广播发送,开启后会模拟真实组播的数据发送");
|
||||||
println!(" -u <mtu> 自定义mtu(默认为1430)");
|
println!(" -u <mtu> 自定义mtu(不加密默认为1430,加密默认为1410)");
|
||||||
println!(" --tcp 和服务端使用tcp通信,默认使用udp,遇到udp qos时可指定使用tcp");
|
println!(" --tcp 和服务端使用tcp通信,默认使用udp,遇到udp qos时可指定使用tcp");
|
||||||
println!(" --ip <IP> 指定虚拟ip,指定的ip不能和其他设备重复,必须有效并且在服务端所属网段下,默认情况由服务端分配");
|
println!(" --ip <IP> 指定虚拟ip,指定的ip不能和其他设备重复,必须有效并且在服务端所属网段下,默认情况由服务端分配");
|
||||||
println!(" --relay 仅使用服务器转发,不使用p2p,默认情况允许使用p2p");
|
println!(" --relay 仅使用服务器转发,不使用p2p,默认情况允许使用p2p");
|
||||||
|
|||||||
+12
-1
@@ -147,7 +147,18 @@ impl VntUtil {
|
|||||||
}
|
}
|
||||||
tun_tap_device::DeviceType::Tun
|
tun_tap_device::DeviceType::Tun
|
||||||
};
|
};
|
||||||
let mtu = self.config.mtu.unwrap_or(1430);
|
let mtu = match self.config.mtu {
|
||||||
|
None => {
|
||||||
|
if self.config.password.is_none(){
|
||||||
|
1430
|
||||||
|
}else{
|
||||||
|
1410
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Some(mtu) => {
|
||||||
|
mtu
|
||||||
|
}
|
||||||
|
};
|
||||||
let in_ips = self.config.in_ips.iter().map(|(dest, mask, _)| { (Ipv4Addr::from(*dest & *mask), Ipv4Addr::from(*mask)) }).collect::<Vec<(Ipv4Addr, Ipv4Addr)>>();
|
let in_ips = self.config.in_ips.iter().map(|(dest, mask, _)| { (Ipv4Addr::from(*dest & *mask), Ipv4Addr::from(*mask)) }).collect::<Vec<(Ipv4Addr, Ipv4Addr)>>();
|
||||||
|
|
||||||
let (device_writer, device_reader, driver_info) = tun_tap_device::create_device(device_type, response.virtual_ip,
|
let (device_writer, device_reader, driver_info) = tun_tap_device::create_device(device_type, response.virtual_ip,
|
||||||
|
|||||||
Reference in New Issue
Block a user