Jé Jirsák si nedokáže představit život bez systemd-* věcí .
Lžete.
Vy tvrdíte, že nelze získat DNS servery bez systemd-resolv? Opravdu?
Ne, nic takového netvrdím, to jste si vymyslel.
Své jsem řekl, je to funkční
Ne, není to funkční. Vy totiž vůbec netušíte, jak v linuxu věci kolem sítí fungují.
Prozradím vám takový malý detail.
dnsmasq nepoužívá žádnou magii, žádnou křišťálovou kouli k tomu, aby zjistil, jaký DNS serverů se má dotazovat. Používá k tomu standardní konfigurační soubor
/etc/resolv.conf (stejně jako
systemd-resolved), případně je možné to změnit v konfiguraci
dnsmasq nebo při startu z příkazové řádky. Takže pokud má
dnsmasq (nebo
systemd-resolved) používat jako upstream DNS servery inzerované DHCP serverem, musí se někdo postarat o to, aby se o nich
dnsmasq (nebo
systemd-resolved) dozvěděl. A tohle je právě ta část, která kamenovi nefunguje! Takže těch resolverů si tam může nainstalovat třeba 300, ale fungovat nebude žádný.
DHCP klient standardně zapíše získané DNS servery do
/etc/resolv.conf. S tím dnsmasq dobře funguje, pokud běží jako DNS resolver pro síť a poskytuje své služby jiným počítačům v síti. Pokud ale chcete, aby se používal i pro překlad na lokálním počítači (jako to bylo v Ubuntu 16.04), a navíc chcete, aby ho používaly i programy, které nepoužívají libc nebo NSS a čtou přímo
/etc/resol.conf, musíte dát do
/etc/resolv.conf adresu toho lokálního dnsmasq, tedy např.
127.0.0.1.
No, a tady vzniká jistý konflikt, protože nemůžete mít v /etc/resol.conf zároveň jen adresy upstream DNS resolverů, a zároveň tam mít jen lokální dnsmasq. Řešení je poměrně jednoduché – ty adresy se dnsmasq předají jiným způsobem, než přes
/etc/resolv.conf, a naopak se mu řekne, že má tenhle soubor ignorovat. No, a o tohle předání se zase musí postarat nějaký software – a v Ubuntu 18.04 je to řekl bych
netplan. A když ten není schopen poskytnout dalším programům adresy DNS serverů z upstreamu, tak nebude tyhle servery používat žádný resolver.
Pravdu vždycky mít nemusím, ale vy evidentně nevíte o tom, jak funguje překlad DNS v linuxu, vůbec nic, takže není tak těžké vědět toho o něco víc.
Stejně jako předtím
Takže taky nevíte, jak to funguje, jenom plácáte nesmysly. Tak to vysvětlení výše je i pro vás.