Тунелът се вдига, приложението се зарежда и тогава всичко останало на лаптопа започва да се държи странно. Това е обичайната форма на политика „само частно“, реализирана чрез изтриване на един ред. Премахването на изтласкан маршрут по подразбиране наистина променя накъде отива трафикът, но не казва накъде трябва да отиде вместо това и изобщо не засяга разрешаването на имена. Една политика се нуждае от две положителни половини, преди да може да бъде тествана.

Изтриването на пренасочването е само половината от промяната

Пренасочването на целия тунел и политиката „само частно“ се различават по това какво твърдят за света. Пренасочването претендира за всяка дестинация, докато частната политика претендира за списък и оставя останалото на мира. Изтриването на претенцията без написване на списъка създава клиент, който не достига до нищо извън LAN, което изглежда като отказ на маршрутизацията, а не като празнина в политиката. Напишете списъка, преди да премахнете претенцията, и редът на тези две стъпки спира да има значение.

Двете половини са изисквания, а не стойности по подразбиране. Частните префикси трябва да влизат в тунела, а обичайните дестинации трябва да запазят пътя, който са имали преди връзката.

Ако организацията изисква пълен тунел, нищо от това не важи. Дизайнът „само частно“ принадлежи на внедрявания, в които разделното маршрутизиране е одобрено.

pull-filter е съвпадение, а не превключвател

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

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

route-nopull е по-широко решение, отколкото изглежда. То спира клиента да приема изтласкани маршрути и опции от типа на DHCP като група, което е различна политика от филтрирането на една опция.

Напишете списъка с маршрути от приложението навън

Започнете от това, което потребителят действително отваря, после добавете поддържащите части. Приложение на 10.60.20.15 предполага своята подмрежа 10.60.0.0/16, а частно име предполага преобразувателя, който отговаря на него. Затова потребител, поискал едно приложение, се нуждае от две дестинации и едно решение за DNS. Всичко извън този списък е извън обхват по конструкция и точно това прави политиката преглеждаема.

На сътрудничещ сървър те стават два изтласкани маршрута и нито един от тях не е пренасочване. Запазете топологията на тунела и стойностите на шлюза на маршрута, които съществуващата услуга предоставя.

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

DestinationIntended path
10.60.0.0/16Tunnel, for the approved application services
10.61.0.53/32Tunnel, to reach the internal resolver
corp.example queriesInternal resolver, selected per namespace
Everything elseLocal path and local resolver

Накарайте DNS да следва същия път

Маршрутът до преобразувателя не е политика за преобразувателя. При клиент systemd-resolved семантичният резултат е домейн за маршрутизиране на частното пространство от имена, сочещ към вътрешния преобразувател, и точно това кара само тези имена да го използват. Клиент на Windows се нуждае от собствен механизъм за политика на пространствата от имена. Ред с DNS сървър в профила не инсталира нито едно от двете сам по себе си.

Проверявайте какво е избрала операционната система, а не какво е поискал профилът. В Linux resolvectl status показва домейна и сървъра за всяка връзка; в Windows таблицата с политика на пространствата от имена е еквивалентното доказателство.

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

Проверете двете половини при повторно свързване

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

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

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