Резултатите от търсенето ви дават файл .pbk, имената на ключовете изглеждат познати и очевидната стъпка е да го приемете като преносима схема за всяка VPN в Windows. Но не е. Форматът принадлежи на конкретен собственик и един и същ ключ означава различни неща в зависимост от това кой собственик го е записал. Точно четенето на обхвата първо пречи документационно упражнение да се превърне в неподдържана редакция.

Четирима собственици, четирима различни читатели

Четирима различни собственици записват подобни файлове. Собствената връзка за отделен потребител попада в телефонния указател на текущия потребител, докато връзката за всички потребители попада в хранилище на ниво машина, което всеки акаунт на хоста може да прочете. RRAS сървърът пази конфигурация за връзка при поискване за собствената си маршрутизираща роля, а клиент на трета страна може да пази собствен формат, който просто споделя разширението. Едно разширение, четирима читатели, четири набора правила.

Съвпадащото показвано име не прави два такива записа един и същ, а копирането на ключ между тях предполага, че мениджър ще уважи нещо, което никога не е документирал. Собственикът също решава кой може да променя файла: профилът за отделен потребител е избор на потребителя, профилът на ниво машина е административно решение, а записът за връзка при поискване на сървър е маршрутизираща конфигурация под собствен контрол на промените. Така грешката в собствеността е проблем с права, преди да стане проблем с форматирането.

Определете собственика, като гледате компонента, който управлява връзката, а не самия файл. Файлът е артефакт; управляващият компонент определя кои ключове чете и кога ги чете. Четенето първо на артефакта и после на мениджъра е пътят, по който хората стигат до редактиране на поле, което нищо не пита.

Къде публикуваният формат спира да описва вашия файл

В протокола за управление на RRAS телефонният указател е обикновен текст, който клиент за управление записва и маршрутизиращата услуга чете, затова спецификацията MS-RRASM описва настройки за връзка при поискване за сървър, а не за профил на работен плот. Структурата е частта, която плоското четене унищожава. Един запис може да съдържа няколко медийни блока, всеки от които съдържа блокове за устройства, а те от своя страна — блокове за отделни номера. Затова един и същ ключ може да се появи на повече от едно място с различно значение.

Четете ключа заедно с неговия раздел и бележките за версията и не превеждайте стойност от едноименно квадратче в интерфейса на работния плот. Намирането на познати ключове в документа не доказва, че той покрива всяко поле на несвързан собствен профил. Правилата на разделите също не са разрешение да пренапишете телефонен указател на работен плот във формата на сървъра.

OwnerWhat reads the fileWhat a key means there
Per-user native connectionThe user's own connection managerA property of that user profile
All-user native connectionThe machine-wide connection storeA property shared by everyone on the host
RRAS demand-dialThe RRAS service, using the documented hierarchyA field inside a media, device or number section
Third-party clientThat vendor's own parserWhatever that vendor documents, if anything

Таблицата е помощно средство за четене, а не спецификация: тя ви казва кой читател да питате, а читателят ви казва какво означава полето. Когато този читател е парсер на трета страна, честният отговор може да е, че нищо публично не документира полето изобщо.

Питайте Windows, не файла

За собствена връзка питайте Windows за профила, вместо да четете файла, защото типизираните свойства са документираната повърхност и единственото, което поддържана промяна променя. Двете команди по-долу четат двете собствени хранилища поотделно. Ако профилът не е в нито едно от двете хранилища, клиентът, който го управлява, не използва собствения механизъм и нито един собствен cmdlet няма да го опише.

Get-VpnConnection -Name 'Field Ops'
Get-VpnConnection -AllUserConnection | Select-Object Name, ServerAddress, TunnelType

За внедряване, а не за проверка, документираният път е управлявана настройка на профил с именувана схема, а не числова редакция вътре в текстов или двоичен блок. Дефиницията на профил описва поддържаните настройки; тя не осигурява сертификатите и частните ключове, от които профилът зависи. Записването е отделен процес със свои правомощия и разбирането на ключ от телефонния указател никога не е разпространявало частен ключ. Планирайте двата пътя отделно, иначе първото внедряване на сертификати става вторият инцидент.

Едно свойство, после жизненият цикъл около него

Запазена стойност не е приложена стойност. След одобрена промяна отворете нова връзка и проверете маршрутите, които профилът инсталира, политиката на резолвера, която наследява, и операцията, която е трябвало да позволи. Повторното използване на сесия, която вече е била вдигната, тества старите настройки и дава фалшиво отрицателен резултат.

Копирайте файла настрани преди каквато и да е работа със суровия файл, защото телефонен указател с няколко записа е споделен артефакт, а целенасочена редакция, която пренаписва целия файл, има радиус на действие по-голям от промяната. Пазете несвързаните записи непокътнати и пазете оригиналната защитена конфигурация, докато новата не бъде проверена. Ако задължително поле не е документирано за собственика и изданието, които действително имате, запишете това като отворен въпрос към поддръжката. Измислянето на кодиране от файла на друга машина е начинът, по който работещ профил се превръща в проект за отстраняване на грешки без никаква отправна точка.

Дисциплината е една и съща на всяка стъпка: назовете собственика, назовете раздела, после назовете поддържаната операция. Всичко друго е догадка с прикрепен цитат.

Подобни статии