
openvpnトンネル(各トンデバイス)を介して接続したい2つのネットワークがあります。
サーバー側のネットワークは10.10.7.0/24で、
VPNゲートウェイはIPが10.10.7.12のVMで実行されており、
VPNゲートウェイ側のVPNトンネルIPは10.10.9.1(tun0)
、ルーターは有線ルーターです。 IPは10.10.7.1です。
ルータには、10.10.10.0/24から10.10.7.12までのルーティングエントリがあります。
ルータは 1194 から 10.10.7.12:1194 にポート転送を実行します。
クライアントネットワークは10.10.10.0/24です。
クライアントルータはIP 10.10.10.1のDebianラズベリーです。
プール(192.168.0.xx)のIPを使用して外部wlan(wlan0)に接続します。
クライアントは(まだ)
イーサネット(eth0)を介してVPNに接続します。トンネルのIPは10.10.9.2です。
VPN接続を確立し、ネットワーク間のルーティングが必要です。
クライアント側では、「route add -net 10.10.7.0/24 tun0」でパスを追加しました。サーバー
側では、「route add -net 10.10.10.0/24 tun0」でパスを追加しました。
サーバー側が受け入れるように設定されています。
私はマスカレーディングやsnatを設定していませんが、TCPパケットの発信者IPがペイロードの発信者IPと異なる場合、私が実行しているサービスが混乱しているので、したくありません。
他のインターネット接続はトンネルを介してルーティングしてはいけません。
これで、クライアントゲートウェイからサーバーや他のネットワークにpingを実行できるようになりました。 httpも動作します。ただし、サーバーからクライアントゲートウェイにpingを送信できず、どのサービスにもアクセスできません(例:[Eメール保護])。私は何を見逃していますか?
ご協力ありがとうございます。
答え1
"route add -net 10.10.10.0/24 tun0"はopenvpnにトラフィックを送信しますが、どのクライアントにトラフィックを送信するかをopenvpnサーバーに通知しませんでした。
これを行うには、irouteディレクティブを使用する必要があります。
iroute 10.10.10.0 255.255.255.0
これはサーバーの/etc/openvpn/ccd/<cn>になければなりません(<cn>をクライアント証明書の一般名に置き換えます)。