diff options
author | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-11-13 14:45:26 +0100 |
---|---|---|
committer | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-11-13 14:45:26 +0100 |
commit | e096a3be05c484935594d84ae10d372d9bfe7738 (patch) | |
tree | a236bfb615bc62fd431491194e3970d3766b4272 | |
parent | e53701c6a8b2d9d7a8c5ced2123829efc4447cb6 (diff) |
rebind socket every time the link comes up
-rw-r--r-- | src/main.rs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs index d870de8..59a0cd9 100644 --- a/src/main.rs +++ b/src/main.rs @@ -142,8 +142,6 @@ async fn main() -> Result<()> { let sock: UdpSocket = sock.try_into()?; - sock.bind_device(Some("ppp0".as_bytes()))?; - let mut buf = [0; 1500]; loop { tokio::select! { @@ -153,10 +151,14 @@ async fn main() -> Result<()> { match read_ds_config() { Some(ds_config) if ds_config.v6.is_some() => { println!("[info] <> ipv6 link up"); + + sock.bind_device(Some("ppp0".as_bytes()))?; dhcp6c.up(); } _ => { println!("[info] <> ipv6 link down"); + + sock.bind_device(None)?; dhcp6c.down(); } } |