====== Antispoof vs Verrevpath ====== IPFW(8) udostępnia dwa mechanizmy filtrowania spoofowanego ruchu: * antispoof * verrevpath ===== antispoof ====== Dla każdego przychodzącego pakietu, sprawdzany jest SRC_IP czy należy do jakiejkolwiek sieci podłączonej bezpośrednio do systemu (czyli skonfigurowanej na karcie sieciowej). Jeśli tak, następuje weryfikacja, czy ów pakiet ma prawidłowy kierunek. Jeśli //interfejs przychodzący pakietu// pokrywa się z //interfejsem bezpośrednio podpiętym do sieci//, wtedy warunek zostaje spełniony. Poniższy obrazek ilustruje przykład przyjętego pakietu (zielony) oraz odrzuconego (czerwony): {{ :ipfw:antispoof.svg }} * pierwszy pakiet z SRC_IP = 192.168.1.1 pokrywa się z siecią na interfejsie em1 ale przychodzi na interjs em0, dlatego warunek nie jest spełniony - pakiet zostaje odrzucony * drugi pakiet z SRC_IP = 192.168.2.1 nie należy do żadnej sieci bezpośrednio przypiętej do systemu, dlatego dalsze sprawdzanie nie jest wykonywane - pakiet zostaje przyjęty Przykładowa reguła IPFW(8) realizująca antispoof powinna być dodana przed innymi regułami filtrującymi. Przykład: ipfw add deny ip from any to any not antispoof in Spowoduje przetwarzanie sprawdzania pakietów przychodzących na wszystkich interfejsach. \\ **Uwaga:** antispoof jest sprawdzany tylko dla pakietów przychodzących :!: ===== verrevpath ====== Dla każdego przychodzącego pakietu, odczytywany jest SRC_IP i sprawdzany jego kierunek zgodnie z tablicą routingu. Jeśli pakiet przyjdzie na interfejs, który służy do osiągnięcia celu sieci z której pochodzi pakiet, warunek jest spełniony. Przykład: {{ :ipfw:verrevpath.svg }} * pierwszy pakiet z SRC_IP = 192.168.1.1 przychodzi na interfejs em0 ale sieć z jakiej pochodzi pakiet osiągalna jest przez interfejs em1 (jako bezpośrednio podłączona). Warunek nie jest spełniony - pakiet zostaje odrzucony * drugi pakiet z SRC_IP = 192.168.2.1 przychodzi na interfejs em0 ale sieć z jakiej pochodzi pakiet, osiąganla jest przez interfejs em1 (wpis w tablicy routingu). Warunek ponownie nie jest spełniony - pakiet zostaje odrzucony Przykładowa reguła IPFW(8) realizująca verrevpath powinna być dodana przed innymi regułami filtrującymi. Przykład: ipfw add deny ip from any to any not verrevpath in Spowoduje przetwarzanie sprawdzania pakietów przychodzących na wszystkich interfejsach. \\ **Uwaga:** verrevpath jest sprawdzany tylko dla pakietów przychodzących :!: \\ \\ Mechanizm ten jest opisany w sieci jako [[http://en.wikipedia.org/wiki/Reverse_path_forwarding|Reverse Path Forwarding]]