OpenVPN을 사용하여 VPN 서비스에 연결하고 있으며 모든 것이 잘 작동합니다. 연결하면 자동으로 설정되는 규칙이 있습니다.
root@linux:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:AA:1B:01:AC:FB
inet addr:192.168.1.201 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:46867 errors:0 dropped:0 overruns:0 frame:0
TX packets:29742 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:37977382 (36.2 MiB) TX bytes:5098121 (4.8 MiB)
Interrupt:16
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.7.7.126 P-t-P:10.7.7.125 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:23284 errors:0 dropped:0 overruns:0 frame:0
TX packets:5817 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:31366374 (29.9 MiB) TX bytes:308591 (301.3 KiB)
root@linux:~# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.7.7.125 128.0.0.0 UG 0 0 0 tun0
default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
5.120.121.114 192.168.1.1 255.255.255.255 UGH 0 0 0 eth0
10.7.7.1 10.7.7.125 255.255.255.255 UGH 0 0 0 tun0
10.7.7.125 * 255.255.255.255 UH 0 0 0 tun0
128.0.0.0 10.7.7.125 128.0.0.0 UG 0 0 0 tun0
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
내가 이해하는 것은 다음과 같습니다.
- 내 로컬 IP 주소는 192.168.1.201입니다
- 로컬 게이트웨이는 191.168.1.1입니다.
- 5.120.121.114는 VPN 공개 IP입니다
- tun0은 VPN 터널이며 내 컴퓨터의 주소는 10.7.7.126입니다.
- 10.7.7.125는 VPN의 다른 “끝”으로 이해하는 ptp 주소입니다.
라우팅 테이블과 관련하여 다음 사항을 이해합니다.
- 기본적으로 모든 트래픽은 인터페이스 tun0에서 10.7.7.125를 통해 전송됩니다 (그러나 왜 마스크입니까?).
- 10.7.7.1은 tun0을 통해 도달 할 수 있습니다
- VPN의 공개 IP는 eth0을 통해 연결할 수 있습니다
두 번째 기본 게이트웨이를 이해하지 못합니다. VPN이 활성화되어 있지 않을 때의 기본값입니다. 단순히 우회됩니까?
10.7.7.1는 어떻습니까? 그것이 VPN의 게이트웨이 인 것처럼 보입니다 …
왜 목적지 128.0.0.0입니까?
OpenVPN은 이러한 모든 규칙을 자동으로 만듭니다. 그러나 무엇을 기반으로 만들어 졌습니까?
VPN의 서버 쪽을 제어 할 수없고 클라이언트 구성 만 제어 할 수 있습니다.
이제 내가 원하는 경우 :
- VPN tun0을 통과하고 나머지는 eth0을 통과하도록 216.58.213.174에 대한 모든 트래픽을 강제 실행합니까?
- VPN을 시작할 때 자동으로 설정할 수 있습니까?
이를 이해하기위한 제안과 지원에 감사드립니다.
KR, dk
편집하다:
root@linux:~# ip route list
0.0.0.0/1 via 10.7.7.125 dev tun0
default via 192.168.1.1 dev eth0
5.152.210.249 via 192.168.1.1 dev eth0
10.7.7.1 via 10.7.7.125 dev tun0
10.7.7.125 dev tun0 src 10.7.7.126
128.0.0.0/1 via 10.7.7.125 dev tun0
192.168.1.0/24 dev eth0 src 192.168.1.201
답변
두 번째 기본 게이트웨이를 이해하지 못합니다. VPN이 활성화되어 있지 않을 때의 기본값입니다. 단순히 우회됩니까?
이것은 기본 게이트웨이를 유지하면서 터널을 통해 트래픽을 라우팅하는 OpenVPN의 해킹 중 하나입니다. 0.0.0.0/1 및 128.0.0.0/1 경로는 모든 주소와 일치하면서도 더 구체적이기 때문에 0.0.0.0/0 경로보다 우선합니다. 자세한 내용은 OpenVPN 설명서에서 “def1″을 검색하십시오.
10.7.7.1는 어떻습니까? 그것이 VPN의 게이트웨이 인 것처럼 보입니다 …
아마 요
OpenVPN은 이러한 모든 규칙을 자동으로 만듭니다. 그러나 무엇을 기반으로 만들어 졌습니까?
서버에서 푸시되었을 수 있습니다. 구성 파일과 함께 시작하는 동안 클라이언트에서 출력을 제공 할 수있는 경우 자세한 정보를 제공 할 수 있습니다
VPN의 서버 쪽을 제어 할 수없고 클라이언트 구성 만 제어 할 수 있습니다.
그러나 클라이언트는 서버가 클라이언트가 원하는 모든 것을 무시할 수 있도록 고도로 구성 가능합니다. 그래도 연결하려면 공급자의 기본 요구 사항을 충족해야합니다. 또한 제공자의 “이용 약관”을 확인하여 결국 그들을 화나게하지 않도록해야합니다.
이제 내가 원하는 경우 :
VPN tun0을 통과하고 나머지는 eth0을 통과하도록 216.58.213.174에 대한 모든 트래픽을 강제 실행합니까?
그러나 구성에 “route 216.58.213.174 255.255.255.255 10.7.7.125″를 포함하십시오. 원하는 경로를 설정해야합니다. 구성에서 “redirect-gateway”옵션을 제거하여 다른 경로를 그대로 유지할 수 있어야합니다.
VPN을 시작할 때 자동으로 설정할 수 있습니까?
예, 위 참조
위에서 설명한 모든 옵션은 OpenVPN의 온라인 설명서에서 찾을 수 있습니다. https://community.openvpn.net/openvpn/wiki/Openvpn23ManPage