Вы падключаеце VPN, запускаеце route print, і маршрут па змаўчанні цяпер мае значна меншую метрыку, чым раней. Натуральная выснова: VPN заняў маршрут па змаўчанні, бо яго нумар меншы. Часам менавіта так і адбываецца. Часцей метрыка зусім не вырашае справу, і яе праўка нічога не змяняе, бо выбар быў зроблены раней — даўжынёй прэфікса або правілам палітыкі.

Сімптом рэальны: трафік, які раней выходзіў праз адаптар Wi-Fi, цяпер выходзіць праз тунель, або наадварот. Метрыка — гэта адзін уваход для пошуку, які выконваецца ў фіксаваным парадку, і менавіта гэты парадак трэба прачытаць, перш чым чапаць лік.

З чым насамрэч спаборнічае лік

Першае параўнанне — дакладнасць, а не перавага. Маршрут да 10.20.0.0/16 перамагае 10.0.0.0/8, і абодва перамагаюць 0.0.0.0/0, што б ні казалі іх метрыкі. VPN, які ставіць маршрут па змаўчанні з найменшай метрыкай на машыне, усё роўна прайграе любому больш дакладнаму маршруту, які адпавядае прызначэнню, уключаючы маршрут хоста, які кліент ставіць для свайго сервера.

Таму зніжэнне метрыкі маршруту па змаўчанні не можа загнаць непасрэдна падключаную падсетку у тунель. Калі вы хочаце гэтую падсетку ўнутры VPN, дадайце маршрут для прэфікса або выберыце табліцу тунеля правілам палітыкі. Метрыка — не той рычаг для гэтай задачы.

Check in this orderQuestionWhere you read it
1. Policy and tableWhich routing table does this traffic use?ip rule, client profile
2. Prefix lengthWhich matching route is most specific?route print, ip route
3. MetricWhich of the equally specific routes is preferred?route print, ip route
4. Interface stateIs the chosen next hop reachable?adapter status, link state

Linux выбірае табліцу раней за метрыку

У Linux ядро спачатку звяртаецца да базы палітык. ip rule пералічвае правілы і табліцы, якія яны выбіраюць, а ip route get 203.0.113.10 паказвае табліцу, маршрут і адрас крыніцы, якія ядро рэальна выкарыстала б для гэтага прызначэння. Метрыка ўнутры табліцы 100 ніколі не спаборнічае з маршрутам у галоўнай табліцы, бо правіла выбрала табліцу раней, чым параўноўваліся метрыкі.

Таму маршрут можа выглядаць правільным у ip route show table all і ўсё роўна не несці трафік. Прачытайце правіла, якое супала, затым табліцу, якую яно выбрала, затым параўнайце маршруты ўнутры яе. Калі выбрана не тая табліца, ніякая праўка метрыкі ў іншай табліцы не дапаможа.

Windows спалучае дзве метрыкі

У Windows няма базы палітык па змаўчанні, але ён спалучае метрыку маршруту з метрыкай інтэрфейса, а аўтаматычная метрыка інтэрфейса можа змяняцца з хуткасцю злучэння і станам адаптара. Таму адзін і той жа маршрут можа паводзіць сябе інакш пасля з'яўлення док-станцыі або віртуальнага адаптара. Find-NetRoute -RemoteIPAddress 203.0.113.10 паказвае выбраны адрас крыніцы, наступны хоп і інтэрфейс, што бліжэй да рэальнага рашэння, чым сырая табліца.

Чытайце значэнні маршруту і інтэрфейса разам. Павышэнне метрыкі інтэрфейса можа перасунуць трафік без змены любога запісу маршруту, а кліент VPN, які валодае сваімі маршрутамі, пераўсталюе іх пры паўторным падключэнні і адкіне вашу праўку.

Трымайце канчатковую кропку тунеля па-за тунелем

Кожнаму тунелю патрэбен шлях да ўласнага сервера, які не ідзе праз тунель. Кліенты ставяць маршрут хоста для канчатковай кропкі праз фізічны шлюз, і гэты маршрут мусіць заставацца дакладнейшым за маршрут па змаўчанні, які дадае кліент. Выдаліце яго або дазвольце тунелю выйграць пошук для гэтага адраса — і інкапсуляваныя пакеты паспрабуюць увайсці ў тунель, які павінны будаваць. Злучэнне зрываецца або зацыкліваецца.

Правярайце гэты маршрут хоста да і пасля любой змены метрыкі: ён павінен паказваць на фізічны наступны хоп і вытрымаць паўторнае падключэнне. Калі кліент валодае ім, змяніце профіль або кіраваную канфігурацыю, а не значэнне часу выканання, якое будзе перазапісана.

Праверце абодва сямействы адрасоў і кантэкст праграмы

IPv4 і IPv6 — асобныя рашэнні з асобнымі табліцамі. VPN можа несці IPv4, пакуль IPv6 працягвае выкарыстоўваць лакальны маршрутызатар, і змена метрыкі ў адным сямействе нічога не кажа пра іншае. Праверце абодва, затым праверце кантэкст праграмы. Працэс, прывязаны да інтэрфейса, прастора імён кантэйнера або VPN для кожнай праграмы могуць бачыць іншую табліцу, чым ваша абалонка.

Правярайце інструментам, які паведамляе рашэнне для рэальнага прызначэння, а не поўным спісам табліцы. Калі выбраны маршрут — той, што прадугледжвае дызайн, спыніцеся. Метрыка, якая не з'яўляецца найменшым лікам на экране, не з'яўляецца дэфектам, і прымус яе быць найменшай можа зламаць шлях канчатковай кропкі, ад якога залежыць тунель.

Падобныя артыкулы