Marques de nftables i encaminament VPN: quina regla guanya realment
Una marca posada al tallafoc encara pot no encertar la regla d’encaminament. Comproveu la màscara de la regla, el tipus d’objecte i els altres escriptors abans d’afegir-ne una quarta.
Una marca posada a nftables hauria d’enviar una classe de trànsit pel túnel, però el trànsit continua sortint per la interfície física. El conjunt de regles sembla correcte aïlladament. El que normalment ha passat és que una altra cosa ha escrit la mateixa marca, o que la regla d’encaminament coincideix amb una màscara que el valor nou ja no compleix.
Comprovació 1: llegiu la regla amb què coincideix el nucli
Comenceu per la regla de política, no pel tallafoc. El nucli consulta les regles per ordre de prioritat i la primera coincidència decideix la taula. Llegiu el valor de fwmark i la màscara de la mateixa regla, i després confirmeu que un paquet amb la marca que heu posat hi coincideix realment. Una regla que espera un valor complet de 32 bits no coincidirà amb un paquet que només porta un sol bit.
Després confirmeu quina taula selecciona aquesta regla i què conté la taula. Una regla que apunta a una taula buida produeix un error de cerca, cosa que en molts sistemes significa que el paquet cau a la regla següent i surt per la interfície física.
Dues ordres ho resolen: la llista de regles i la cerca de ruta per a la destinació en aquella taula.
Comprovació 2: marca de paquet o marca de connexió
nftables pot posar una marca al paquet i una marca a l’entrada de seguiment de connexions, i són objectes diferents. La marca de paquet viu durant la passada de processament del paquet, mentre que la marca de connexió persisteix per al flux i s’ha de copiar deliberadament. Posar-ne una i esperar-ne l’altra és una mitja solució habitual.
Si la regla d’encaminament es basa en la marca de paquet, restaurar la marca de connexió més endavant al camí no fa res per a aquesta decisió, perquè la decisió ja s’ha pres.
Decidiu quin objecte posseeix el senyal d’encaminament i després poseu-lo al punt on es pren la decisió d’encaminament.
Comprovació 3: qui més escriu aquesta marca
Les eines pròpies de WireGuard marquen els seus paquets UDP perquè el transport xifrat no es torni a encaminar cap al túnel al qual pertany. Si el vostre conjunt de regles assigna un valor no relacionat al mateix camp, aquesta exclusió desapareix i el trànsit exterior del túnel intenta entrar dins seu. El símptoma és un túnel que s’estableix i després deixa de passar trànsit.
Les marques també les utilitzen altres eines de tallafoc, la xarxa de contenidors i l’encaminament per política amb altres finalitats, així que dos subsistemes escrivint tot el camp és un conflicte encara que cadascun sigui correcte per separat.
Lliste els escriptors abans d’afegir-n’hi un altre.
Comprovació 4: la màscara decideix què conserveu
Una marca és un camp de 32 bits, i les màscares són com el comparteixen diversos propietaris. Posar un valor amb màscara conserva els bits que no posseïu; posar tot el camp destrueix els de tots els altres. Llegiu la màscara a cada regla que toqui el camp, incloses les que no heu escrit.
Documenteu l’assignació de bits al costat del conjunt de regles.
Altrament, la persona següent reutilitzarà un valor que ja té propietari, i un conflicte aquí sembla un error d’encaminament quan en realitat és un error d’adreçament. La documentació de nftables sobre metadades de paquets descriu les mateixes operacions de marca.
Comprovació 5: verifiqueu amb un flux real, no amb una cerca
Una cerca de ruta simple no porta cap marca, així que pot mostrar un camí diferent del paquet real. Genereu el trànsit que us interessa i observeu els comptadors, l’entrada de seguiment de connexions i la interfície per la qual surt realment. Proveu tant la classe inclosa com la classe exclosa, perquè una marca massa àmplia trenca l’exclusió mentre sembla reeixida. Si la classe inclosa funciona i la classe exclosa també entra al túnel, la marca és massa ampla i no massa estreta.
Eviteu buidar l’estat de connexió per forçar una actualització durant una sessió en directe, ja que els fluxos nous i els existents poden prendre camins diferents legítimament.
Registreu la marca, la màscara i la taula en un sol lloc, i la propera edició esdevé revisable.