연결이 끊어졌을 때 VPN이 귀하의 IP를 노출하는 것을 어떻게 방지합니까?

연결이 끊어졌을 때 VPN이 귀하의 IP를 노출하는 것을 어떻게 방지합니까?

가상 머신(Windows XP)의 모든 연결이 내 OpenVPN 서버만 사용하도록 하고 싶습니다. OpenVPN에 대한 연결이 끊어지자마자 VM의 모든 인터넷 연결이 끊어지고 싶습니다. 당연히 VM 호스트(Windows 7)는 VPN에 연결되지 않으며 실제 인터넷 연결이 끊어지지 않습니다.

route저는 Windows XP 시스템이 OpenVPN 서버에만 연결하도록 허용하는 Windows 명령을 사용하여 이 작업을 수행할 수 있다고 확신합니다.1.2.3.4.

나는 이 가이드를 따랐습니다.http://community.spiceworks.com/how_to/show/1334 하지만 나는 그들의 예를 작동시킬 수도 없습니다.

명령을 실행하여 내 경로 구성은 다음과 같습니다.route print

라우팅 사전 개방VPN 연결:

===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0      192.168.1.1   192.168.1.108       30
        127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1
      192.168.1.0    255.255.255.0    192.168.1.108   192.168.1.108       30
    192.168.1.108  255.255.255.255        127.0.0.1       127.0.0.1       30
    192.168.1.255  255.255.255.255    192.168.1.108   192.168.1.108       30
        224.0.0.0        240.0.0.0    192.168.1.108   192.168.1.108       30
  255.255.255.255  255.255.255.255    192.168.1.108   192.168.1.108       1
  255.255.255.255  255.255.255.255    192.168.1.108               3       1
Default Gateway:       192.168.1.1
===========================================================================
Persistent Routes:
  None

OpenVPN 연결 후(1.2.3.4가 실제 VPN IP를 대체했습니다):

===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0        128.0.0.0         10.8.0.5        10.8.0.6       1
          0.0.0.0          0.0.0.0      192.168.1.1   192.168.1.108       30
         10.8.0.1  255.255.255.255         10.8.0.5        10.8.0.6       1
         10.8.0.4  255.255.255.252         10.8.0.6        10.8.0.6       30
         10.8.0.6  255.255.255.255        127.0.0.1       127.0.0.1       30
   10.255.255.255  255.255.255.255         10.8.0.6        10.8.0.6       30
        127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1
        128.0.0.0        128.0.0.0         10.8.0.5        10.8.0.6       1
          1.2.3.4  255.255.255.255      192.168.1.1   192.168.1.108       1
      192.168.1.0    255.255.255.0    192.168.1.108   192.168.1.108       30
    192.168.1.108  255.255.255.255        127.0.0.1       127.0.0.1       30
    192.168.1.255  255.255.255.255    192.168.1.108   192.168.1.108       30
        224.0.0.0        240.0.0.0         10.8.0.6        10.8.0.6       30
        224.0.0.0        240.0.0.0    192.168.1.108   192.168.1.108       30
  255.255.255.255  255.255.255.255         10.8.0.6        10.8.0.6       1
  255.255.255.255  255.255.255.255    192.168.1.108   192.168.1.108       1
Default Gateway:          10.8.0.5
===========================================================================
Persistent Routes:
  None

답변1

몇 번의 시행착오 끝에 문제에 대한 해결책을 찾았습니다.

실제 IP가 노출되는 VPN에서 우발적으로 또는 무작위로 연결이 끊어지는 것을 방지하려면 VPN IP를 제외한 모든 대상이 가짜 게이트웨이를 통과하도록 라우팅해야 합니다.

네트워크/컴퓨터 전문가에게:

다음을 가정합니다.

일반 기본 게이트웨이:192.168.1.1
사용되지 않은 개인 IP:192.168.1.222
OpenVPN 서버 IP:1.2.3.4

cmd 사용:

route -p add 0.0.0.0 mask 0.0.0.0 192.168.1.222 metric 2
route -p add 1.2.3.4 mask 255.255.255.255 192.168.1.1 metric 1

그런 다음 어댑터에 고정 IP 주소를 제공하고 사용되지 않은 개인 IP를 가짜 기본 게이트웨이로 사용하여 DCHP를 비활성화합니다. 따라서 OpenVPN을 제외한 모든 연결을 차단합니다.


좀 더 단계별로 접근해야 하는 경우:

가장 먼저 해야 할 일은 Windows 키(왼쪽 Ctrl 바로 오른쪽에 있는 버튼)를 누른 채 명령 프롬프트를 열고 r을 누르는 것입니다. 대화 상자가 나타납니다. "cmd"를 입력하고 Enter를 누르세요.

