Како уклонити застарелу руту коју је оставио Windows VPN
Пронађите запис који је заиста застарео, прегледајте његово уклањање према исправном складишту правила и потврдите да претрага бира интерфејс који очекујете.
Сесија се завршила пре неколико сати, адаптер је нестао, а рута је још у табели и показује на интерфејс 42. Брисање тог реда тражи једну команду; одлука да је то прави ред тражи четири провере. Табела рута је дељена, па широко уклањање уклања путање које друге везе још користе, укључујући ону која носи тунел. Сваки корак испод сужава циљ док се само један запис не може поклопити.
1. Одлучите да ли је запис застарео или намеран
Запис који је преживео поновно покретање негде је записан, а то место је обично одлука, а не несрећа. Подељени тунел зависи од рута које изгледају тачно као остаци, а правила која гурају један префикс кроз тунел не разликују се од застарелог записа у једном списку. Питајте када се рута појавила: она која постоји само док је тунел активан припада конфигурацији клијента, па је команда за чишћење погрешан алат. Уклоните намерну руту и следећа веза ће пасти на кораку који нико не посматра.
Рута до крајње тачке заслужује посебно упозорење. Када клијент дода руту домаћина ка VPN серверу да би шифровани пакети могли да га достигну преко локалне везе, брисање те руте руши тунел при следећем поновном повезивању, а симптом се чита као отказ сервера. Пре него што било шта додирнете, упоредите одредиште са адресом на коју се клијент повезује: једна јавна адреса која одговара VPN серверу је спољна путања, а не смеће.
2. Запишите четири поља која именују запис
Сам префикс није идентитет, јер два интерфејса могу држати руте до истог одредишта. Запишите префикс одредишта, индекс интерфејса, следећи скок и складиште правила, јер те четири вредности описују тачно један запис. Један списак вам даје све:
Get-NetRoute -AddressFamily IPv4 | Sort-Object RouteMetricСортирање по метрици подиже руте које машина заиста преферира, и ту обично седи остатак. Упоредите запис док је тунел активан и поново након што падне: рута која одлази са адаптером била је клијентова, а она која остаје записана је нечим другим. Складиште правила је поље које људи прескачу, и оно објашњава поновно појављивање, јер запис уклоњен из активног складишта враћа се после следећег освежавања правила. Запишите четири вредности пре него што покренете било шта што мења стање.
3. Прегледајте уклањање, затим уклоните један запис
Remove-NetRoute прихвата исти префикс и индекс интерфејса које је исписао Get-NetRoute, и има прекидач за преглед, па ништа не треба погађати. Покрените пар у овом редоследу:
Remove-NetRoute -DestinationPrefix 10.20.0.0/16 -InterfaceIndex 42 -WhatIf
Remove-NetRoute -DestinationPrefix 10.20.0.0/16 -InterfaceIndex 42Преглед исписује објекат који би избрисао, па упоредите префикс, интерфејс и следећи скок са својим белешкама пре него што пустите прекидач. Ниједан ред не достиже трајни запис, јер је активно складиште подразумевано; додајте -PolicyStore PersistentStore када рута коју сте идентификовали живи тамо, иначе уклањање изгледа да ради, а запис се враћа при следећем освежавању правила. Када је сесија удаљена, задржите ванпојасни пут опоравка, јер брисање руте која носи вашу сопствену везу прекида је. Никада не посежите команду која чисти табелу.
4. Пронађите компоненту која је враћа
Брисање није поправка док је власник још конфигурисан да инсталира руту. Власник је обично један од три: профил VPN клијента са списком подељеног тунела, скрипта или заказани задатак који додају руте при пријави, или доменско правило примењено на машину. Прво проверите профил, јер се извршава при свакој вези:
Get-VpnConnection | Select-Object Name,SplitTunneling,ServerAddress
Get-NetRoute -PolicyStore PersistentStoreТрајни записи су видљиви без повезивања било чега, па рута која се враћа после поновног покретања без VPN сесије готово увек живи у том складишту или у стартној скрипти. Исправите власника тамо, и ручно брисање постаје провера уместо лечења.
5. Потврдите претрагу, суседе и белешку
Чист резултат није то да је рута нестала; то је претрага која сада бира интерфејс који сте очекивали. Питајте машину куда би пакет до погођеног префикса отишао, јер остатак још именује мртви индекс, док чист одговор именује интерфејс на вези или исправни пролаз. Find-NetRoute одговара на то за једну адресу одједном:
Find-NetRoute -RemoteIPAddress 10.20.4.7Затим тестирајте суседа: изаберите други префикс који је подељеном тунелу још потребан и потврдите да је његова претрага непромењена, јер уклањање једне руте превише је грешка на коју ово чишћење позива. Поново покрените апликацију која је првобитно пала, и запишите која компонента сада поседује префикс. Microsoft документација за Get-NetRoute наводи поља која сте записали у другом кораку. За шест месеци та белешка је оно што спречава да се исти запис двапут дијагностикује.