OpenVPN을 사용하여 클라이언트에서 경로 추가


13

이것이 내 설정입니다. Ubuntu OpenVPN 버전 2.3.2를 실행하는 노트북

오프 사이트 네트워크에 연결하는 OpenVPN 서버에 연결합니다.

OpenVPN 클라이언트가 실행 중이며 VPN 서버를 ping 할 수 있습니다. 서버는 경로를 푸시하지 않으므로 클라이언트에서 라우팅해야합니다.

오프 사이트 네트워크에 액세스 할 수 있도록 오프 사이트 네트워크를 추가하여 VPN 서버로 라우팅합니다.

그래서 내가 가진 문제는 내 요청이 192.168.0.1 네트워크에서 오프 사이트 172로 이동하지 않는다는 것 입니다. . * 하나 ... 내 고객에 대해 무엇이든 할 수 있습니까? 나는 서버에 대한 소유권이 없으며 routs는 지금 서버에서 푸시되지 않습니다. 미래에는 모르겠습니다.

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
      inet addr:10.242.2.6  P-t-P:10.242.2.5  Mask:255.255.255.255
      UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:100 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:100 
      RX bytes:0 (0.0 B)  TX bytes:12129 (12.1 KB)

wlan1     Link encap:Ethernet  HWaddr 5c:93:a2:a0:6e:1b  
      inet addr:10.101.7.41  Bcast:10.101.31.255  Mask:255.255.224.0
      inet6 addr: fe80::5e93:a2ff:fea0:6e1b/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:355109 errors:0 dropped:0 overruns:0 frame:0
      TX packets:206832 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:454685028 (454.6 MB)  TX bytes:23942624 (23.9 MB)



Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         10.101.0.1      0.0.0.0         UG        0 0          0 wlan1
10.101.0.0      0.0.0.0         255.255.224.0   U         0 0          0 wlan1
10.242.2.1      10.242.2.5      255.255.255.255 UGH       0 0          0 tun0
10.242.2.5      0.0.0.0         255.255.255.255 UH        0 0          0 tun0
192.168.0.0     10.242.2.5      255.255.255.0   UG        0 0          0 tun0
192.168.82.0    10.242.2.5      255.255.255.0   UG        0 0          0 tun0

클라이언트 구성에서 퓨징 / 풀링 또는 수동 구성을 통해 경로를 추가 할 수 있습니다. 서버에서 경로를 푸시하지 않고이 작업을 수행하는 방법에 대한 질문입니까, 서버에서 클라이언트 (또는 개별 경로)로 경로를 푸시하는 방법에 대한 질문입니까? 질문에 포함 시키십시오 ( 편집 하십시오). 1) 서버 구성을 제어 할 수 있는지 여부. 2) 클라이언트 OpenVPN 구성을 포함하십시오 (1이 예인 경우 서버도 포함). 이런 식으로 우리는 당신을 더 잘 도울 수 있습니다.
gertvdijk

답변:


26

라우팅 테이블을보고 있습니다. 호출 할 때 트래픽을 172 ... * 로 알리는 명시적인 경로가 없습니다 . VPN tun 인터페이스로 전송됩니다.

몇 가지 옵션이 있습니다.

  1. openVPN 서버에 액세스 할 수있는 경우이 지시문을 openvpn 구성에 추가하십시오.

    push "redirect-gateway def1 bypass-dhcp"
    

    이 설정은 모든 트래픽이 VPN을 통과하도록 라우팅 / 강제합니다. 다른 대안이 있습니다. 클라이언트 측에 고정 경로를 직접 추가하는 것입니다

  2. 터미널에서 클라이언트 측에 수동으로 경로 추가

    sudo route add -net 172.16.0.0/24 dev tun0
    
  3. openvpn에는 route옵션 을 사용하여 openvpn 구성 파일에서 라우트 클라이언트 측을 추가 및 제거하기위한 지시문이 있습니다.

    첨가:

    route 172.16.0.0 255.255.255.0
    

    VPN 클라이언트의 openvpn 구성 파일에. 연결할 때 자동으로 경로를 추가합니다

  4. 보너스 : openvpn에는 VPN에 연결할 때 스크립트를 시작할 수 있는 up/ down지시문도 있습니다. 이를 통해 DNS 설정, 경로 등의 사용자 지정 작업을 수행 할 수 있습니다. 그러나 다른 파일에서 실행할 명령을 저장해야합니다.

    따라서 openvpn 클라이언트 구성 파일에 다음이있는 경우

    script-security 2 system
    up run-stuff-after-vpn-connect.sh
    

    이름이 지정된 파일을 작성하십시오 run-stuff-after-vpn-connect.sh(실행 권한이 있는지 확인하십시오.

    #!/bin/sh
    route add -net 172.16.0.0/24 dev tun0
    

    터널이 가동되는 즉시 경로가 추가됩니다


172.16.0.0/24를 가정하여 귀하의 질문에 서브넷의 전체 선언을 알려주지 않았으므로


따라서 client.conf 파일에 up route add -net 172.16.0.0/24 dev tun을 추가하면 rout이 netstat -rn에 표시되어야합니다.
Jocke

client.conf에 해당 줄을 추가하면 VPN이 올라가지 않습니다.
Jocke

up route 명령을 어디에 추가합니까 ... ??
Jocke

2
@tomodachi 저는 openvpn 클라이언트 (2.3.11)에서 작동하도록 점 표기법을 사용해야했습니다 route 0.0.0.0 128.0.0.0
Matt

4
내 OpenVPN 2.3.13 (Windows 10)에서 옵션 route 172.16.0.0/24을 사용할 수 없습니다 172.16.0.0 255.255.255.0. 대신 route를 사용해야합니다 .
와우
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.