Изменение типа сети с Неопознанной сети на Частную сеть по соединению OpenVPN

22

Можно ли изменить тип подключения в Windows 7? У меня есть соединение OpenVPN, которое идентифицируется как «неопознанная сеть», и я не хочу применять определенные правила ко всем неопознанным сетям в брандмауэре.

Как можно победить это?

Филип Экберг
источник

Ответы:

8

Посмотрите на «Драйвер TAP / идентифицированные против неопознанных сетей» или «Vista и Windows Server 2008 - Неопознанная сеть»

slhck
источник
Это не позволило мне установить местоположение. Он просто говорит «Включено» вместо «Неопознанная сеть». Если вы хотите установить тип местоположения, посмотрите этот ответ .
jnm2
18

Вы должны добавить шлюз по умолчанию для сетевого интерфейса OpenVPN.

Я нашел способ добавления маршрута к целевому адресу 0.0.0.0 через сетевой интерфейс, использующий OpenVPN.

В этом примере у меня есть компьютер с физическим интерфейсом с IP-адресами 10.20.20.20 в сети 10.20.20.0/24 и интерфейс OpenVPN TAP с IP-адресом 10.1.1.10/24 в сети 10.1.1.0/24 (IP-адрес сервера включен Сеть VPN 10.1.1.1).

1) Узнайте ваши сетевые интерфейсы и информацию о текущем маршруте к 0.0.0.0:

C:\>route print -4
===========================================================================
Interface List
 15...00 ff 6c 3f 5b 0c ......TAP-Win32 Adapter V9
 11...00 0e 0c d9 b5 c8 ......Intel(R) PRO/1000 GT Desktop Adapter
===========================================================================

IPv4 Route table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway        Interface Metric
          0.0.0.0          0.0.0.0       10.20.20.1      10.20.20.20     10
       10.20.20.0    255.255.255.0         On-link       10.20.20.20    266
...

В настоящее время мы знаем, что номер вашего сетевого интерфейса OpenVPN - 15. Другая важная информация - это метрика текущего маршрута к 0.0.0.0. Новый маршрут к 0.0.0.0 для сети OpenVPN должен иметь более высокое значение показателя, чем текущий, чтобы избежать перенаправления всего сетевого трафика на ваше подключение OpenVPN вместо физической сети (в случае двух маршрутов с одинаковыми маршрутами будет выбран маршрут с более низкой метрикой) ,

2) Добавить маршрут к 0.0.0.0 через интерфейс OpenVPN:

route -p add 0.0.0.0 mask 0.0.0.0 10.1.1.1 metric 50 if 15

Эта команда добавляет маршрут к 0.0.0.0 через интерфейс 15 с метрикой не менее 50 и шлюзом 10.1.1.1. Замените шлюз своим (IP-адрес сервера в сети VPN). И, конечно же, замените номер интерфейса своим собственным.

Аргумент -p добавляет маршрут как постоянный, поэтому он будет сохранен после перезагрузки системы.

3) (Пере) подключиться к VPN-серверу и снова посмотреть таблицу маршрутов:

C:\>route print -4
...
Active Routes:
Network Destination        Netmask          Gateway        Interface Metric
          0.0.0.0          0.0.0.0       10.20.20.1      10.20.20.20     10
          0.0.0.0          0.0.0.0         10.1.1.1        10.1.1.10     80
...

И теперь сеть идентифицируется в Центре управления сетями и общим доступом, поэтому должно появиться окно «Установить местоположение ...» ;-)

Kalwi
источник
Это правильный ответ.
jnm2
2
Будьте осторожны, держите вашу метрику больше, чем ваши обычные метрики интерфейса! В противном случае вы отключите ваш хост в автономном режиме, как я только что сделал.
Linef4ult
11

Я не знаю, почему вышеуказанные решения настолько сложны, например, с использованием

route add -p commands

или даже добавление в файл OpenVPN server.conf

