분할 VPN 연결을 생성하기 위해 개방형 연결을 사용하고 있습니다. 훌륭하게 작동합니다...처음입니다. openconnect 프로세스가 중단되면 후속 시도는 성공하는 것처럼 보이지만 VPN 뒤에 있는 어떤 것도 실제로 액세스할 수 없게 됩니다. 임시 재부팅으로 인해 openconnect가 다시 작동하게 되었지만, 매번 재부팅할 필요 없이 VPN을 켜고 끌 수 있었으면 좋겠습니다.
문제는 VPN 연결을 부적절하게 닫거나 정리하는 것과 관련이 있다고 생각합니다. 하지만 그건 제 수준을 넘어서는 일이고 제가 무엇을 하고 있는지 전혀 모릅니다. 무슨 일이 일어나고 있는지, 이를 해결하는 방법 또는 재부팅하지 않고도 VPN 연결을 여러 번 시작하고 중지할 수 있는 시스템을 설정하는 방법입니다. VPN이 작동할 때와 작동하지 않을 때 경로는 동일한 출력을 생성합니다.
연결하는 데 사용하는 스크립트는 다음과 같습니다.
sudo openvpn --mktun --dev tun1 && \
sudo ifconfig tun1 up && \
sudo /usr/sbin/openconnect -s $VPNSCRIPT $VPNURL --user=$VPNUSER --authgroup=$VPNGRP --interface=tun1
sudo ifconfig tun1 down
openvpn --rmtun --dev tun1
그 중에는 $VPNSCRIPT
분할 VPN 환경을 설정하는 데 사용되는 기본 vpnc 스크립트에 대한 래퍼가 있습니다.
#!/bin/sh # 분할 터널 목록에 IP를 추가합니다. IP 추가() { CISCO_SPLIT_INC_${CISCO_SPLIT_INC}_ADDR=$1 내보내기 CISCO_SPLIT_INC_${CISCO_SPLIT_INC}_MASK=255.255.255.255 내보내기 CISCO_SPLIT_INC_${CISCO_SPLIT_INC}_MASKLEN=32 내보내기 CISCO_SPLIT_INC=$(($CISCO_SPLIT_INC + 1)) 내보내기 } # 빈 분할 터널 목록을 초기화합니다. CISCO_SPLIT_INC=0 내보내기 # 인터넷 DNS를 사용하려면 VPN 서버에서 제공하는 DNS 정보를 제거하세요. # VPN 터널 외부에서 DNS를 사용하려면 다음 줄을 주석 처리합니다. INTERNAL_IP4_DNS 설정 해제 # VPN 터널 외부의 IP 목록 add_ip --수정됨-- #기본 스크립트 실행 . /usr/share/vpnc-스크립트/vpnc-스크립트 # 스크립트 끝
이 모든 일은 Ubuntu 14.04 VPS에서 발생합니다.
결과route -n
연결 시도 없음:
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 venet0
연결되어 작동 중
Destination Gateway Genmask Flags Metric Ref Use Iface
<HostA> 0.0.0.0 255.255.255.255 UH 0 0 0 tun1
<VPN> 0.0.0.0 255.255.255.255 UH 0 0 0 venet0
<HostB> 0.0.0.0 255.255.255.255 UH 0 0 0 tun1
<VPN DHCP> 0.0.0.0 255.255.254.0 U 0 0 0 tun1
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 venet0
연결되어 있지만 작동하지 않는 것 같습니다.
Destination Gateway Genmask Flags Metric Ref Use Iface
<HostA> 0.0.0.0 255.255.255.255 UH 0 0 0 tun1
<VPN> 0.0.0.0 255.255.255.255 UH 0 0 0 venet0
<HostB> 0.0.0.0 255.255.255.255 UH 0 0 0 tun1
<VPN DHCP> 0.0.0.0 255.255.254.0 U 0 0 0 tun1
0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 venet0
Host*
분할 VPN 구성의 항목은 어디에 있습니까?