어떤 DNS 서버를 사용하고 있습니까? 수 있습니까? 네트워크 관리자를

Linux에서 사용중인 DNS 서버를 어떻게 확인할 수 있습니까? 네트워크 관리자를 사용하고 있으며 대학의 LAN에 유선으로 연결되어 있습니다. (도메인이 해결되지 않는 이유를 찾으려고합니다)



답변

다음과 같은 합리적인 정보를 얻을 수 있어야합니다.

$ cat /etc/resolv.conf

답변

내가하는 방법은 다음과 같습니다.

nmcli dev show | grep DNS

이것은 이전의 일을 위의 방식 :

nm-tool | grep DNS

답변

DNS를 쿼리 할 수 ​​있다고 생각하며 어떤 서버가 결과를 반환했는지 보여줍니다. 이 시도:

dig yourserver.somedomain.xyz

응답은 결과를 반환 한 서버를 알려줍니다. 관심있는 결과는 다음과 같습니다.

;; Query time: 91 msec
;; SERVER: 172.xxx.xxx.xxx#53(172.xxx.xxx.xxx)
;; WHEN: Tue Apr 02 09:03:41 EDT 2019
;; MSG SIZE  rcvd: 207

다음 dig을 사용하여 특정 DNS 서버를 쿼리하도록 지시 할 수도 있습니다dig @server_ip


답변

그냥하세요 nslookup. 결과 중 일부에는 사용중인 서버가 포함됩니다.

아래 예에서는 사용 된 DNS 서버가 8.8.8.8임을 보여줍니다.

$ nslookup google.com
Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
Name:   google.com
Address: 172.217.22.174

답변

systemd 사용을 실행하는 시스템에서 :

systemd-resolve --status

답변

새로운 network-manager명령 nmcli으로 다음을 수행하십시오.

nmcli --fields ipv4.dns,ipv6.dns con show <connection_name>

최신 버전의 네트워크 관리자 (예 : Ubuntu 16.04)에서는 필드 이름이 약간 다릅니다.

nmcli --fields ip4.dns,ip6.dns con show <connection_name>

연결 이름을 모르면 다음을 사용하십시오.

nmcli -t --fields NAME con show --active

예를 들면 다음과 같습니다.

$ nmcli --fields ip4.dns,ip6.dns con show 'Wired connection 1'
IP4.DNS[1]:                             172.21.0.13
IP4.DNS[2]:                             172.21.0.4

답변

첫 번째 DNS 서버를 얻으려면 (IP 전용) :

cat /etc/resolv.conf |grep -i '^nameserver'|head -n1|cut -d ' ' -f2
  • cat DNS 설정을 출력합니다
  • grep 네임 서버 만 필터링
  • head 첫 번째 행 / 인스턴스 만 유지합니다
  • cut 행의 IP 부분을 가져옵니다 ( ”를 구분 기호로 사용하여 두 번째 열)

환경 변수에 DNS ip를 넣으려면 다음과 같이 사용할 수 있습니다.

export THEDNSSERVER=$(cat /etc/resolv.conf |grep -i '^nameserver'|head -n1|cut -d ' ' -f2)