TCPソケットを介してVPNサーバーに接続するVPNアプリケーションがあります。setsockopt
TCPソケットパケットをおよびとしてマークしましたSO_MARK
。ping 10.0.0.1
VPNゲートウェイを正常にpingできます。
その後、VPNを介してすべてのトラフィックをルーティングしてみました。別のテーブルを作成し、ip route add default via 10.0.0.1 dev tun0 table 200
デフォルトゲートウェイを使用して追加しますip rule add lookup 200
。
ただし、VPN 独自のパケットが VPN を通過し始めます。 VPNを直接実行しますが、ip rule add fwmark 1234 lookup main
私のパケットはVPNから除外されます。 tcpdumpでこれを見ることができ、eth0
VPNサーバーが応答します。ただし、着信パケットはTCPソケットに転送されません。カーネルがそれらを捨てているようです。なぜ?
着信パケットがソケットに転送されない
おすすめ記事
- sched_setaffinityの最大CPU数の正しい値は何ですか?
- wc -w コマンドが誤った回答を出力します。
- 接続するGTK gtkdialogウィンドウ
- 誤ってパイプの代わりに出力リダイレクトを使用する
- 名前は同じですが、拡張子が別のファイルを圧縮する方法は?
- Linuxパーティションは自分自身を知らない別のパーティションにファイルを作成しますか?それでは、どのようにこのようなことが起こらないようにすることができますか?
- X画面レイアウト情報を取得する
- ddコマンドを使用してファイルを別のファイルの特定の場所にコピーする方法は?
- MVC の ViewModel とは何ですか? 質問する
- 2 つのソートされた配列を 1 つのソートされた配列に結合するにはどうすればよいでしょうか? [closed] 質問する