私は最近OpenBSD 5.9をインストールし、Debianを置き換えるのに十分な機能を提供しようとしています。 VPNへの接続に問題があります。私は商用VPNを使用しており、いくつかのLinuxディストリビューションで使用できることを嬉しく思います。
openvpn 構成ファイルは次のとおりです。
client
dev tun
proto udp
remote germany.vpnprovider.com 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
tls-client
remote-cert-tls server
auth-user-pass
comp-lzo
verb 1
reneg-sec 0
crl-verify crl.pem
これは私がしたことです...
# openvpn /etc/openvpn/Germany.ovpn
出力:
Mon Apr 25 00:20:35 2016 OpenVPN 2.3.10 x86_64-unknown-openbsd5.9 [SSL (OpenSSL)] [LZO] [MH] [IPv6] built on Feb 25 2016
Mon Apr 25 00:20:35 2016 library versions: LibreSSL 2.3.2, LZO 2.09
Enter Auth Username:
Enter Auth Password:
Mon Apr 25 00:21:02 2016 UDPv4 link local: [undef]
Mon Apr 25 00:21:02 2016 UDPv4 link remote: [AF_INET]46.166.190.202:1194
Mon Apr 25 00:21:02 2016 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Mon Apr 25 00:21:02 2016 [VPN PROVIDER] Peer Connection Initiated with [AF_INET]46.166.190.202:1194
Mon Apr 25 00:21:05 2016 TUN/TAP device tun0 exists previously, keep at program end
Mon Apr 25 00:21:05 2016 TUN/TAP device /dev/tun0 opened
Mon Apr 25 00:21:05 2016 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Mon Apr 25 00:21:05 2016 /sbin/ifconfig tun0 10.199.1.6 10.199.1.5 mtu 1500 netmask 255.255.255.255 up
add net 46.166.190.202: gateway 192.168.0.1
add net 0.0.0.0: gateway 10.199.1.5
add net 128.0.0.0: gateway 10.199.1.5
add net 10.199.1.1: gateway 10.199.1.5
Mon Apr 25 00:21:05 2016 Initialization Sequence Completed
最後の行は、仕事がうまくいっていることを示すようです。ただし、インターネットに接続しようとすると何も表示されません。 Firefoxでウェブサイトを開くことができず、pingもできません。
$ ping -c 3 www.google.com
これは単に中断されますが(出力は得られません)、ネームサーバーへのpingは機能します。
$ ping -c 3 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
64 bytes from 8.8.8.8: icmp_seq=0 ttl=46 time=40.946 ms
64 bytes from 8.8.8.8: icmp_seq=1 ttl=46 time=38.382 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=46 time=39.153 ms
--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/std-dev = 38.382/39.494/40.946/1.074 ms
私はインターネットで答えを探していましたが、うまくいくものが見つかりませんでした。 OpenBSDで商用VPNを使用する方法に関する情報はほとんどありません。私の考えでは、IPを取得するのに何か問題があるようですtun0
。私はそれを活性化しip.forwarding
、他のことをip6.forwarding
試しましたが、/etc/sysctl.conf
何の役にも立ちませんでした。 Linuxはアップデートにopenresolvを使用しています/etc/resolv.conf
が、OpenBSDでこれを実装する方法がわかりません...
修正する
要求に応じ/etc/resolv.conf
て起動後(イーサネットケーブルに接続されていない場合はtrunk0がiwn0を上げます):
# Generated by trunk0 dhclient
search home
nameserver 195.130.131.5
nameserver 195.130.130.5
lookup file bind
VPNに接続した後、私は変更resolv.conf
されませんでした。ええ(resolv.conf
/etc/resolv.conf
Whatismyipaddress.com)。 Debian .conf を介して 2 つのネームサーバーを追加する以外に、ファイルに何も変更しませんでした。
今問題は、これが自動的に発生しないということです。これにスクリプトを書く必要がありますか、それともより良い/標準化された方法がありますか?私は完全に間違っているのだろうか?私はどこに行くべきですか?
今まで助けてくれてありがとう。私のネットワーキングの知識は非常に限られています。
アップデート2(解決しましたか?)
私が思いついた解決策は次のとおりです。上で説明したように に希望のネームサーバを指定すればインターネットに接続できました/etc/resolv.conf
。問題は、ファイルがdhclient
実行されるたびにファイルの内容を上書きすることです。このファイルは後でインポートされ、追加されたネームサーバーが最初に選択されないため、ネームサーバーを挿入することは/etc/resolv.conf.tail
機能しません。/etc/resolv.conf
私の解決策は、例えば次のように入れることです/etc/dhclient.conf
。
prepend domain-name-servers 210.232.10.246;
prepend ...;
これにより、これらのネームサーバーが最初に試行され、必要に応じて自動的に(半分)自動的にVPNに接続されます。
それでも私を悩ませているのは、これらのネームサーバーを指定する必要があるということです。 DebianのNetworkManagerを使用すると、これらのネームサーバーはVPNに接続したときに何らかの方法で見つけて動的に追加できます。ご存知の方は、お知らせください。少ないものもありますか?ハッカースタイル解決策?
最後に、他の/より良い答えが出ていない場合は、私の解決策を「答え」として追加するようです...
答え1
私の解決策は、例えば次のように入れることです/etc/dhclient.conf
。
prepend domain-name-servers 210.232.10.246;
prepend ...;
このようにして、これらのネームサーバーはに入れる前に試みられ、/etc/resolv.conf.tail
必要に応じて自動的に(半分)自動的にVPNに接続されます。
このソリューションに到達した方法と100%満足できない理由の詳細については、更新された質問を参照してください。