SSHルーティングの問題によるIPsecVPN + PPP

SSHルーティングの問題によるIPsecVPN + PPP

2つのDebianホストAとBがあります。 AでIPsec VPNを起動すると、VPNクライアントはここに接続できます。同時に、SSHを介してAとBの間でPPPを開始します。したがって、ホストAでは、ppp0はPPPセッションによって作成された新しいIfaceとして表示されます。

私の計画は、すべてのVPNクライアントがIPsecを介してホストAに接続できるようにすることです。その後、VPNクライアントからインターネットへのすべてのIPトラフィックはppp0を通過する必要があります。つまり、ホストBをVPNネットワークと外部世界間のプロキシとして使用し、ホストAをVPNゲートウェイとして使用したいと思います。ただし、ppp0をデフォルトゲートウェイとして追加すると、すべてのVPNクライアントリンクが失われます。 AとBの間のsshはまだ機能します。詳細は次のとおりです。

ステップ1。 SSH経由でpppを起動します。

以下は、ステップ1以降のルーティングテーブルです。

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.23.191.253  0.0.0.0         UG    0      0        0 eth0
10.0.8.1        0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
123.58.217.XX   172.23.191.253  255.255.255.255 UGH   0      0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.23.176.0    0.0.0.0         255.255.240.0   U     0      0        0 eth0
192.168.42.253  0.0.0.0         255.255.255.255 UH    0      0        0 ppp1

ステップ2。デフォルトのIfaceでppp0を追加する

次に、ホストBからホストAにSSHを介してルーティングテーブルを印刷します。次のようになります。

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 ppp0
0.0.0.0         172.23.191.253  0.0.0.0         UG    0      0        0 eth0
10.0.8.1        0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
123.58.217.XX   172.23.191.253  255.255.255.255 UGH   0      0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.23.176.0    0.0.0.0         255.255.240.0   U     0      0        0 eth0

以前に接続していたIPsecクライアントを表すppp1が削除されていることがわかります。ホストAのパブリックIPは8.129.XXで、プライベートIPは172.23.191.254です。後ろにステップ2、外部から8.129.XXにpingを送信できません。ただし、同時にホストA内ではどこからでもpingを送信できます。私はインターネットに行くすべてのIPパケットをppp0に送信する必要があると仮定します。ホストのAIがインターネットサイトにpingできるので、これがうまくいくようです。しかし、IPsec接続が失われ、インターネット上でホストAをpingできない問題を解決するにはどうすればよいですか?

関連情報