route 0.0.0.0 vpn_subnet_mask default_gateway

Ошибка может быть просто решена путем перехода к:

Control Panel\Network and Internet\Network Connections

(1) Щелкните правой кнопкой мыши на интерфейсе настройки / подключения OpenVPN и выберите «Состояние»> выберите «Детали»> запишите запись DHCP-сервера IPv4. вам нужно будет заполнить это как шлюз по умолчанию в (2).

(2) Щелкните правой кнопкой мыши интерфейс настройки / нажатия OpenVPN и выберите «Свойства»> открыть свойства TCP / IPv4> нажмите «Дополнительно». под шлюзами по умолчанию нажмите кнопку «Добавить» и введите точно такую ​​же запись, которая используется в качестве DHCP-сервера, показатель «автоматический». Теперь подождите, пока адаптер волшебным образом не появится как приватный.

То, что вы только что сделали, точно так же, как в двух вышеупомянутых решениях - добавление постоянных маршрутов - но это даже лучше - оно сохраняется после перезагрузки, поскольку настроено в Windows. Вы можете на самом деле проверить cmd, набрав «route print», и вы увидите 1 запись, добавленную в таблицу маршрутизации, а также 1 запись в списке постоянных маршрутов. Если метрика нового маршрута меньше, чем у вашего физического адаптера, повторите (2) и измените метрику с «автоматического» на значение выше, чем у физического адаптера.

Если ваш шлюз (IP-адрес сервера openvpn) является статическим, добавление его (2) сделает работу.

LJ
источник
4

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

Исследуя проблему с VMware в Windows 7, я наткнулся на меч реестра, называемый * NdisDeviceType. Это говорит Windows о том, что не следует пытаться идентифицировать конкретный виртуальный сетевой адаптер. Все, что вам нужно сделать, это зайти в реестр и перейти к HKLM\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318.

Оказавшись там, ищите в ключах строку, вызываемую DriverDescсо значением «Tap-win». Это ключ к виртуальному адаптеру, который использует OpenVPN. Затем создайте слово с именем * NdisDeviceType и присвойте ему значение 1.

Наконец, перезагрузите компьютер. Теперь вы не должны видеть неопознанную сеть. Пожалуйста, не забудьте сделать резервную копию вашего реестра, прежде чем пытаться эту модификацию. Если вы используете OpenVPN, и вам это неудобно, вы можете скачать скрипт, который сделает это за вас.

canadianprince
источник
3

Я думаю, что самый простой и лучший способ решить эту проблему - сделать это:

  1. Откройте файл конфигурации OpenVPN.
  2. Добавьте эту строку: route 0.0.0.0 0.0.0.0 vpn_gateway 50(не изменяйте vpn_gateway, это переменная окружения) и сохраните.
  3. Подключи VPN
  4. При необходимости перейдите к шагу 5 и 6.
  5. Откройте run (Win + R) и введите secpol.mscgo в «Политики диспетчера списка сетей»
  6. Щелкните правой кнопкой мыши по вашей сети VPN и выберите Свойства-> Сетевое расположение. Выберите Частная сеть.

Таким образом, вам не нужно заботиться о IP-адресе вашего VPN-шлюза, а также работать с динамическими VPN-шлюзами.

droidgren
источник
Вы также можете установить показатель (50) выше для VPN с разделенным туннелем, чтобы исправить это, не нарушая разделение. 500 работал на меня
computergeek125
2

Это работает, но лучше, если вы сделаете еще один шаг, изменив настройки IP для адаптера TAP вручную. Используйте, ipconfigчтобы выяснить правильные настройки и использовать шлюз для DNS-сервера.

Обновление : пропустите этот шаг - если вы сделаете это, ваш IP-адрес не будет замаскирован. Я не знаю, почему это так, но я сделал все, что мог придумать, чтобы полностью изменить ситуацию, но единственный способ - отменить то, что я сделал на этом шаге, и перезагрузить компьютер.