약간의 글이 포함된 블랙 박스가 나타나야 합니다. 이를 명령 프롬프트라고 하며 여기서부터 실행되는 모든 명령은 이 블랙 박스에서 수행됩니다.

가장 먼저 할 일은 가짜 게이트웨이가 네트워크 인터페이스 내에 있어야 한다는 것을 알아내는 것입니다. "인터페이스"란 무엇입니까? 이 경우에는 컴퓨터에 할당된 개인 IP입니다. "pre-OpenVPN" 테이블에서 127.0.0.1또는 192.168.1.108. 127.0.0.1이 루프백 IP라는 것을 경험으로 알고 있어서 범위를 좁혔습니다. 그러나 내 IP 주소를 모르는 경우 Windows 키 + R을 실행하고 cmd를 입력한 후 확인을 누를 수 있습니다. 검은색 상자가 나타나고 CMD 명령을 입력하면 다음 ipconfig과 같은 출력이 표시됩니다.

Ethernet adapter Local Area Connection:

        Connection-specific DNS Suffix  . :
        IP Address. . . . . . . . . . . . : 192.168.1.108
        Subnet Mask . . . . . . . . . . . : 255.255.255.0
        Default Gateway . . . . . . . . . : 192.168.1.1

여기에는 내 IP 주소가 구체적으로 나와 있으므로 "인터페이스"는 입니다. 따라서 내 가짜 게이트웨이는 ~ 192.168.1.108범위에 있어야 하며 이미 사용 중일 수 없습니다.192.168.1.100192.168.1.254

예를 들어, IP를 사용하고 싶다고 가정해 보겠습니다. IP가 192.168.1.101사용되는지 확인하기 위해 명령을 실행 ping 192.168.1.101하면 다음과 같은 응답을 받습니다.

Pinging 192.168.1.101 with 32 bytes of data:

Reply from 192.168.1.101: bytes=32 time=1ms TTL=64
Reply from 192.168.1.101: bytes=32 time=1ms TTL=64
Reply from 192.168.1.101: bytes=32 time=1ms TTL=64
Reply from 192.168.1.101: bytes=32 time=1ms TTL=64

Ping statistics for 192.168.1.101:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 1ms, Maximum = 1ms, Average = 1ms

이는 IP가 192.168.1.101현재 사용되고 있으며 cannot이를 가짜 게이트웨이에 사용하고 있음을 나타냅니다. 그래서 IP를 시도하기로 결정 192.168.1.222하고 동일한 ping 명령을 실행합니다 ping 192.168.1.222. 응답이 다음과 같은 경우:

Pinging 192.168.1.222 with 32 bytes of data:
Reply from 192.168.1.100: Destination host unreachable.
Reply from 192.168.1.100: Destination host unreachable.
Reply from 192.168.1.100: Destination host unreachable.
Reply from 192.168.1.100: Destination host unreachable.

Ping statistics for 192.168.1.222:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

그러면 현재 사용되지 않고 가짜 게이트웨이에 사용할 수 있는 개인 IP를 성공적으로 찾았을 것입니다. 나머지 답변에서는 192.168.1.222가짜 게이트웨이로 사용하겠습니다.

다음 단계는 실제 게이트웨이가 아닌 가짜 게이트웨이를 통과하도록 모든 단일 대상 시도를 보내는 것입니다. 다음 명령을 실행하여 이를 수행합니다.

route -p add 0.0.0.0 mask 0.0.0.0 192.168.1.222 metric 2

0.0.0.0 mask 0.0.0.0"모든 단일 주소"가 게이트웨이로 전송된다는 의미 입니다 192.168.1.222. 부품 metric 2은 이 경로에 다음의 우선순위를 할당하고 있습니다.2- 이는 우선순위(메트릭)가 중요하기 때문에 중요합니다.1우선순위보다 우선합니다.2.

메트릭을 2로 지정하면 DHCP에서 할당한 게이트웨이보다 우선 순위가 높아집니다. 제 경우에는 30이었습니다. 이는 모든 대상이 실제 게이트웨이가 아닌 게이트웨이 192.168.1.222를 통과하려고 시도하여 본질적으로 모든 연결을 라우팅한다는 의미입니다. 당신은 어디에도 가지 않으려고 노력합니다.

다음 명령 을 다시 실행하여 이 작업이 올바르게 수행되었는지 확인할 수 있습니다 ipconfig.

