비영구적인 방식으로 DNS 서버 변경(명령줄에서)

비영구적인 방식으로 DNS 서버 변경(명령줄에서)

디스크에서 아무것도 변경하지 않고 명령줄에서 DNS 서버를 변경할 수 있는 방법이 있습니까?

최근에 복구 세션으로 부팅했는데 IP 주소(DHCP 사용)는 받았지만 DNS 서버는 없습니다. 내 네트워크 구성은 일반적으로 nm-applet데스크톱 세션이 아닌 데스크톱 세션 에서 수행되므로 /etc/network/interfaces이 복구 세션에만 DNS 서버를 제공하고 디스크에 아무것도 쓰지 않을 수 있기를 원합니다.

이는 일반적으로 편집을 통해 가능합니다 /run/resolvconf/resolv.conf. 하지만 resolvconf우분투 14.04 복구 세션에서는 실행되지 않는 것 같습니다.

파일을 편집하지 않고도 인터페이스를 구성할 수 있는 네트워크 구성과 비슷한 것이 있기를 바랐습니다.

# ifconfig eth0 192.168.2.5 netmask 255.255.255.0
# route add default gw 192.168.2.1

우분투 14.04의 복구 세션에서 DNS에 대해 이 작업을 수행할 수 있는 방법이 있습니까?

답변1

나는 이것을 할 수 있는 방법을 찾았습니다:

DNS 서비스를 종료합니다. (더 미묘한 방법이 있을까요?)

# killall dnsmasq

원하는 업스트림 서버를 사용하여 서비스를 다시 시작하십시오.

# dnsmasq --server=192.168.2.1

최신 우분투( 가 있는 우분투 systemd)에서는 다음과 같습니다:

# systemd-resolve -i enp0s31f6 --set-dns=192.168.2.1  # --set-dnssec=true

다음을 통해 확인하세요:

# systemd-resolve --status

답변2

이 디렉토리로 이동하여 /etc/resolvconf/resolv.conf.d su 권한으로 vi 또는 vim을 사용하여 헤드 파일을 편집하십시오.

sudo vi /etc/resolvconf/resolv.conf.d/head

파일에 다음 줄을 추가하십시오

nameserver *DNS server IP*

파일을 저장하고 resolvconf 유틸리티를 사용하여 다음 명령으로 입력한 정적 DNS 서버 주소를 설정합니다.

sudo resolvconf -u

답변3

이 작업을 수행하기 위해 내 PC에서 핑을 통해 얻은 IP 주소를 파일 au.archive.ubuntu.com에 추가했습니다 ./etc/hosts

그런 다음 apt update해결되었습니다.

관련 정보