OpenVPNとルートテーブルに関する多くの質問に似ているようですが、他の質問とは異なると思います。または、少なくともまだ重複した質問が見つかりませんでした。
私の場合、OpenVPNサーバーに接続した後、デフォルトゲートウェイが255.255.255.0(たとえば、マスクではなくゲートウェイ)に変更されたことを確認しました。以下は私のルーティングテーブルです。
OpenVPNサーバーに接続する前に:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.16.15.254 0.0.0.0 UG 20600 0 0 wlp0s20f3
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlp0s20f3
172.16.8.0 0.0.0.0 255.255.248.0 U 600 0 0 wlp0s20f3
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.18.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-8c249cf54f1c
OpenVPNサーバーに接続した後:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 255.255.255.0 128.0.0.0 UG 0 0 0 tun0
0.0.0.0 172.16.15.254 0.0.0.0 UG 600 0 0 wlp0s20f3
10.8.0.0 255.255.255.0 255.255.255.0 UG 0 0 0 tun0
128.0.0.0 255.255.255.0 128.0.0.0 UG 0 0 0 tun0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlp0s20f3
172.16.8.0 0.0.0.0 255.255.248.0 U 600 0 0 wlp0s20f3
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.18.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-8c249cf54f1c
192.168.100.0 255.255.255.0 255.255.255.0 UG 0 0 0 tun0
_VPN_server_IP_ 172.16.15.254 255.255.255.255 UGH 0 0 0 wlp0s20f3
255.255.255.0 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
期待どおりに動作します。 OpenVPNは、すべてのインターネットトラフィックをサーバー経由でルーティングし、すべてのトラフィックをリモートLAN(192.168.100.0/24)にルーティングします。ゲートウェイが255.255.255.0であることを見て混乱しました。ネットマスクが255.255.255.0で、ゲートウェイが255.255.255.0に設定されている場合は理解できます。これを理解する方法?
最初のエントリを削除すると、ip route del 0.0.0.0/1 via 255.255.255.0 dev tun0
インターネットは確実にVPN経由のルーティングを中断します。もう一度追加して遊んでみました。
ip route add 0.0.0.0/1 via _VPNserver_IP_ dev tun0
または、VPNサブネット(10.8.0.0/24)のサーバーIPを使用してください。
ip route add 0.0.0.0/1 via 10.8.0.1 dev tun0
どちらも機能しません。だから私はこれがOpenVPNがサーバーに接続するために使用するトリックの一種だと思います。どんなアドバイスも本当にありがとうございます。
ベストアンサー1
@ABが推測したように、これは実際に設定エラーによるものです。トポロジをサブネットとして指定することを忘れたので、デフォルトはnet30です。その結果、ログに次の警告が表示されます。
"Fri Apr 29 22:38:56 2022 WARNING: Since you are using --dev
tun with a point-to-point topology, the second argument to
--ifconfig must be an IP address. You are using something
(255.255.255.0) that looks more like a netmask. (silence this
warning with --ifconfig-nowarn)".
サブネットに変更した後の問題を修正しました。私のルーティングテーブルに含まれるエントリは次のとおりですtun0
。
10.8.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0
192.168.0.0 10.8.0.1 255.255.0.0 UG 0 0 0 tun0