diff --git a/.gitignore b/.gitignore index 3df278e..7be846b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ target -.vscode +.vscode \ No newline at end of file diff --git a/src/client.rs b/src/client.rs index 41572bd..6a45320 100644 --- a/src/client.rs +++ b/src/client.rs @@ -17,6 +17,11 @@ pub async fn client_mode(remote_addr: &str) -> io::Result<()> { config.destination("0.0.0.0"); config.name("tun0"); + #[cfg(target_os = "linux")] + config.platform(|config| { + config.packet_information(true); + }); + let tun_device = Arc::new(Mutex::new(tun::create(&config).unwrap())); let sock = Arc::new(Mutex::new(UdpSocket::bind("0.0.0.0:59611").await?)); diff --git a/src/server.rs b/src/server.rs index 4d86857..a6abc49 100644 --- a/src/server.rs +++ b/src/server.rs @@ -17,6 +17,11 @@ pub async fn server_mode() -> io::Result<()> { config.address("10.8.0.1"); config.name("tun0"); + #[cfg(target_os = "linux")] + config.platform(|config| { + config.packet_information(true); + }); + let tun_device = Arc::new(Mutex::new(tun::create(&config).unwrap())); let sock = Arc::new(Mutex::new(UdpSocket::bind("192.168.0.5:8879".parse::().unwrap()).await?));