VPN sagovornik pinga ostala sučelja zato što su lokalna
Lokalna tabela ruta šalje pakete na svaku adresu koju host ima, bez obzira na kojem se sučelju nalazi. Postavke prosljeđivanja nikada ne ulaze na taj put.
WireGuard klijent se spoji i pinga adresu na posve drugom sučelju, i odgovor stigne. Snimke pokazuju zahtjev samo na tunelu. Ništa nije pokvareno, a pažljivo isključena postavka prosljeđivanja nema s tim nikakve veze. Ovo je usporedba dvaju putova koji na dijagramu izgledaju slično, a u jezgri su posve različiti.
Jedan put prosljeđuje pakete za nekoga drugog; drugi ih dostavlja samom hostu.
Paket adresiran na host ostaje u hostu
Udaljeni klijent šalje IP paket na adresu koju host ima. Rutiranje postavlja jedno pitanje o tom paketu: je li to odredište lokalno? Svaka adresa koju host drži pojavljuje se u lokalnoj tabeli ruta, i ta se tabela gleda prije glavne, pa paket ide u vlastiti stog hosta umjesto da izađe kroz drugo sučelje. Odgovor se stvara lokalno i vraća se kroz tunel jer je upit došao odatle.
To je cijeli mehanizam. Nikakvo prosljeđivanje se ne zbiva, nikakva promjena stanja sučelja nije uključena, a dotična adresa ne mora biti dostupna ni odakle drugdje.
Zašto se ip_forward ne primjenjuje
Prosljeđivanje upravlja paketima koji moraju izaći kroz drugo sučelje od onoga na koje su stigli. Ping prema samom hostu nikada ne ide tim putem: paket se troši lokalno i odgovor se stvara lokalno. Zato postavljanje net.ipv4.ip_forward=0 ovdje ništa ne mijenja, a pravilo u lancu prosljeđivanja nikada ne vidi taj promet. Ispravna kontrola je na ulaznom putu, ograničena dolaznim sučeljem ili izvorom.
Zato isključivanje prosljeđivanja i pretpostavka da je host izoliran stvaraju lažan osjećaj sigurnosti.
Pročitajte lokalnu tabelu koja je odlučila
ip rule show obično prijavljuje pravilo s prioritetom nula koje sve pretrage prvo šalje u lokalnu tabelu, a ip route show table local navodi vlastite adrese hosta s lokalnim opsegom. Ta tabela uključuje adrese na sučeljima koja su administrativno isključena ali još konfigurirana. IPv4 adrese dodijeljene statički obično prežive prekid veze, i tako ping prema isključenom mostu može ipak uspjeti i iznenaditi operatera.
IPv6 se razlikuje upravo u ovoj točki. Njegove se adrese obično povlače kad veza padne, osim ako je postavljen keep_addr_on_down. Usporedite obitelji umjesto da pretpostavite da jedno pravilo pokriva oboje.
Što sagovornik zapravo dosegne
Odgovor s vlastite adrese usmjerivača na segmentu ne govori ništa o strojevima iza tog segmenta. Sagovornik ne može doći do hosta iza drugog sučelja ovim putem; dosegne samo adrese koje sam usmjerivač ima. Testiranje usluge na zasebnom LAN hostu, umjesto pinganja adrese usmjerivača, ono je što utvrđuje je li prosljeđivanje uopće dopušteno.
Ograničavanje sagovornika na usluge vezane na adresi tunela pitanje je ulazne politike. Dopustite željenu uslugu na sučelju tunela i ograničite izvore koji je smiju koristiti, jer paket zaista stigne tamo.
Provjerite i adrese koje ste namjeravali ukinuti. Uklanjanje adrese sa sučelja pouzdanije je od slaganja firewall pravila na zastarjelu adresu.