Portál AbcLinuxu, 10. května 2025 07:03
cat /proc/sys/net/ipv4/conf/default/rp_filter ukazuje 1takisto aj každý interface ukazuje 1, ale:
cat /proc/sys/net/ipv4/conf/all/rp_filter ukazuje 0Niektoré návody čo som čítal ale doporučujú v sysctl.conf nastaviť 1 pre rp_filter jak pre default, tak aj pre all. Je to teda fakt potrebné? O čom je vlastne to "all"? Vopred vám veľmi pekne dakujem za objasnenie.
Záleží na tom, čeho přesně chcete docílit. Hodnota "default
" se použije pro nově přidaná rozhraní. Pro pakety přicházející na určité rozhraní se pak použije maximum z "all
" a hodnoty toho rozhraní.
Osobně RP filter považuji za historický omyl, který ve většině případů ničemu nepomáhá a občas navíc i škodí.
Záleží na tom, čeho přesně chcete docílit.Proste aby to fungovalo hned po štarte OS
Pro pakety přicházející na určité rozhraní se pak použije maximum z "all" a hodnoty toho rozhraní.No a toto voľajako nechápem - dá sa to rozviesť obšírnejšie?
Osobně RP filter považuji za historický omylDalo by sa aj toto rozviesť? Dakujem velmi pekne za ochotu.
Proste aby to fungovalo hned po štarte OS
To ale záleží na tom, co má být to "to".
No a toto voľajako nechápem - dá sa to rozviesť obšírnejšie?
Když přijde paket např. na eth0
, aplikuje se vyšší z hodnot
/proc/sys/net/ipv4/conf/all/rp_filter /proc/sys/net/ipv4/conf/eth0/rp_filter
Dalo by sa aj toto rozviesť?
Tu trochu užitku, co RP filter může poskytknout, snadno obstará netfilter, u kterého máte lepší možnosti konfigurovace, jak se má přesně chovat. A jakmile máte jakoukoli konfiguraci, kde mohou pakety legitimně přicházet na jiné rozhraní, než přes které byste poslal odpověď, RP filter je potřeba vypnout. Problém je v tom, že není vždy na první pohled vidět, že takovou konfiguraci máte. Druhý problém je v tom, že si nemusíte být ani vědom toho, že ho máte zapnutý, protože to tak má distribuce jako default.
A jakmile máte jakoukoli konfiguraci, kde mohou pakety legitimně přicházet na jiné rozhraní, než přes které byste poslal odpověď, RP filter je potřeba vypnout.No to mi bolo od začiatku jasné načo to je a kedy to treba vypnúť.
Druhý problém je v tom, že si nemusíte být ani vědom toho, že ho máte zapnutý, protože to tak má distribuce jako default.No neviem, ale admin ktorý chce robiť práve to čo rp_filter blokuje by mal byť natoľko schopný, že bude nato myslieť. Cize ak mám:
/proc/sys/net/ipv4/conf/all/rp_filter = 0 /proc/sys/net/ipv4/conf/eth0/rp_filter = 1Tak ak to správne chápem, tak rp_filter je zapnutý? Ešte raz, vrelá vdaka za pomoc.
Jen pro pakety přicházející na eth0
.
No to mi bolo od začiatku jasné načo to je a kedy to treba vypnúť.
Ono to právě mnohdy není na první pohled jasné.
Jen pro pakety přicházející na eth0.To bol len príklad. Reálne mám na dotyčnom serveri tieto rozhrania: eth0, eth1, lo, tun0. A pre všetky tieto rozhrania + default mám rp_filter=1 len v all je 0. Takže posledný krát len na utvrdenie a už dám pokoj - rp_filter je zapnutý? Chápem to správne, že kedže v interface je 1 čo je väčšie ako 0 v all, tak platí tá jednička pre interface? Dakujem.
Reálne mám na dotyčnom serveri tieto rozhrania: eth0, eth1, lo, tun0. A pre všetky tieto rozhrania + default mám rp_filter=1 len v all je 0. Takže posledný krát len na utvrdenie a už dám pokoj - rp_filter je zapnutý?
Pro ta rozhraní, kde jste ho zapnul.
Chápem to správne, že kedže v interface je 1 čo je väčšie ako 0 v all, tak platí tá jednička pre interface?
Ano. To je tak nějak podstata termínu maximum. Na druhou stranu, kdybyste měl u rozhraní jedničku (strict) a v "all" dvojku (loose) - nebo naopak - platila by dvojka (loose).
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.