저는 최근 기술적으로 오랫동안 저를 괴롭혔던 문제에 직면했습니다. 내 Fedora 32 DNS 구성이 /etc/resolv.conf
알 수 없는 응용 프로그램에 의해 계속 수정됩니다. 수정된 구성은 다음과 같습니다.
[dolphin@MiWiFi-R4CM-srv]~/Documents/GitHub/reddwarf-music% sudo cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.31.1
nameserver 8.8.8.8
nameserver 114.114.114.114
내가 원하는 dnsconf는 다음과 같습니다.
nameserver 8.8.8.8
난 그냥 8.8.8.8
DNS를 원해요. 수정하면 /etc/resolv.conf
잘못된 구성이 됩니다. DNS 구성을 제어하려면 어떻게 해야 합니까?
답변1
이걸 쓰다/etc/NetworkManager/NetworkManager.conf
[main]
dns=none
/etc/resolv.conf
NetworkManager가 자체적으로 관리되지 않는 항목과 알고 있는 프로그램( unbound
, dnsmasq
및 systemd-resolved
) 으로 표시했기 때문에 변경되지 않은 상태 로 유지됩니다 . 에서 man NetworkManager.conf
다음 섹션Main
및 키dns
none: NetworkManager will not modify resolv.conf. This implies rc-manager unmanaged
또는 원하는 DNS 서버로 설정 systemd-resolved
하고 편집 할 수 있습니다./etc/systemd/resolved.conf
[Resolve]
DNS=192.162.0.1, 9.9.9.9 # Whatever DNS server IP addresses you want, comma separated.
FallbackDNS=8.8.8.8, 1.1.1.1 # Same as above.
systemd-resolved.service
나중에 활성화하는 것을 잊지 마세요 .
답변2
진짜 답은 chattr
예, NetworkManager가 이 파일을 변경하지 못하도록 방지할 수 있습니다. 하지만 다른 애플리케이션이나 프로세스는 어떻습니까? 파일이 변경되는 것을 방지합니다.
chattr +i file
파일을 다시 변경할 수 있도록 허용:
chattr -i file
답변3
dhcpcd.conf
매뉴얼 페이지 에 따르면 ,
nohook script
Don't run this hook script. Matches full name, or prefixed with 2 numbers optionally ending with .sh.
So to stop dhcpcd from touching your DNS settings or starting wpa_supplicant you would do:-
nohook resolv.conf, wpa_supplicant
그래서 당신의 것에 추가합니다 dhcpcd.conf
(내 것이 위치합니다 /etc/dhcpcd.conf
) :
nohook resolv.conf
dhcpcd
또는 will을 사용하여 실행하면 -C
동일한 작업이 수행되지만 일시적으로만 수행됩니다.
dhcpcd -C resolv.conf eth0