Обновление : проблема, с которой я столкнулся, заключается в том, что я настроил Windows 7 для запуска соединения при загрузке Windows. Иногда, когда я перезагружаюсь или выключаю компьютер, сеть возвращается к неизвестному. Маршрут все равно будет в таблице. Обходным путем было изменение файла конфигурации для клиента VPN, к которому я подключаюсь. Команда, которую я добавил, была:

#Dummy default gateway to work around Windows 'unidentified network'/'unknown network' (put a "#" in front of this)
route-metric 30
route 0.0.0.0 0.0.0.0 10.0.0.1.

Метрика получается путем чтения таблицы маршрутов, которая отображается с:

route print -4

10.0.0.1 - это шлюз, к которому подключается VPN. Например, когда я подключен к VPN, моя таблица маршрутов выглядит примерно так:

-------------------------------------------------------------------------
IPv4 Route Table
-------------------------------------------------------------------------
Active Routes:
Network Destination      Netmask        Gateway      Interface    Metric
          0.0.0.0        0.0.0.0    192.168.0.1  192.168.0.100        25
          0.0.0.0      128.0.0.0       10.0.0.1     10.0.7.102        30

Первая запись - это маршрут к моему роутеру. Вторым является VPN-соединение. Теперь, когда я изменяю файл подключения VPN (в моем случае vpn.ovpn), я использую сетевое назначение и создаю маску сети 0.0.0.0, а в качестве шлюза использую 10.0.0.1. Затем я отмечаю, что для метрики установлено значение 30, а в файле конфигурации - 30.

Роберт Мартин
источник
2

Если вы завершили добавление шлюза по умолчанию (с помощью команд или графического интерфейса Windows ), вам все равно может понадобиться указать Windows, что вы хотите применить обозначение Private или Domain к сети. Возможно, вы случайно пометили сеть как общедоступную или по какой-либо причине у вас никогда не было возможности выбрать с помощью подсказки «Установить местоположение ...». Я столкнулся с этим сценарием на Windows 10.

Чтобы установить это через реестр , перейдите к ключу сетевых профилей, в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles. Ключ ПрофилиОтсюда Profilesключ содержит список ключей с идентификаторами GUID, которые соответствуют всем сетям, сохраненным на вашем компьютере. Вы можете просмотреть эти ключи GUID и найти свою сеть, сопоставив ProfileNameзначение в ключе. Ключ идентификатора профиля и значение ProfileNameКак только вы нашли правильную сеть в Profilesключе, вы хотите изменить Categoryзначение для сетевого ключа.Значение категории в ключе ID профиля

Значение в Categoryзначении 0указывает на общедоступную сеть. Вы можете изменить это значение на, 1чтобы пометить сеть как частную или 2назначить сеть как сеть домена. Чтобы применить это изменение, может потребоваться повторная инициализация сетевого подключения.

palswim
источник
Если нам нужно удалить изображения из-за водяного знака «TenForums.com», не стесняйтесь редактировать мой вопрос или дайте мне знать.
Palswim
0

Все решения, упомянутые выше, на самом деле просто обходные пути, но, как говорится, у каждого товара / продукта есть свои покупатели.

Самое простое - удалить 0.0.0.0созданный неизвестный маршрут, и тогда все должно вернуться на свое место. Просто запустите cmd.exe(как администратор) из командной строки, а затем введите route delete 0.0.0.0Вот и все.

Я не думаю, что регистрация нежелательных маршрутов и другого мусора или просто делать это наоборот и делать слона из мухи - это одна из величайших идей ... Удачи!

Мистер
источник
0

На моей машине с Windows 7 «Неопознанная сеть» была симптомом проблемы OpenVPN, а не причиной. В моем случае исправление заключается в запуске клиентского графического интерфейса OpenVPN с использованием привилегий администратора.

Грег Глокнер
источник