Debian 11, resolv.conf는 네임서버 설정을 영구적으로 저장하지 않습니다.

Debian 11, resolv.conf는 네임서버 설정을 영구적으로 저장하지 않습니다.

Debian 11, 인터넷 연결을 사용할 수 없고 ping이 도메인 이름을 확인하지 못하는 문제가 있습니다. 이 /etc/resolv.conf파일은 NetworkManager에 의해 지속적으로 덮어쓰기되며 다시 시작한 후에는 다음을 포함합니다.

# Generated by NetworkManager
nameserver ::1 

resolv.conf항목을 추가하여 파일을 편집합니다 .

# Generated by NetworkManager
nameserver 8.8.8.8 

그러나 이 변경 사항은 지속되지 않으며 다시 시작하면 사라집니다. 과거에는 이 문제가 발생하지 않았으며 VPN 및 TOR 브라우저를 사용한 후에 발생한다고 생각합니다. 이 문제를 어떻게 해결하나요?

resolvconf편집: 도구를 설치하고 재부팅했지만 변경 사항이 없습니다.

~$ cat /etc/resolv.conf
# 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 "resolvectl status" to see details about the actual nameservers.

nameserver ::1

~$ resolvectl status
Failed to get global data: Unit dbus-org.freedesktop.resolve1.service not found.

편집 2: 두 개의 활성 네트워크 연결이 있습니다. 하나는 라우터이고 두 번째는 VPN 서비스에서 나온 것 같습니다.

~$ nmcli c show TRENDnet752 | grep -i -e name_servers -e dns
connection.mdns:                        -1 (default)
ipv4.dns:                               8.8.8.8
ipv4.dns-search:                        --
ipv4.dns-options:                       --
ipv4.dns-priority:                      0
ipv4.ignore-auto-dns:                   yes
ipv6.dns:                               --
ipv6.dns-search:                        --
ipv6.dns-options:                       --
ipv6.dns-priority:                      0
ipv6.ignore-auto-dns:                   no
IP4.DNS[1]:                             8.8.8.8
~$ nmcli c show pvpn-ipv6leak-protection | grep -i -e name_servers -e dns
connection.mdns:                        -1 (default)
ipv4.dns:                               --
ipv4.dns-search:                        --
ipv4.dns-options:                       --
ipv4.dns-priority:                      0
ipv4.ignore-auto-dns:                   no
ipv6.dns:                               ::1
ipv6.dns-search:                        --
ipv6.dns-options:                       --
ipv6.dns-priority:                      -1400
ipv6.ignore-auto-dns:                   yes
IP6.DNS[1]:                             ::1

편집 3. 다음 단계를 사용하여 문제를 해결했습니다.

sudo systemctl status resolvconf.service
(“Active: active (exited)” message)

Opened the head file:
sudo nano /etc/resolvconf/resolv.conf.d/head

Entered nameservers and saved:

nameserver 8.8.8.8
nameserver 8.8.4.4

Then updated resolv.conf to use the new nameservers:

sudo resolvconf --enable-updates
sudo resolvconf -u

답변1

모든 DNS 구성 정보는 분명히 NetworkManager에서 제공되므로 다음 단계는 NetworkManager 설정을 조사하는 것입니다.

먼저 nmcli c( c"connection/s"의 약어)를 사용하여 구성된 연결 목록을 봅니다. 컬러 터미널이 있는 경우 활성 연결이 녹색으로 나타납니다. 활성 연결의 이름을 기록해 두십시오.

그런 다음 각 활성 연결에 대해 다음을 실행합니다.

nmcli c show <connection name here> | grep -i -e name_servers -e dns

<connection name here>활성 연결의 이름으로 바꿉니다 (활성 연결이 여러 개인 경우 한 번에 하나씩). 각 연결과 관련된 모든 DNS 관련 설정이 표시됩니다. 거기에 표시 되어야합니다 ::1. 소문자 이름이 있는 설정은 NetworkManager 구성에서 가져와야 하며, 대문자 이름이 있는 설정은 DHCP 또는 기타 자동 구성 메커니즘(예: IPv6 라우터 권고 패킷에 대한 선택적 추가의 DNS 확인자 정보)을 통해 생성되어야 합니다.

값이 있는 NetworkManager DNS 설정의 정확한 이름을 알면 ::1해당 설정이 실제로 어디에서 왔는지 파악하는 데 도움이 됩니다.

Debian에서 NetworkManager는 세 곳에서 로컬 구성을 얻을 수 있습니다.

  • 클래식 데비안에서는 읽기 전용/etc/network/interfaces
  • 파일에서/etc/NetworkManager/system-connections
  • 사용자별 설정에 따른 데스크탑 환경별 저장 방법.

자동 구성 메커니즘에 의해 지정 되는 경우 ::1(예를 들어 다음과 같은 줄을 찾으면 IP6.DNS[1]: ::1) 다음을 사용하여 이를 재정의할 수 있습니다.

nmcli c modify <connection name here> ipv6.ignore-auto-dns yes

이렇게 하면 이 연결에서 DHCPv6 및 라우터 권고 기반 IPv6 DNS 확인자 자동 구성이 비활성화됩니다. 그런 다음 다음 명령을 사용하여 원하는 DNS 서버를 구성할 수 있습니다.

nmcli c modify <connection name here> +ipv4.dns 8.8.8.8

그리고/또는

nmcli c modify <connection name here> +ipv6.dns 2001:4860:4860::8888

또는 기존 방식을 사용하여 NetworkManager를 DNS 확인 설정에서 완전히 멀리하려는 경우 다음 /etc/NetworkManager/conf.d/DontTouchDNSResolution.conf이름의 파일을 추가할 수 있습니다.

[main]
dns=none
systemd-resolved=false

/etc/resolv.conf그런 다음 수동으로 구성 할 수 있습니다(반드시 구성해야 합니다) .

답변2

Debian 11에서 ProtonVPN 클라이언트를 사용한 후 위의 문제가 발생했습니다. 문제는 재부팅 후에도 /etc/NetworkManager/system-connections/파일이 pvpn-ipv6leak-protection.nmconnection여전히 남아 있다는 것입니다. 이 파일을 삭제하고 네트워크를 다시 시작하면 문제가 해결되었습니다.

클라이언트에 대한 VPN 연결을 열고 인터페이스에서 VPN 터널의 연결을 명시적으로 끊지 않고 클라이언트를 닫은 다음 호스트를 재부팅하여 문제를 재현할 수 있었습니다.

관련 정보