jjrsk:
Odpověď jsem pročetl, promyslel a zkonfrontoval se svým nastavením. Zabývám se částí  kdy pakety příchozí na  wan  mají dst  je v interní síti (a ne src).
.a nesedí mi tam tvoje odpověď vše co má interní rozsah zahodit -- Pokud si dám pravidlo DROP na -d 192.168.1.0/24, tak defacto odříznu internet. Pokud dám -d 10.0.0.45 (adresa na routeru na wanu), toto pravidlo je tam uplně hluché(souzeno dle counterů )
On totiž conntrack v PREROUTING  vrátí zpět natované adresy, takže  už FORWARD u (všech spojení?) vidí interní adresy , ačkoli MASQUERADEP/SNAT je definován v POSTROUTING. (A drop nejde dát do prerouting, a do mangle se to taky nedává)
reálný výpis: (iptables -nvL FORWARD - výtah)
26  1560 DROP       all  --  *      *     85.207.103.194
 192.168.1.7
    0     0 DROP       all  --  *      *       85.207.103.194 10.1.0.42
Nebo jsem něco přehlédl? (pokud to nebude conntracku známé spojení, přepis se nekoná, ale stejně si takto odříznu kontektivitu) Simuloval jsem to spojením iniciovaným ze své sítě(klasicky curl 85....). Je možné, že pokud by mi 85.207... a záleží asi zase na pořadí pravidel...
řeší to tedy?
A FORWARD -d 192.168.1.0/24 -i waneth0 -o lan1 -m conntrack --ctstate  !RELATED,!ESTABLISHED -j DROP (opět negované, za předpokladu P ACCEPT . Je to už správně?
Neřeším teď pakety co mají src interní rozsah (což to taky nechces),  a navíc to řeší rp_filter. (akorát by mě zajímalo, jestli když mám k rp_filtru i odpovíjící pravidlo DROP v FORWARD, co účinkuje dřív: zda)
Možná jsem to nepředvedl, ale router(čistý linux) mám nastaven bezpečně, ale je to tím, že mám -P FORWARD DROP,  takže pravidla diskutovaná nejsou 1:1, mají jiné pořadí, záměna ACCEPT-DROP, nevidím celý obrázek, všechna pravidla . Tady se diskutuje jen minimální příklad - jak zablokovat spojení s adresou obashující vnitřní síť na WAN. Ale s policy ACCEPT se to dá přepsat na komfortní ctstate ESTABLISHED -jACCEPT