問題タブ [wfp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 他のすべてのプログラムをブロックしながら、単一のプログラムへのアクセスを許可する (WFP)
Windows Filtering Platform を使用して、すべてのコンピューター アプリケーションから 1 つの特定のアプリケーションを差し引いてブロックする必要がありますか?
このコードを試してみましたが機能しません。すべてのトラフィックをブロックします:(
前もって感謝します
kernel - 誰かがフィルターを削除したときに通知を受け取りたい
ネットワークイベントをフィルタリングしているWFPドライバーがあり、FwpmFilterAddを使用してファイラーを追加しましたが、誰か/アプリケーションがFwpmFilterDeleteByKey0を使用してフィルターを削除する可能性があります。フィルターの削除に関する通知を受け取りたいです。それはできますか?
FwpmFilterSubscribeChanges0 を追跡するユーザー モード用の API があることがわかりますが、カーネル モード用は見つかりませんでした
windows - Windows でアプリごとのルーティング動作を実装するにはどうすればよいですか?
Windows 10 デスクトップで (OpenVPN を使用して) VPN を実行しており、VPN がデフォルト ゲートウェイであるため、デフォルトですべてのトラフィックが VPN トンネルを通過します。
ただし、特定のアプリを VPN から除外したいので、それらのトラフィックは代わりに VPN を通過して物理インターフェイスから直接送信されます (いわゆる「スプリット トンネリング」)。
このソリューションには、WFP (Windows Filtering Platform) API、およびおそらく Windows に相当する API が含まれると思います。
これは現在、「cgroups」とポリシーベースのルーティング/複数のルーティングテーブルを介して Linux で動作しています。
しかし、Windows にはポリシー ベースのルーティングも複数のルーティング テーブルもありません。しかし、Windowsでこれを実現する方法はまだ考えられますが、それを実現するためのAPIが見つかりません
SO_BINDTO_DEVICE
1 つの方法は、特定のアプリのソケット作成をフックし、ソケット オプション ( ) に相当する Windows を使用してsetsockopt()
、タップ ドライバーではなく物理インターフェイスにソケットを強制的にバインドすることです。
しかし、繰り返しになりますが、上記を実現するための関連 API が見つかりません。
だから私はいくつかの質問があります:
(1)WFP(Windows Filtering Platform)または一般的なWindows APIの特定のAPI内で私がやりたいことは可能ですか?もしそうなら、どのAPIを見るようにアドバイスしますか?
(2) または、「WFP 呼び出しドライバー」を作成する必要がありますか? もしそうなら、これに関するいくつかのリソースを教えてもらえますか?また、私の特定の問題の良い出発点になる可能性がありますか? :)
(3) 他に足りないものはありますか? 私が望むものを達成するためのより簡単なアプローチ? 一部のVPNで機能を確認したため、Windowsで可能であることは知っていますが、自分の個人用VPNで複製したいと思います:)