Portál AbcLinuxu, 10. května 2025 20:19
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN # 127.0.0.53 is the systemd-resolved stub resolver. # run "systemd-resolve --status" to see details about the actual nameservers. nameserver 127.0.0.53 search abc options edns0 search abc nameserver 172.17.25.101 nameserver 172.17.27.201Všetky tie IP-čky patria tom samému stroju. Teda má DNS server nasmerovaný na seba (kedysi tam bežal DNS server, ale už to neplatí). Navyše je do toho zapletený systemd. Výstup z "systemd-resolve --status" hovorí:
Global DNS Servers: 172.17.25.101 172.17.27.201 DNS Domain: abc ... Link 3 (eth0) Current Scopes: none LLMNR setting: yes MulticastDNS setting: no DNSSEC setting: no DNSSEC supported: noNa inom stroji to vyzerá podobne, ale "systemd-resolve --status" pre konkrétnu sieťovú kartu hovorí:
Link 3 (eno2) Current Scopes: DNS LLMNR setting: yes MulticastDNS setting: no DNSSEC setting: no DNSSEC supported: no DNS Servers: 8.8.8.8 8.8.4.4Súbor /etc/network/interfaces obsahuje:
auto lo iface lo inet loopbackteda nerobí žiadne nastavenia pre jednotlivé sieťové karty. Navyše na počítači beží proces "/usr/sbin/NetworkManager --no-daemon". Tie počítače sú izolované od iternetu takže 8.8.8.8 nie je dosiahnuteľné. Sú to servery - bez GUI. Mojím cieľom je nasmerovať ich na vlastný DNS server a umožniť, aby tieto stroje vedeli prekladať mená v LAN. Ako to správne(TM) urobiť? Editovať /etc/network/interfaces? Nastavovať cez nmcli? Editovať /etc/systemd/resolved.conf? Niečo iné?
Tak to v systemd vypni a v souboru /etc/resolv.conf si nastav co chceš.
sudo systemctl disable systemd-resolved
sudo systemctl stop systemd-resolved
A v /etc/NetworkManager/NetworkManager.conf si nastav položku dns=default
default: NetworkManager will update /etc/resolv.conf to reflect the nameservers provided by currently active connections.
resolv_conf=/etc/resolv.conf name_servers=127.0.0.1a s tímto se mi generuje /etc/resolv.conf správně (dns server mi běží na localhostu).
petr@HP-Olomouc:~$ uname -a Linux HP-Olomouc 5.8.0-48-generic #54~20.04.1-Ubuntu SMP Sat Mar 20 13:40:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux petr@HP-Olomouc:~$ cat /etc/resolv.conf # Generated by NetworkManager search soban.cz nameserver 192.168.1.1 petr@HP-Olomouc:~$
nmcli conn nmcli conn show "Názov Siete typu ethernet aktívnej na LAN prípojke"
Wired connection 2 0e33075b-8746-471a-a941-6ebf5a34faf3 ethernet eth0 docker0 59a6e06d-01d5-49c8-9d59-ea5b4c396f27 bridge docker0 Wired connection 1 17a62d6c-40f1-3924-adfa-ac724a883a83 ethernet --"Wired connection 1" asi zodpovedá eth1, ktorá je DOWN. Výstup pre "Wired connection 2" (eth0) je v prílohe. O DNS hovorí len:
ipv4.dns: -- ipv4.dns-search: -- ipv4.dns-options: "" ipv4.dns-priority: 0 ipv4.ignore-auto-dns: no+ to isté pre IPv6.
Nejako som si nevšimol že by mi na akomkoľvek stroji dával systemd východzí DNS od Google, a to ani na Ubuntu. Odkiaľ máš tú informáciu?Niekde som to čítal. Aha, napr.: https://isc.sans.edu/forums/diary/Systemd+Could+Fallback+to+Google+DNS/22516/ Nelám nado mnou palicu
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.