サーバーに ping は実行できますが、google.com や 8.8.8.8 には実行できず、traceroute も失敗します。
サーバ:
$iptables -t nat -A POSTROUTING -s 10.9.8.0/24 -o eth0 -j MASQUERADE
$openvpn --dev tun1 --server 10.9.8.0 255.255.255.0 --dh /etc/openvpn/easy-rsa/keys/dh2048.pem --ca /etc/openvpn/easy-rsa/keys/ca.crt --cert /etc/openvpn/easy-rsa/keys/Hal.crt --key /etc/openvpn/easy-rsa/keys/Hal.key --reneg-sec 60 --verb 5 --duplicate-cn --mode server --client-to-client --push "redirect-gateway def1"
クライアント:
$openvpn --remote 10.0.0.102 --dev tun1 --client --ca /etc/openvpn/easy-rsa/keys/ca.crt --cert /etc/openvpn/easy-rsa/keys/client1.crt --key /etc/openvpn/easy-rsa/keys/client1.key --reneg-sec 60 --verb 5
上記のコマンドを実行した後のクライアント上のルート テーブル:
$route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.9.8.5 128.0.0.0 UG 0 0 0 tun1
default 10.0.0.1 0.0.0.0 UG 0 0 0 eth0
10.0.0.0 * 255.0.0.0 U 0 0 0 eth0
routbuntu-2.loc 10.0.0.1 255.255.255.255 UGH 0 0 0 eth0
10.9.8.0 10.9.8.5 255.255.255.0 UG 0 0 0 tun1
10.9.8.5 * 255.255.255.255 UH 0 0 0 tun1
128.0.0.0 10.9.8.5 128.0.0.0 UG 0 0 0 tun1
答え1
----一般的に:
openvpn のサンプル .conf ファイルを使用する必要があります。重要なオプションが説明されているため、これを改善することができます。
このコマンドを使用して、ifconfig
VPN の起動後に、サーバー上およびクライアント上で仮想トンネル デバイス (例: tun0) が構成されている (起動/オンライン) かどうかを確認します。
verb 3
@verbosity、おそらくデフォルト値を試してみてverb 5
、出力を読んで、問題があればその出力を投稿してください。openvpn は、分析できるように詳細な出力を提供しています。
----問題への対処:
「サーバー」を ping することができます...その LAN IP アドレスまたは VPN 仮想 IP アドレス 10.9.8.1 で。これらの設定では VPN 接続が確立されないと思われるので、LAN/WAN IP アドレスを ping すると思います。また、LAN/WAN IP を ping しても、VPN が動作しているかどうかはわかりません。
あなたの質問は非常に漠然としており、多くの情報が欠落しています。しかし、VPN クライアントのコンピューターからのすべてのインターネット トラフィックを VPN サーバー経由でルーティングしたいと考えていると思います。
その場合:
--openvpn サーバーをソフトウェア ルーターとして設定する場合、この iptables ルールだけでは不十分だと思います。
通常、ルーティング用の iptables 構成は次のようになります。openvpn
iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -A FORWARD -i tun0 -s 10.9.8.0/24 -o eth0 -j ACCEPT
-manpages には、使用したオプション "--push "redirect-gateway def1" と ip-tables nat 行のみが記載されています。ただし、この iptables ルールが役立つかどうか試してみる必要があります。
--また、OpenVPN サーバーのコンピューターで IP 転送を有効にする必要があると思います。
sysctl net.ipv4.ip_forward=1 sysctl net.ipv6.conf.default.forwarding=1 sysctl net.ipv6.conf.all.forwarding=1
@ openvpn サーバーの設定:
--dev tun
とのどちらかを選択できますがdev tap
、tun0 または tun1 というオプションはありません。
-- mode server
は正しくありません。すでにモードが設定されていますserver 10.9.8.0 255.255.255.0
@ openvpn クライアントの設定:
--dev tun
ここでも使用
-- remote YourServersIpAddress
これが本当に LAN またはインターネット内の openvpn サーバーの IP アドレスであることを確認してください。10.0.0.102 は珍しいようです。