A traffic transparently redirect bindings for Rust.
Rust bindings for tcp traffic transparently redirect, it provides a few major features: * tcp ingress/egress transparently redirect to local port * avoid the use of kernel connntrack
Limitations: * kernel version >= 3.16 * IPv4 available only
A basic implementation example.
toml
[dependencies]
leicester = { version = "0.0.1" }
Then, on your main.rs: ```rust,no_run use leicester::{self, Config};
fn main() { let conf = &Config { ethname: "ens33", proxyport: "17000", redirectport: "9080", routetable: "133", ignore_mask: 68, mask: 1, };
let hijacker = leicester::Builder::new(conf);
if hijacker.deploy().is_ok() {
println!("traffic redirect rules deploy successeful!");
} else {
println!("traffic redirect rules deploy failed!");
}
}
```
More examples can be found here.
This library is verified to work in rustc 1.51.0 (nightly), and the support of other versions needs more testing.
This project is licensed under the Apache License 2.0.