パブリック IP を持つサーバーに OpenVPN サーバー (VPN IP = 10.8.0.1) をセットアップしました。また、学校の IP を持つワークステーション (Ubuntu) を研究室に設置し、学校のイントラネット リソースにアクセスできます。
Android フォンと Windows PC がそのリソースにアクセスできるようにしたいので、次の操作を行います。
OpenVPN サーバー設定:
dev tun
トポロジ サブネット
サーバー 10.8.0.0 255.255.255.0
client-config-dir /etc/openvpn/server/ccd
push "route 10.8.0.0 255.255.255.0"
push "route-gateway 10.8.0.3"ワークステーションをサーバーに接続し、IP 10.8.0.3 を取得します。その CCD 構成 (クライアント構成に相当) は次のとおりです。
ifconfigプッシュ10.8.0.3 255.255.255.0
ワークステーションでは、iptables を使用し、いくつかの項目を追加しました:
$ sudo iptables -t filter -S
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
$ sudo iptables -t nat -S
-P PREROUTING ACCEPT
-P INPUT ACCEPT
-P OUTPUT ACCEPT
-P POSTROUTING ACCEPT
-A POSTROUTING -s 10.8.0.0/24 -o wlx0810752b55c9 -j MASQUERADE自宅の PC の CCD 構成は次のとおりです。
ifconfig-push 10.8.0.5 255.255.255.0
「ルートゲートウェイ 10.8.0.3」を
プッシュ 「リダイレクトゲートウェイ def1 バイパス DHCP」を
プッシュ 「DHCP オプション DNS 8.8.8.8」をプッシュ結果1 PC はインターネットに接続できません。その PC のルート テーブルは次のとおりです。
ルート印刷 -4
0.0.0.0 0.0.0.0 192.168.1.254 192.168.1.21 35
0.0.0.0 128.0.0.0 10.8.0.3 10.8.0.5 291
128.0.0.0 128.0.0.0 10.8.0.3 10.8.0.5 291
最後の 2 つの項目は、元のデフォルト ゲートウェイを削除せずに、「redirect-gateway def1」が追加したものです。def1 がトラフィックをリダイレクトする理由が気になります。元のデフォルト ゲートウェイがまだ存在し、メトリックがより優れているため、トラフィックが VPN を通過しないからです。
結果 2 私の Android フォンもできません。
$ busybox ip route show table all
default via 10.183.93.203 dev ccmni0 table 1002
default dev tun0 src 10.8.0.4
10.8.0.0/24 dev tun0 table 1015
10.8.0.0/24 dev tun0 src 10.8.0.4 ...
ワークステーションがトラフィックを受信していないことを確認しました。
$ sudo tcpdump -i tun0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 262144 bytes
^C
0 packets captured
0 packets received by filter
0 packets dropped by kernel
$
これについては多くのトピックを検討しましたが、有効な解決策はありませんでした。どなたか助けてください。どんな提案でも大歓迎です!
答え1
サーバーのccdディレクトリのワークステーションファイルにはirouteが含まれているはずです。試してみてください。アクセスサーバーを使用せずに、ここに示すようにLinuxクライアントをゲートウェイとして使用して同じことを実行しようとしています。 https://www.youtube.com/watch?v=b7qr0laM8kA