Ujasnění pojmu "sada iptables pravidel":
netfilter2/IPtables má tyto dimenze, navzájem cca kolmé:
1) chainy: zabudované PREROUTING / FORWARD / POSTROUTING / INPUT / OUTPUT
2) tables: defaultní zvaná tuším "filter", dále "nat" a ještě navrch "mangle"
3) a volitelně ještě "policy routing tables", které se věší na "značkování paketů": target "iptables -j MARK --set-mark <číslo>", a následně navazuje "ip rule add fwmark <číslo> table <moje.tabule>" do které se pak naházejí nějaké routy pomocí "ip route add ... table <moje.tabule>" . Tenhle mechanismus se dá použít např. na source routing nebo obecně "výhybku do jedné z několika alternativních routovacích tabulek".
Toto všechno se odehrává v rámci jednoho network namespace.
Když si vytvoříte více network namespaces, patrně toto všechno můžete mít N-krát :-) v nezávislých instancích.
Jestli se namespace dědí na potomky procesu, který jste do konkrétního namespace explicitně poslal, to je dobrá otázka.
Nemám čas to teď zkoumat, ale navrhuji jednoduchý test: zkuste něco pustit uvnitř network namespace napřed explicitně, a následně to zabalte do shellového skriptu, a dejte network namespace tomu obalu.
Viz též:
jak vypsat procesy, které žijí v konkrétním namespacePokud správně chápu
tuto zmínku, tak se network namespace nedědí? V tom případě by mě zajímalo, jak to svému dítěti předá "ip netns exec" :-)
Téma šířeji souvisí s Control Groups - těch různých
izolovaných namespaces je více druhů, network namespace je pouze jedním z nich.