Две VPN едновременно в Windows: кой профил запазва маршрута по подразбиране?
Два профила на VPN в Windows се състезават за един и същ маршрут по подразбиране. Махнете една отметка, добавете префиксите, които тя покриваше, и проверете DNS, преди да се доверите на двата.
Включете втория тунел и първият замлъква, докато и двата клиента все още съобщават за здрава връзка. Windows има само един маршрут по подразбиране, който може да даде, и всеки профил, който претендира за него, го отнема от другия. Симптомът изглежда като прекъсване на VPN, но всъщност е състезание по маршрутизация между два профила. Решете кой тунел трябва да притежава този маршрут и останалата част от конфигурацията следва.
Само един запис може да бъде най-добрият по подразбиране
Таблицата за маршрутизация IPv4 държи един печеливш маршрут за дестинации, за които няма по-конкретно съвпадение. Профил на VPN, който инсталира свой собствен, заменя предишния веднага щом се свърже, и трафикът, който преди влизаше в първия тунел, сега излиза през втория. Първият тунел остава активен; изчезва всеки пакет, който би го използвал за общи дестинации.
Иконите за състояние на клиента не могат да покажат това. Те съобщават, че тунел е установен, а не кои префикси все още се маршрутизират към него, затова потребителят вижда две зелени икони и изчакване в приложение. Четенето на route print -4 по време на отказа е по-информативно от всеки VPN журнал.
Разрешаването на имена е втори, независим конфликт и поправянето само на таблицата за маршрутизация няма да го реши.
Какво инсталира отметката и какво премахва
Опцията се намира в свойствата на адаптера на всеки профил на VPN под разширените настройки на IPv4 и е формулирана като използване на шлюза по подразбиране в отдалечената мрежа. Когато е включена, всяка връзка добавя маршрут по подразбиране през тунела и поставя този интерфейс на опашката за общ трафик. Когато е изключена, Windows запазва маршрута за собствената подмрежа на тунела и не пипа останалата част от таблицата.
Именно при премахването на отметката повечето хора зациклят. Отдалеченият сайт обикновено има повече от един префикс и нито един от тези префикси не е в подмрежата на адаптера, затова файловите сървъри и адресите за управление спират да отговарят. Отметката не е счупила тунела; тя премахна широкия маршрут, който покриваше всичко.
Смесените конфигурации са законни и чести: корпоративният профил запазва отметката като пълен тунел, докато лабораторният профил е разделен, за да не може да измести корпоративния по подразбиране.
Избирайте по това какво трябва да носи всеки тунел
Три въпроса решават подредбата. Трябва ли този тунел да носи обикновен интернет трафик или само адреси в собствения си сайт? Използват ли двата сайта непресичащи се частни диапазони? И ако профилът се управлява от работодател, разрешено ли ви е изобщо да променяте поведението му на маршрутизация?
Ако един тунел трябва да е пълен, той притежава маршрута по подразбиране, а другият трябва да е разделен. Ако нито един не се нуждае от общ интернет трафик, махнете отметката и на двата и оставете физическия адаптер да запази маршрута по подразбиране. Ако диапазоните се припокриват, спрете: 172.22.0.0/16 не може да означава една машина от корпоративната страна и друга от лабораторната, и никоя отметка не решава това.
Запишете решението до имената на профилите. Иначе трети VPN, добавен следващото тримесечие, ще повтори разследването отначало.
Добавете липсващите префикси и проверете резултата
За всеки разделен тунел добавете отдалечените диапазони изрично, като използвате адреса на партньора, показан на този адаптер, вместо публичния адрес на сървъра:
> route add 172.22.0.0 mask 255.255.0.0 172.20.4.1
> route print -4
> Get-NetRoute -DestinationPrefix 0.0.0.0/0 | Sort-Object RouteMetric
Адаптерът PPP използва адреса на партньора като следващ хоп, докато адаптерът TAP обикновено използва шлюза, показан на този интерфейс, затова четете подробностите на адаптера, вместо да копирате число от ръководство. Добавяйте постоянния флаг само след като маршрутът се докаже като правилен, и изтривайте старите постоянни записи, преди да добавите заместители. Управляваните клиенти могат да инсталират и защитават собствени маршрути, и тогава собственикът на профила трябва да направи промяната.
DNS изисква отделно минаване. И двата тунела могат да изпращат резолвери, а Windows пази списък за всеки интерфейс с ред на предпочитание, затова име, принадлежащо на втората мрежа, може да бъде изпратено до резолвера на първата мрежа. Вижте какво действително е получил всеки адаптер, преди да изберете поправка:
> Get-DnsClientServerAddress -AddressFamily IPv4
> Resolve-DnsName files.corp.internal -Server 172.20.4.1
Политика за разрешаване на имена по домейн обикновено е по-добра от подмяната на глобалния списък с резолвери, защото този списък се споделя от всяко приложение на машината и тихата му промяна премества несвързани търсения.
Приемете настройката с четири проверки: един ресурс във всяка отдалечена мрежа, достигнат по адрес, търсене на име във всяка, интернет маршрутът по подразбиране все още сочи към физическия адаптер и сесия на отдалечен работен плот, която оцелява при вдигането на втората връзка.