How do we perform packet/socket modification using Network Extensions?

Using "content filters" we can simply allow/reject packets - but how do we actually modify packets (or sockets)?


Say i want to globally intercept socket bind() events and force sockets to bind to a different address, is this possible using Network Extensions?


It's absolutely possible using the deprecated NKE API, further, this is also possible on Windows using WFP and a very nice API there too! - but i cannot figure out how to do this using Network Extensions. This is an extremely important capability!

Replies

Have exact same question. In WWDC 2019, it mentioned TransparentProxy could do it. But so far no docus, no samples. Don't know how to do it.