Maršrutizavimo taisyklė skaito paketo žymę, o ne conntrack
Politikos pagrindu veikiantis maršrutizavimas skaito paketo žymę; conntrack saugo kitą reikšmę, kurios gyvenimas ilgesnis. Kopijavimas tarp jų yra žingsnis, kurį kažkas turi parašyti.
Keturi patikrinimai atskiria veikiančią žymės taisyklę nuo veikiančio maršruto: kurią žymę taisyklė skaito, ar paketas ją vis dar neša paieškos metu, ar vėlesniems paketams buvo atkurta ryšio žymė ir ar ar atitinkančios taisyklės kaukė ir prioritetas leidžia jai suveikti. Augantis skaitiklis įrodo tik tai, kad kokia nors taisyklė su kuo nors sutapo. Jis nieko nesako apie tai, ką paketas nešė, kai branduolys rinkosi jo kelią.
Dvi žymės gyvena skirtingose vietose ir baigiasi pagal skirtingus grafikus.
Dvi žymės, du gyvenimai
Paketo žymė priklauso vienam skb, keliauja su juo per kabliukus ir ją sunaudoja politikos pagrindu veikiančio maršrutizavimo fwmark parinkiklis. Ryšio žymė priklauso conntrack įrašui, išlieka per to srauto paketus ir maršrutizavimo taisyklei yra nematoma, kol kažkas jos neatkopia atgal. Paketo žymės išsaugojimas ryšyje yra saugojimas; jos atkūrimas yra atskiras veiksmas. Nė vienas nevyksta savaime.
Todėl taisyklių rinkinys gali atrodyti nuoseklus, nors maršrutizavimo sprendimas mato nulį: reikšmė buvo išsaugota, ir niekas jos neatkūrė.
Kopijavimas tarp jų yra žingsnis, kurį rašote jūs
Du svarbūs teiginiai veikia priešingomis kryptimis: vienas išsaugo paketo žymę ryšyje, kitas įkelia ryšio žymę į paketą. Kuri jums reikia, priklauso nuo to, kada klasifikavimas vyksta srauto atžvilgiu. Projektui gali pakakti tik paketo žymės, o conntrack žymėjimo pridėjimas dėl to, kad koks nors apėjimas naudojo abu, yra būdas, kuriuo paprasta politika įgyja antrą gedimo režimą.
ct mark set meta mark meta mark set ct mark
Užrašykite kryptį prie taisyklės, nes iš sintaksės iš pirmo žvilgsnio tai nėra akivaizdu. Pirmoji eilutė išsaugo, antroji atkuria, ir nė viena neimplikuoja kitos.
Klasifikuokite prieš paiešką, kuri tai sunaudoja
Vietoje sugeneruotas srautas ir iš LAN perduotas srautas eina per skirtingus kabliukus ir maršrutizavimo sprendimus pasiekia skirtingais momentais. Išvesties taisyklė, veikianti paties maršrutizatoriaus ryšiams, neįrodo, kad perduoto kliento paketas buvo pažymėtas prieš jo paiešką. Padėkite klasifikavimą ten, kur jį sunaudojanti paieška dar neįvyko, ir patikrinkite, ar vėlesnės tos pačios grandinės taisyklės neperrašo reikšmės. Tvarka grandinėje yra konfigūracijos dalis, o ne įgyvendinimo detalė.
Ryšio būsenos išsaugojimas taip pat reikalauja aiškaus plano. Jei klasifikuojamas tik pirmasis srauto paketas, vėlesniems paketams reikia atkurti išsaugotą žymę, kitaip jie eis nepažymėtu keliu. Tai skirtumas tarp žymės, apibūdinančios ryšį, ir žymės, apibūdinančios paketą.
Užduokite maršrutui pažymėtą klausimą
ip route get 10.77.0.10 mark 0x2
Peržiūrėkite taisykles ir lentelę, tada paklauskite maršruto įtraukę žymę, taip pat šaltinį ar įeinančią sąsają, kai jie daro įtaką politikai. Įprasta paieška be žymės atsako į kitą klausimą ir mielai praneš kelią, kurio nenorėjote. Patikrinkite taisyklės kaukę ir prioritetą bei jos reikšmę ir įsitikinkite, kad pasirinktoje lentelėje yra naudojamas maršrutas.
Augantis skaitiklis yra įrodymas, kad kokia nors taisyklė sutapo su kokiu nors paketu. Tai nėra įrodymas, kad galutinis paketas nešė numatytą žymę tinkamame sprendimo taške.
Skaitykite žymę, kryptį, laiką ir kaukę. Keturi patikrinimai, ir maršrutas nustoja būti mįslė.