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