web-dev-qa-db-ja.com

あるVPNから別のVPNにパケットをルーティングする

OpenSUSEサーバーに2つのOpenVPNサーバー(10.8.0.0と10.9.0.0)をセットアップしています。 1つのネットワーク内では、各コンピューターが他のコンピューターから見えるようになっていますが、コンピューターがネットワーク全体で見えるようにしたいと思います。このようにパケットをルーティングしたいと思います。ユーザー(たとえば10.8.0.6)が他のVPN(10.9.0.6)のアドレスにpingを実行すると、パケットは10.9.0.1にルーティングされ、次にこの中の適切なコンピューターにルーティングされます。 VPN。 iptablesまたは別のツールを使用してこれを実現するにはどうすればよいですか? このセクション の最後にあるコマンドを試しましたが、役に立ちませんでした。

3
Mike

DD-WRTプロジェクトのwikiにはOpenVPNの例がいくつかあり、サンプル構成は 高度な構成:複数のルーティングされたネットワーク セクションで必要なことを正確に実行する必要があります。

あなたが心に留めておきたい重要な部分はこの抜粋にあります:

両方が同じサーバーに接続するため、両方のクライアントに同じポート番号を使用することはできません。したがって、最初のクライアントにポート1999を、2番目のクライアントにポート2000を指定します。また、Client1にClient2のサブネットに到達する方法を指示する必要があります。その逆も同様です。これは、構成に2番目のルーティングエントリを含めることを意味します。

既存の構成に追加する必要がある可能性が最も高いのは次のとおりです。

10.8.0.0のクライアントのOpenVPN構成

port 2000
# Create routes
route add -net 10.8.0.0 netmask 255.255.255.0 gw 10.8.0.1
route add -net 10.9.0.0 netmask 255.255.255.0 gw 10.8.0.1

10.8.0.0のクライアントのiptables構成

# Open firewall holes
iptables -I INPUT 2 -p udp --dport 2000 -j ACCEPT
iptables -I FORWARD -i br0 -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -o br0 -j ACCEPT

10.9.0.0上のクライアントのOpenVPN構成

port 1999
# Create routes
route add -net 10.9.0.0 netmask 255.255.255.0 gw 10.9.0.1
route add -net 10.8.0.0 netmask 255.255.255.0 gw 10.9.0.1

10.9.0.0のクライアントのiptables構成

# Open firewall holes
iptables -I INPUT 2 -p udp --dport 1999 -j ACCEPT
iptables -I FORWARD -i br0 -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -o br0 -j ACCEPT

サーバーのOpenVPN構成

# Create routes
route add -net 10.8.0.0 netmask 255.255.255.0 gw 10.8.0.6
route add -net 10.9.0.0 netmask 255.255.255.0 gw 10.9.0.6

サーバーのiptables構成

# Open firewall holes for Client1
iptables -I INPUT 2 -p udp --dport 2000 -j ACCEPT
iptables -I FORWARD -i br0 -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -o br0 -j ACCEPT

# Open firewall holes for Client2
iptables -I INPUT 2 -p udp --dport 1999 -j ACCEPT
iptables -I FORWARD -i br0 -o tun1 -j ACCEPT
iptables -I FORWARD -i tun1 -o br0 -j ACCEPT

# Allow Forwarding packets between Client1 and Client2
iptables -I FORWARD -i tun0 -o tun1 -j ACCEPT
iptables -I FORWARD -i tun1 -o tun0 -j ACCEPT

これらの手順は、設定が簡単なイーサネットルーティングを設定するためのものであり、おそらくケースに必要なものであることに注意してください。ただし、ブリッジングが提供する機能が必要だと思われる場合は、 ブリッジングとルーティングの違い 、およびセットアップ方法の概要 イーサネットブリッジング を確認する必要があります。

3
aculich