Ethernet adapter Local Area Connection:

        Connection-specific DNS Suffix  . :
        IP Address. . . . . . . . . . . . : 192.168.1.108
        Subnet Mask . . . . . . . . . . . : 255.255.255.0
        Default Gateway . . . . . . . . . : 192.168.1.222
                                            192.168.1.1

이번에는 기본 게이트웨이 아래에 하나가 아닌 2개의 IP 주소가 나열되어 있습니다. 또한 어떻게 가짜 게이트웨이가 먼저 나열되고(상단) 실제 게이트웨이가 두 번째로 나열되는지 확인하세요.

이는 OpenVPN 서버 IP에 연결을 시도할 때 이 예에서는 1.2.3.4가짜 게이트웨이(192.168.1.222)로 라우팅되어 연결을 허용하지 않는다는 것을 의미합니다. 우리는 그것을 원하지 않습니다. 따라서 2보다 높은 우선순위(낮은 메트릭)를 갖는 다른 경로를 생성해야 합니다. 이는 OpenVPN IP에 연결할 때 실제 게이트웨이(192.168.1.1)에 연결하기를 원한다는 것을 의미합니다.

가장 먼저 하고 싶은 일은 OpenVPN 서버가 무엇인지 확인하는 것입니다. ping 명령을 다시 사용하여 확인할 수 있습니다. 일반적으로 VPN 제공업체는 연결할 주소를 제공합니다 us.bestvpn.com. 우리는 이 URL이 별칭인 IP 주소를 파악해야 하며, 이는 ping 명령을 사용하여 수행하는 것이 가장 좋습니다. 다음을 실행합니다.

ping us.bestvpn.com

응답은 다음과 같아야합니다

Pinging us.bestvpn.com [1.2.3.4] with 32 bytes of data여기서 대괄호 사이의 IP 주소는 OpenVPN 서버의 IP 주소입니다. 1.2.3.4VPN 서버 IP로 사용하겠습니다 .

이제 이 IP가 실제 게이트웨이로 라우팅되도록 설정해야 합니다. 다음을 실행하여 이를 수행합니다.

route -p add 1.2.3.4 mask 255.255.255.255 192.168.1.1 metric 1

메트릭 1을 사용하면 경로가 가짜 게이트웨이 경로에 제공한 메트릭 2보다 우선순위를 가질 수 있습니다. 이는 mask 255.255.255.255정확한 IP를 의미한다는 점 에 유의하는 것이 중요합니다 . 이는 제 경우에도 해당되지만 to 범위의 모든 IP가 실제 게이트웨이로 라우팅된다는 것을 본질적으로 알려주는 1.2.3.4마스크를 만들고 싶을 수도 있습니다 . 이는 OpenVPN 공급자가 다양한 IP를 사용하여 연결하는 경우 유용합니다.255.255.255.01.2.3.01.2.3.254

이제 평소처럼 VPN에 연결할 수 있으며, 일단 연결되면 모든 인터넷을 탐색할 수 있습니다. 연결을 끊으면 연결되지 않는 것처럼 보이더니 갑자기 실제 IP로 연결됩니다. 뭐죠?! 왜 이런 짓을 한 걸까요?

글쎄, 기본적으로 DCHP는 게이트웨이가 몇 초 후에 아무데도 갈 수 없다는 것을 인식하면 보조 게이트웨이(이 경우 실제 게이트웨이)를 시도한다는 것을 알고 있습니다.

이러한 일이 발생하지 않도록 하려면 인터넷 속성에 고정 IP, 서브넷 마스크 및 게이트웨이를 할당하여 DCHP를 꺼야 합니다.XP, Vista 및 7에서 이를 수행하는 방법에 대한 단계별 그림 튜토리얼.

완료한 후 VPN에 다시 연결하고 여전히 작동하는지 확인한 다음 연결하세요. 사이트에 연결을 시도하고 2~3분 정도 기다려 사이트가 로드되지 않고 모든 설정이 완료되었는지 확인하세요.

이것이 무작위 VPN 연결 끊김으로 인해 실제 IP 주소가 노출되는 것을 방지할 수 있는 방법입니다.

답변2

OpenVPN의 DNS 및 IP 누출이 우려되고 OpenVPN을 사용하는 동안 IP 및 DNS 누출을 방지하는 쉽고 자동적인 방법이 필요한 경우 www.openvpnchecker.com에서 제공하는 다음 두 가지 쉬운 도구를 확인하십시오.

  1. OpenVPN 워치독:http://openvpnchecker.com/

  2. OpenVPN 방화벽:http://openvpnchecker.com/firewall.htm 메시지 편집/삭제

관련 정보