# Reenviament de camí invers

El reenviament de ruta inversa (RPF) és una tècnica que s'utilitza en els encaminadors moderns amb l'objectiu d'assegurar el reenviament sense bucles de paquets de multidifusió en l'encaminament de multidifusió i per ajudar a prevenir la falsificació d'adreces IP en l'encaminament unicast.
En l'encaminament IP unicast estàndard, l'encaminador reenvia el paquet lluny de la font per avançar al llarg de l'arbre de distribució i evitar bucles d'encaminament. En canvi, l'estat de reenviament de multidifusió de l'encaminador s'executa de manera més lògica organitzant taules basades en el camí invers, des del receptor fins a l'arrel de l'arbre de distribució a l'origen de la multidifusió. Aquest enfocament es coneix com a reenviament de camí invers.

## RPF multicast

L'RPF de multidifusió, normalment indicat simplement com a RPF, s'utilitza juntament amb un protocol d'encaminament de multidifusió, com ara el protocol de descoberta de fonts de multidifusió o el protocol multidifusió independent per garantir el reenviament sense bucles dels paquets de multidifusió. En l'encaminament multicast, la decisió de reenviar el trànsit es basa en l'adreça d'origen i no en l'adreça de destinació com en l'encaminament unicast. Ho fa utilitzant una taula d'encaminament multicast dedicada o, alternativament, la taula d'encaminament unicast de l'encaminador.
Els supòsits subjacents d'una comprovació RPF són que,
* la taula d'encaminament unicast és correcta i estable i,
* el camí utilitzat des d'un remitent a un encaminador i el camí invers des de l'encaminador de tornada a l'emissor són simètrics.
Si la primera hipòtesi és falsa, la comprovació RPF fallarà perquè depèn de la taula d'encaminament unicast de l'encaminador com a alternativa. Si la segona hipòtesi és falsa, la comprovació RPF rebutjarà el trànsit de multidifusió a tot menys el camí més curt des del remitent fins a l'encaminador, cosa que conduiria a un arbre de multidifusió no òptim. En els casos en què els enllaços són unidireccionals, l'enfocament del camí invers pot fallar completament.

## RPF unicast

Unicast RPF (uRPF), tal com es defineix a RFC 3704, és una evolució del concepte que el trànsit de xarxes no vàlides conegudes no s'hauria d'acceptar a les interfícies de les quals mai s'hauria d'haver originat. La idea original, tal com es va veure a RFC 2827, era bloquejar el trànsit en una interfície si s'obté d'adreces IP falsificades. És una suposició raonable per a moltes organitzacions simplement prohibir la propagació d'adreces privades a les seves xarxes tret que estiguin en ús explícitament. Aquest és un gran avantatge per a la columna vertebral d'Internet, ja que bloquejar paquets d'adreces font òbviament falses ajuda a reduir la falsificació d'adreces IP que s'utilitza habitualment en DoS, DDoS i escaneig de xarxa per ofuscar l'origen de l'exploració.
uRPF amplia aquesta idea utilitzant el coneixement que tots els encaminadors han de tenir a la seva base d'informació d'encaminament (RIB) o base d'informació de reenviament (FIB) per fer la seva feina principal, per ajudar a restringir encara més les possibles adreces font que s'haurien de veure en una interfície. Els paquets només es reenvien si provenen de la millor ruta d'un encaminador a l'origen d'un paquet. Els paquets que arriben a una interfície provenen de subxarxes vàlides, tal com indica l'entrada corresponent a la taula d'encaminament es reenvien. Els paquets amb adreces d'origen a les quals no s'ha pogut accedir a través de la interfície d'entrada es poden deixar anar sense interrupció de l'ús normal, ja que probablement provenen d'una font mal configurada o maliciosa.

## Filtrat vs. reenviament

L'RPF s'interpreta sovint com un filtratge de camí invers, especialment quan es tracta d'encaminament unicast. Aquesta és una interpretació alternativa comprensible de l'acrònim, ja que quan s'utilitza RPF amb encaminament unicast com a RFC 3704, el trànsit es permet o es denega en funció de la comprovació de l'RPF aprovada o fallada. La idea és que el trànsit es denega si falla la comprovació RPF i, per tant, es filtra. Tot i que uRPF s'utilitza com a mecanisme de filtratge d'entrada, es veu afectat pel reenviament del camí invers.
Els filtres de ruta inversa s'utilitzen normalment per desactivar l'encaminament asimètric quan una aplicació IP té un camí d'encaminament d'entrada i de sortida diferent. La seva intenció és evitar que un paquet que entra en una interfície surti per les altres interfícies. El filtratge de camí invers és una característica del nucli de Linux.

## Referències

* ↑ «Reverse Path Forwarding» (en anglès). Juniper Networks, 2010. [Consulta: 12 maig 2021].
* ↑ «Understanding Basics of Multicast RPF (Reverse Path Forwarding)» (en anglès), 05-03-2013. [Consulta: 18 novembre 2023].
* ↑ «Understanding Unicast Reverse Path Forwarding» (en anglès). Cisco Systems. [Consulta: 12 maig 2021].
* ↑ «rp_filter and LPIC-3 Linux Security» (en anglès). theurbanpenguin.com, 27-08-2020. [Consulta: 12 maig 2021].