Binabasa ng tuntunin sa routing ang marka ng packet, hindi ang conntrack
Binabasa ng policy routing ang marka ng packet; nag-iimbak ang conntrack ng ibang halaga na mas matagal ang buhay. Ang pagkopya sa pagitan ng dalawa ay hakbang na kailangang isulat ng isang tao.
Apat na pagsusuri ang naghihiwalay ng gumaganang tuntunin sa marka mula sa gumaganang ruta: aling marka ang binabasa ng tuntunin, kung dala pa rin ito ng packet sa paghahanap, kung naibalik ang marka ng koneksyon sa mga susunod na packet, at kung kung pinapayagan ng mask at priyoridad ng tugmang tuntunin na ito ay umandar. Ang tumataas na counter ay nagpapatunay lamang na may isang tuntuning tumugma sa isang bagay. Wala itong sinasabi tungkol sa dala ng packet noong pinili ng kernel ang landas nito.
Nabubuhay ang dalawang marka sa magkaibang lugar at nagwawakas sa magkaibang iskedyul.
Dalawang marka, dalawang buhay
Ang marka ng packet ay pag-aari ng isang skb, naglalakbay kasama nito sa mga hook at ginagamit ng fwmark selector ng policy routing. Ang marka ng koneksyon ay pag-aari ng entry ng conntrack, nananatili sa mga packet ng flow na iyon at hindi nakikita ng tuntunin sa routing hanggang may kopyang magbalik nito. Ang pag-iimbak ng marka ng packet sa koneksyon ay imbakan; ang pagbalik nito ay hiwalay na aksyon. Wala sa dalawa ang nangyayari nang tahimik.
Kaya't maaaring magmukhang pare-pareho ang isang set ng tuntunin habang ang desisyon sa ruta ay nakakakita ng sero: naiimbak ang halaga, at walang nagbalik nito.
Ang pagkopya sa pagitan ng dalawa ay hakbang na ikaw ang nagsusulat
Ang dalawang mahalagang pahayag ay tumatakbo sa magkasalungat na direksyon: ang isa ay nag-iimbak ng marka ng packet sa koneksyon, ang isa ay naglo-load ng marka ng koneksyon sa packet. Alin ang kailangan mo ay depende sa kung kailan nangyayari ang klasipikasyon kaugnay ng flow. Maaaring marka ng packet lamang ang kailangan ng isang disenyo, at ang pagdaragdag ng pagmarka sa conntrack dahil gumamit ng dalawa ang isang pansamantalang solusyon ay siyang paraan para magkaroon ng pangalawang mode ng pagkabigo ang isang simpleng patakaran.
ct mark set meta mark meta mark set ct mark
Isulat ang direksyon sa tabi ng tuntunin, dahil hindi ito halata sa sintaks sa unang tingin. Nag-iimbak ang unang linya, nagbabalik ang pangalawa, at wala sa dalawa ang nagpapahiwatig ng isa.
Iklasipika bago ang paghahanap na gumagamit nito
Ang trapikong nalilikha nang lokal at ang trapikong ipinapasa mula sa LAN ay dumadaan sa magkaibang hook at umaabot sa mga desisyon sa ruta sa magkaibang sandali. Ang tuntunin sa labas na gumagana para sa sariling koneksyon ng router ay hindi nagpapatunay na ang packet ng ipinasa na kliyente ay namarkahan bago ang paghahanap nito. Ilagay ang klasipikasyon kung saan hindi pa nangyayari ang paghahanap na gumagamit nito, at tingnan kung ang mga susunod na tuntunin sa parehong chain ay nagsusulat muli ng halaga. Ang pagkakasunod-sunod sa loob ng chain ay bahagi ng konfigurasyon, hindi detalye ng implementasyon.
Ang pagtitiyaga ng estado ng koneksyon ay nangangailangan din ng malinaw na plano. Kung ang unang packet lamang ng isang flow ang ikinaklasipika, kailangan ng mga susunod na packet na maibalik ang naimbak na marka, kung hindi ay tatahakin nila ang landas na walang marka. Iyon ang pagkakaiba ng markang naglalarawan ng koneksyon at markang naglalarawan ng packet.
Tanungin ang ruta ng may markang tanong
ip route get 10.77.0.10 mark 0x2
Suriin ang mga tuntunin at ang talahanayan, pagkatapos ay tanungin ang ruta nang kasama ang marka, kasama ang pinagmulan o ang papasok na interface kapag nakakaapekto ang mga iyon sa patakaran. Ang ordinaryong paghahanap na walang marka ay sumasagot sa ibang tanong at malugod na iuulat ang landas na hindi mo gusto. Suriin ang mask at priyoridad ng tuntunin gayundin ang halaga nito, at tiyakin na ang napiling talahanayan ay may magagamit na ruta.
Ang tumataas na counter ay ebidensya na may isang tuntuning tumugma sa isang packet. Hindi ito ebidensya na dala ng huling packet ang nilalayong marka sa tamang punto ng desisyon.
Basahin ang marka, ang direksyon, ang oras at ang mask. Apat na pagsusuri, at hindi na misteryo ang ruta.