DNS 서버를 변경하는 방법은 무엇입니까?

DNS 서버를 변경하는 방법은 무엇입니까?

USB 케이블을 통해 휴대폰의 인터넷을 컴퓨터에 연결하여 다음을 사용합니다 /etc/resolv.conf.

# Generated by NetworkManager
nameserver 192.168.114.150

내 생각 192.168.114.150엔 그냥 내 휴대폰을 가리키는 것 같아요. NM이 이 파일을 덮어쓴 경우 이를 기본 DNS 서버로 어떻게 변경합니까?

답변1

물론 NetworkManager에게 /etc/resolv.conf를 작성하지 말고 직접 작성하도록 지시할 수 있습니다.

그러나 일반적으로 DNS 서버는 연결된 네트워크에 따라 달라지며 고정적이지 않습니다. 이것이 바로 NetworkManager에서 연결 프로필(즉, 네트워크 설정)의 일부로 DNS 설정을 구성해야 하는 이유입니다.

예를 들어 nmcli connection show모든 프로필을 나열합니다. 그들 중 하나의 세부 사항을 확인하십시오 nmcli connection show "$PROFILE". man nm-settings필드의 의미를 확인하세요 . 정적 DNS 서버 구성 설정

  nmcli connection modify "$PROFILE" ipv4.dns 8.8.8.8 ipv4.ignore-auto-dns yes

그런 다음 재활성화 프로필을 사용하십시오 nmcli connection up "$PROFILE".

답변2

다음 방법은Red Hat 문서에서, 데비안에서도 작동합니다. systemd와 NetworkManager를 사용하는 Arch Linux의 경우 동일하거나 유사하게 작동할 수 있습니다.

루트 사용자로 텍스트 편집기를 사용하여 다음 내용으로 /etc/NetworkManager/conf.d/90-dns-none.conf 파일을 생성합니다.

[main]
dns=none

NetworkManager 서비스를 다시 로드합니다.

# systemctl reload NetworkManager

노트

NetworkManager는 서비스를 다시 로드한 후 더 이상 /etc/resolv.conf 파일을 업데이트하지 않습니다. 그러나 파일의 마지막 내용은 보존됩니다.

또는 혼동을 피하기 위해 /etc/resolv.conf에서 NetworkManager가 생성한 주석을 제거하십시오.

지금 편집할 수 /etc/resolv.conf있으며 NetworkManager가 덮어쓰지 않습니다.

편집: 누군가 편집을 제안했지만 문서 페이지에서 직접 인용하고 있으므로 인용을 편집할 필요가 없습니다. 나는 그들의 의견을 여기에 남깁니다.

그렇지 않은 경우 rc-manager=unamanagedNM은 맹목적으로 명령(dns=none, no dns)을 따라 resolv.conf를 빈 파일에 다시 작성합니다.

관련 정보