修復 resolv.conf 並將 comcast 從我的名稱伺服器清單中刪除嗎?

修復 resolv.conf 並將 comcast 從我的名稱伺服器清單中刪除嗎?

我對如何解決這個問題甚至它是如何形成的感到困惑。 90% 的時間我透過家庭路由器連接到互聯網,而 comcast 根本沒有在設定中列出。它有自己的 DNS,一切都很好,直到更新到 Ubuntu 18,現在當我進行 nslookup 時,我的本機電腦都無法解析(全部找不到)。

nslookup data1
Server:     127.0.0.53
Address:    127.0.0.53#53

** server can't find data1: SERVFAIL

nslookup data1 192.168.1.1
Server:     192.168.1.1
Address:    192.168.1.1#53

Name:   data1
Address: 192.168.1.113

這是 ifconfig 的結果,顯示我的最後一個介面是我的 wifi 並且已連接到正確的網路:

enp2s0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 28:f1:0e:4a:a4:b2  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 220635  bytes 104082409 (104.0 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 220635  bytes 104082409 (104.0 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.101  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::686f:cec4:768c:d810  prefixlen 64  scopeid 0x20<link>
        ether b0:c0:90:50:8e:20  txqueuelen 1000  (Ethernet)
        RX packets 9169680  bytes 6584220987 (6.5 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 10685113  bytes 13298441288 (13.2 GB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

這是我的 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 "systemd-resolve --status" to see details about the actual nameservers.

nameserver 127.0.0.53
search wp.comcast.net

以下是 systemd-resolve --status 的輸出,顯示 GLOBAL 部分中存在大量垃圾,並顯示位於 192.168.1.1 的路由器上的 DNS,但根據上面顯示的查找,這似乎被忽略了。

Global
          DNS Domain: wp.comcast.net
          DNSSEC NTA: 10.in-addr.arpa
                      16.172.in-addr.arpa
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa
                      18.172.in-addr.arpa
                      19.172.in-addr.arpa
                      20.172.in-addr.arpa
                      21.172.in-addr.arpa
                      22.172.in-addr.arpa
                      23.172.in-addr.arpa
                      24.172.in-addr.arpa
                      25.172.in-addr.arpa
                      26.172.in-addr.arpa
                      27.172.in-addr.arpa
                      28.172.in-addr.arpa
                      29.172.in-addr.arpa
                      30.172.in-addr.arpa
                      31.172.in-addr.arpa
                      corp
                      d.f.ip6.arpa
                      home
                      internal
                      intranet
                      lan
                      local
                      private
                      test

Link 3 (wlp3s0)
      Current Scopes: DNS
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
         DNS Servers: 192.168.1.1

Link 2 (enp2s0)
      Current Scopes: none
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

有人知道如何讓我的 nslookups 開始使用此處指定的 DNS 嗎?那些康卡斯特的東西到底是怎麼進去的,我怎麼能把它拿出來呢?

答案1

我對此有一些經驗,但我絕不是專家...

您可能有幾個問題...

  1. 您的路由器可能未設定為使用您想要的 DNS 伺服器
  2. 您的 18.04 計算機上的 dnsmasq 和 systemd-resolved 可能有問題
  3. 您可能需要編輯 /etc/hosts 文件
  4. 您手動編輯了 /etc/resolv.conf (不要這樣做)

1.調整路由器的設定...

登入路由器的管理頁面,檢查 DNS 伺服器設定。將它們設定為您所需的 DNS 伺服器,然後儲存設定。

2. 調整你的 dnsmasq 和 systemd-resolvd 設定...

dnsmasq 和 systemd-resolved 往往會互相踩對方的腳趾。儘管您可以同時運行兩者,但這可能會導致問題。 dnsmasq 是以前系統遺留下來的,在 18.04 升級後仍然保留。

在航廈...

ps auxc | grep -i dnsmasq # to see if dnsmasq is running

ps auxc | grep -i resolv # this should be running in 18.04

修復路由器的設定後,卸載 dnsmasq,重新啟動,然後查看問題是否已解決。如果您發現需要 dnsmasq,請重新安裝它,並且您可能需要調整 systemd 解析的設定。

cd /etc/systemd

sudo pico resolved.conf

改變:

#DNSStubListener=yes

到:

DNSStubListener=no

重新啟動並查看您的問題是否已解決。

3. 編輯 /etc/hosts 以包含您的 .local 名稱

這是我的 /etc/hosts 檔案的一部分。顯然,您需要更改配置的系統和節點名稱。這僅是一個示例。

127.0.0.1   Satellite-E55.local Satellite-E55   localhost
127.0.1.1   Satellite-E55
#
# static IP's (systemic network hardware)
#
192.168.0.1 caspurr.local       caspurr         # Netgear router
192.168.0.2 wdacbridge#1.local  wdacbridge#1    # WD AC bridge #1
192.168.0.3 ex6100.local        ex6100          # Netgear EX6100
192.168.0.4 repeater.local      repeater        # Netgear WN2500RP
192.168.0.5 av-bridge.local     av-bridge       # Cisco E2000
#
#192.168.0.6    meow-nas.local      meow-nas    # NAS
#192.168.0.7    zonet-nas.local     zonet-nas   # NAS
#192.168.0.8    woof-nas.local      woof-nas    # NAS
#
# static DHCP's
#
192.168.0.100   ubuntu-eth0.local   ubuntu-eth0 # Toshiba laptop
192.168.0.101   obitalk2.local      obitalk2    # Obitalk VOIP
192.168.0.102   vonage.local        vonage      # Vonage VOIP
192.168.0.103   laserjet.local      laserjet    # HP P1102W printer
#
192.168.0.201   hdhomerun.local     hdhomerun   # Silicon Dust DUAL
192.168.0.202   hdhomerun2.local    hdhomerun2  # Silicon Dust PRIME
192.168.0.203   hdhomerun3.local    hdhomerun3  # Silicon Dust CONNECT
#
# DHCP
#
192.168.0.253   slingbox.local      slingbox    # Slingbox
#
# cable modem
#
192.168.100.1   cablemodem.local    cablemodem  # Mediacom cable modem
#
# DNS
#
208.67.222.222  resolver1.opendns.com   dns1
208.67.220.220  resolver2.opendns.com   dns2

答案2

如果您的 WiFi 連線的 IP 位址是由路由器透過 DHCP 協定指派的,則路由器可能會設定為公佈它從您的 ISP 處獲知的 DNS 伺服器(如果連接使用 PPPoE,則很常見)。

resolvconfIIRC 如果安裝了該軟體包,則會自動完成此操作。

作為為什麼您看不到列出的實際 DNS 伺服器127.0.0.53,但這是因為 Ubuntu 預設使用 DNS 代理解析器。

作為快速修復,您可以嘗試正在卸載 resolvconf/etc/resolv.conf並使用您喜歡的 DNS 伺服器建立一個新 檔案。

例如

$> cat /etc/resolv.conf 

nameserver 8.8.8.8
nameserver 8.8.4.4

$> 

免責聲明

我總是resolvconf在我的機器上卸載,一切正常,但我不知道如果卸載它,系統上的哪些(或哪些軟體包)會被破壞。

相關內容