Fedora: zakaz IPv6 na bridgi?
Pavel Kankovsky
peak na argo.troja.mff.cuni.cz
Úterý Březen 29 21:50:22 CEST 2016
On Tue, 29 Mar 2016, Jan Kasprzak wrote:
> Jak ve Fedore se statickou konfiguraci site zakazat aktivaci IPv6
> na urcitem rozhrani (konkretne bridge)? Mam takovouto situaci:
> [...]
> Jde tohle nejak udelat jen pomoci staticke konfigurace v network-scripts,
> aniz bych se uchylil ke kompletnimu zakazu IPv6, pripadne k nejakym bastlum
> typ ex-post spusteni
>
> # echo 1 > net.ipv6.conf.brXY.disable_ipv6
>
> coz ale je mozne az pote, co se nainicializuje sit a brXY zacne existovat,
> cili to nejde dat do /etc/sysctl.conf.
Koukám na CentOS 7, ale hádám, že v dostatečně nové Fedoře to bude
podobně.
Zajímavé je, že v /etc/sysconfig/network-scripts/ifup je už od dávnějších
dob nastavení sysctl podle sysctl.conf pro nově vzniklý interfejs... ale
pouze v případě, že je to vlanový interfejs... Tak to není v dané situaci
zrovna moc k užitku...
Ale pak mne napadlo se podívat do nastavení udevu a v souboru
/lib/udev/rules.d/99-systemd.rules jsem našel pravidlo, které to
dělá pro všechny interfejsy, kdykoli se objeví (kromě lo):
# Apply sysctl variables to network devices (and only to those) as they appear.
ACTION=="add", SUBSYSTEM=="net", KERNEL!="lo", RUN+="/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/$name --prefix=/net/ipv4/neigh/$name --prefix=/net/ipv6/conf/$name --prefix=/net/ipv6/neigh/$name"
Zdá se mi tedy, že by napsání něčeho jako
net.ipv6.conf.brXY.disable_ipv6 = 0
do /etc/sysctl.conf (nebo /etc/sysctl.d/cokoli) mělo fungovat, protože se
to aplikuje i dodatečně právě přes výše zmíněné udev-ové pravidlo.
(Akorát by mohli odklidit to nastavování pro vlanové interfejsy v ifup,
které už je zjevně nadbytečné.)
Alternativní možnost je vyrobit ten bridž přes libvirt, který asi na
něm IPv6 zakáže sám od sebe.
--
Pavel Kankovsky aka Peak "Que sais-je?"
Další informace o konferenci Linux