6

Есть компьютер, подключающийся к VPN. Сеть должна оставаться в автономном режиме, если машина не может повторно подключиться к VPN. Он никогда не должен использовать нормальное соединение. Только VPN один.

Есть ли способ настроить это поведение?
Аппарат используется локально, поэтому нет необходимости получать к нему доступ из сети или чего-либо еще.

Клиентская ОС: Windows 7 Профессиональная x64 SP1

3 ответа3

4

Это может быть достигнуто путем настройки брандмауэра для разрешения только подключений к IP-провайдеру VPN и / или TCP-порту 1723 и UDP-порту 47.

Если вы используете несколько провайдеров VPN, блокировка на основе портов становится проще. Если нет, блокировка на основе IP более безопасна. В любом случае вы можете использовать оба.

Например, вы можете настроить брандмауэр Windows для этого:

  1. Предположим, вы используете superfreevpn.com (69.60.121.29).

  2. Подключитесь к Интернету и вашему VPN.

  3. Нажмите Win + R и выполните control /name Microsoft.NetworkandSharingCenter .

  4. В разделе « Просмотр активных подключений» щелкните ссылку « Домой / Работа / Общедоступная сеть» под подключением к Интернету и выберите « Общедоступная сеть» .

  5. В разделе « Просмотр активных подключений» щелкните ссылку « Домашняя / Рабочая / Общедоступная сеть» под VPN-подключением и выберите « Рабочая сеть» .

  6. Нажмите Win + R и выполните WF.msc .

  7. В брандмауэре Windows в режиме повышенной безопасности на локальном компьютере нажмите « Действие», затем « Свойства», перейдите на вкладку « Частный профиль » и установите следующее:

    Firewall state:        On (recommended)
    Inbound connections:   Block all connections
    Outbound connnections: Allow (default)
    
  8. На основе портов

    • В Outbound Rules нажмите Action, затем New Rule ... и выберите следующее:

      Port
      TCP
         Specific remote ports: 1-1722, 1724-65535
      Block the connection
      Public
      Public TCP
      
    • В Outbound Rules нажмите Action, затем New Rule ... и выберите следующее:

      Port
      UDP 
          Specific remote ports: 1-46, 48-65535
      Block the connection
      Public
      UDP
      

    IP на основе

    • В Outbound Rules нажмите Action, затем New Rule ... и выберите следующее:

      Custom
      All programs
      Any
      Any IP address
      These IP adresses
          Add
              This IP address range -> From: 0.0.0.0      To: 69.60.121.28
          Add
              This IP address range -> From: 69.60.121.30 To: 255.255.255.255
      Block the connection
      Public
      Non-VPN
      
  9. Поскольку мы заблокировали все DNS-запросы, не относящиеся к VPN, superfreevpn.com не будет решен.

    Либо измените ваше VPN-соединение, заменив имя хоста его IP-адресом, либо добавьте следующую строку в %windir%\system32\drivers\etc\hosts:

    69.60.121.29    superfreevpn.com
    

Слабо адаптирован из Как настроить брандмауэр таким образом, чтобы при отключении VPN весь просмотр останавливался.

3

Небольшое дополнение к отличному ответу Денниса: если ваше интернет-соединение настроено на использование DHCP (как и большинство), вы не сможете получить IP-адрес, если не исключите адрес DHCP-сервера и широковещательный адрес 255.255.255.255.

Запустите ipconfig /all (пока DHCP все еще работает), чтобы найти адрес вашего DHCP-сервера. Допустим, это 192.168.2.1 а VPN-сервер - 69.60.121.29 , как в примере с Деннисом. Затем вы должны настроить блокировку для следующих диапазонов IP-адресов:

From 0.0.0.0      to 69.60.121.28
From 69.60.121.30 to 192.168.1.255
From 192.168.2.2  to 255.255.255.254

В качестве временного решения можно также отключить правило исходящего брандмауэра, которое блокирует все. Это удобно, если вы уже "потеряли" свой IP-адрес и не знаете адрес своего DHCP-сервера.

(Благодарю Маркса Томаса за оригинальный ответ. Я просто добавляю его к этому вопросу на случай, если другие пользователи столкнутся с той же проблемой.)

Другое, не связанное с этим дополнение: может быть хорошей идеей отключить обнаружение сети и общий доступ к файлам и принтерам для домашней / рабочей сетей, если вы выполните описанные выше действия, учитывая, что вы настроили весь Интернет как свою "рабочую" сеть. Это можно сделать в разделе «Центр управления сетями и общим доступом», « Изменить расширенные настройки общего доступа».

1

Альтернативный ответ - использование маршрутов

Вы можете удалить маршрут по умолчанию через ваше реальное подключение к Интернету и добавить маршрут только к VPN-серверу. В некотором смысле это проще, чем брандмауэр Windows, но есть одна загвоздка: Windows будет заново добавлять маршрут по умолчанию при каждом подключении к сети. Вы можете обойти это, используя Task Scheduler, чтобы вносить изменения при каждом подключении.

Приятным бонусом является то, что вы также можете автоматически подключаться к VPN, когда вы подключаетесь к сети, при условии, что вы сохранили имя пользователя и пароль.

Сначала создайте командный файл следующим образом:

@ECHO OFF

REM IP address of the real gateway you use to connect to the Internet
SET REAL_GATEWAY_IP=192.168.2.1

REM (External) IP address of the VPN server
SET VPN_SERVER_IP=69.60.121.29

REM Delete default route via the real gateway
route delete 0.0.0.0 %REAL_GATEWAY_IP%

REM Add a route to the VPN server via the real gateway
route add %VPN_SERVER_IP% mask 255.255.255.255 %REAL_GATEWAY_IP% metric 1

REM To connect to the VPN (optional):
rasphone -d "My VPN connection name"

Затем добавьте запланированное задание в планировщик заданий, чтобы запустить пакетный файл с триггером, настроенным так:

Конфигурация триггера задачи

Вы также можете снять флажок «Запускать задание только в том случае, если компьютер работает от сети переменного тока» на вкладке "Условия" и выбрать «Запускать, вошел ли пользователь в систему или нет» на вкладке "Общие".

Затем маршруты должны обновляться всякий раз, когда вы подключаетесь к сети, и вы можете проверить их, запустив route print - не должно быть маршрута до 0.0.0.0 через реальный шлюз.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .