OpenBSD 5.9에서 상용 VPN에 연결

OpenBSD 5.9에서 상용 VPN에 연결

나는 최근에 OpenBSD 5.9를 설치했고 데비안을 대체할 만큼 충분히 기능하도록 만들려고 노력하고 있습니다. 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 -c 3 www.google.com

이것은 단지 중단되지만(아무 출력도 얻지 못함) 네임서버에 대한 핑은 작동합니다.

$ 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.confVPN에 연결했을 때 Debian에서 어떻게 보이는지 확인하고 VPN에 연결한 후 OpenBSD에서 수동으로 변경했는데 /etc/resolv.conf짜잔, 주소가 확인되었고 내 IP는 독일에 있는 것 같았어요 (Whatismyipaddress.com). Debian .conf를 통해 두 개의 이름 서버를 추가하는 것 외에는 파일에서 아무것도 변경하지 않았습니다.

이제 문제는 이것이 자동으로 발생하지 않는다는 것입니다. 이에 대한 스크립트를 작성해야 합니까, 아니면 더 나은/표준화된 방법이 있습니까? 내가 완전히 잘못하고 있는 걸까? 난 어디로 가야 해?

지금까지 도움을 주셔서 감사합니다. 제 네트워킹 지식은 매우 제한되어 있습니다.

업데이트 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% 만족하지 못하는 이유에 대해 자세히 알아보려면 업데이트된 질문을 참조하세요.

관련 정보