Додадовте метрика на рута во профилот, се поврзавте повторно, а сообраќајот сепак излегува низ погрешниот интерфејс. Проблемот ретко е во бројот. Метриката само ги подредува кандидатите што оперативниот систем веќе ги споредува, а поспецифичен префикс или порана табела на политики одлучува пред воопшто да се прочита метриката.

Прво поминете низ профилот, потоа низ инсталираната табела, па низ правилата за избор. Тој редослед одговара на начинот на кој клиентот ја гради рутата и ве спречува да подесувате вредност што никогаш не влегува во споредбата.

Прочитајте ја линијата на рутата по редослед на полињата

Клиентот Community OpenVPN 2.6 прифаќа четири полиња на IPv4 route линија: мрежа, мрежна маска, порта и опционална метрика. На местото на портата оди специјалниот клуч vpn_gateway. Тој значи следен скок од VPN страната за оваа врска, не број на табела за рутирање и не вашиот физички рутер. Ако го пропуштите тоа, остатокот од линијата се чита со погрешна претстава за тоа што прави. референцата network-options ги документира сите четири полиња.

За приватна дестинација линијата може да изгледа вака:

route-metric 50
route 172.20.0.0 255.255.0.0 vpn_gateway 30

Експлицитната 30 важи за таа рута, а 50 останува стандардна за сите други рути во профилот што изоставуваат број. Читањето на линијата од лево кон десно е доволно за да се каже која вредност каде важи.

route-metric е стандард, не ранг

route-metric поставува резервна вредност за рутите што не носат свој број. Таа не ја подига рутата над ништо друго и не ги прередува рутите инсталирани со експлицитни метрики.

Оваа разлика е важна кога профилот ги меша двете форми. Една route-metric линија при врвот изгледа авторитетно и лесно се обвинува, а рутата што навистина носи сообраќај може да носи сопствена метрика три линии подолу.

Ако сакате една рута да претпочита пат, ставете го бројот на таа рута. Ако сакате постојан стандард низ генериран профил, користете route-metric и оставете ги поединечните линии. Мешањето на двете без причина е начинот на кој профилот завршува со рута што никој не може да ја објасни.

Проверете што инсталирал клиентот

Откако повторното поврзување ќе заврши, прашајте го јадрото, а не профилот.

ip route show ги набројува рутите што клиентот ги додал, а ip route get 172.20.5.10 одговара на покорисното прашање: која рута оваа дестинација навистина би ја користела и со која изворна адреса. Ако дестинацијата ја нема во табелата, клиентот не ја инсталирал.

Локална директива, push од серверот или друг мрежен менаџер може да го додаде или отстрани истиот префикс, а победува тој што пишувал последен. Држете ја рутата до крајната точка на вид додека работите, бидејќи врската бара пат до оддалечениот сервер што не оди низ тунелот што се гради.

Зошто помала метрика сепак губи

Метриките ги споредуваат рутите до истата дестинација. Тие не го прават широк префикс поспецифичен. Кога е во игра redirect-gateway def1, клиентот инсталира 0.0.0.0/1 и 128.0.0.0/1, и тие два префикса го покриваат целиот IPv4 простор поспецифично од 0.0.0.0/0. Метрика од 1 на стандардната рута не ги надминува.

Истата логика важи за секој пар што се преклопува. /24 победува /16 за адреса во него, без разлика на броевите прикачени, бидејќи пребарувањето најпрво го избира најспецифичното совпаѓање и само потоа споредува метрики меѓу еднаквите.

Ова е делот што изгледа како грешка во метриката, а не е. Проверете ја должината на префиксот на двата кандидата пред да смените кој било број.

Правилата на политиката работат пред табелата

На Linux, ip rule одлучува која табела за рутирање се консултира. Правилата се оценуваат по приоритет, па порана табела може да врати рута пред главната табела воопшто да се прочита. Метрика во главната не може да надмине совпаѓање во табела што била консултирана прва.

Користете ip rule show и потоа прашајте ја конкретната табела, на пример ip route show table 100, за да видите што би вратило тоа правило. Ако VPN клиент или контејнерско опкружување додало правило, одговорот може да е таму наместо во табелата што сте ја читале. Изворната адреса исто така е важна, бидејќи правило може да се совпадне со изворот и да ја реши истата дестинација поинаку за тунелски и LAN сообраќај.

Проверете ја дестинацијата, не рангирањето

Тестот што ја завршува расправата е едно прашање до домаќин во предвидената подмрежа, плус проверка на изворната адреса што ја избрало јадрото. Ако тој пар одговара на дизајнот, метриката ја работи својата работа дури и кога списокот не изгледа како чисто рангирање.

Оставете ги IPv6 и DNS надвор од оваа проверка. Тие се конфигурираат со различни директиви и се решаваат со различни механизми, а работечка IPv4 рута не кажува ништо за нив. Менувајте еден слој одеднаш и повторно извршете го прашањето.

Поврзани статии