Ubuntuボックスserverには2つのネットワークインターフェイスがあります:
eth0 50.57.71.100
eth1 10.182.161.100
Ubuntuボックスclientには1つのネットワークインターフェイスがあります:
eth0 10.177.30.100
serverおよびclientすでに問題なく相互に通信できます。これがclientのルーティングテーブルです:
10.176.0.0/12 via 10.177.0.1 dev eth0
10.177.0.0/17 dev eth0 proto kernel scope link src 10.177.30.100
10.208.0.0/12 via 10.177.0.1 dev eth0
serverのカーネルでipv4転送を有効にしました。マシンからのインターネットトラフィックがclient経由でルーティングされるようにこれを設定するにはどうすればよいですかサーバー? (たとえば、8.8.8.8にpingを実行します)
clientにルートを追加しようとしましたが、削除するまですべてのネットワーク接続が失われました。
route add 10.182.161.100/32 dev eth0
clientのデフォルトゲートウェイをserverしかし、これは失敗します:
# route add default gw 10.182.161.100
SIOCADDRT: No such process
ルーター10.177.0.1
の背後にあるネットワークからのトラフィックを別のルート(具体的にはサーバーへ)に送信する場合は、10.177.0.1
でサーバーを指すルートを設定します。
これにより、10.177.0.1
を通過するすべての送信トラフィックがサーバーを経由することになりますが、それが必要かどうかはわかりません。
OpenVPN サーバーをサーバーにインストールし、クライアントをクライアントにインストールできます。 「redirect-gatewaydef1」を使用すると、クライアントのデフォルトルートがサーバーにリダイレクトされます。
OpenVPNのセットアップが機能した後、インターネット側のクライアントのプライベートIPを削除するには、NAT(マスカレード))を展開する必要があります。
UPDATE:Andrew Schulmansのコメントの後、私はもう少し調査しました。目標はトンネルのセキュリティではないため、 [〜#〜] gre [〜#〜] トンネルはニーズに適していて、セットアップが簡単です。あなたの場合、クライアントのデフォルトルートはサーバーを指す必要があり、マスカレードを行う必要があります。
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Iptablesルールを永続化するには:
service iptables save