TUNインターフェイスを使用してクライアントとサーバー間のローカル通信を確立したいと思います。
クライアントプログラムは、IPアドレス@IP1を持っていると仮定するインタフェースTUN1に接続されます。
サーバープログラムは、IPアドレス@IP2を持っていると仮定するインターフェースTUN2に接続されます。
宛先アドレスがIP2(サーバーのIP)であるパケットはTUN2を通過し、宛先アドレスがIP1(クライアントのIP)であるパケットはTUN1インターフェースを通過するようにルーティングルールを定義する必要があります。
ルールの例:
route add -net 10.2.0.0/24 dev tun2 #we suppose that the server's IP is in the subnet 10.2.0.0/24
route add -net 10.1.0.0/24 dev tun1 #the client's IP is in the subnet 10.1.0.0/24
クライアントからサーバーに送信されたパケットが通過するiptablesチェーンを知る必要があります。
私が理解したところによると、次のようにすべきだと思います。
Client==TUN1--->(PREROUTING)--->Routing--->(FORWARD)--->Routing--->(POSTROUTING)--->TUN2==Server