Elenca i server DNS in Mavericks

10

Come verificare quale server DNS è stato utilizzato per risolvere un particolare nome host all'interno della rete VPN?

Utilizzo un client VPN proprietario fornito dalla società e desidero visualizzare l'indirizzo IP del server DNS, ma

networksetup -getdnsservers <service name>

non elenca alcun server DNS. Tuttavia, posso eseguire il ping su qualsiasi server nella rete interna, quindi il DNS sembra funzionare.

Come funziona la ricerca DNS su OSX con / senza connessioni VPN?

    
posta Robusta 10.12.2013 - 11:17
fonte

4 risposte

6

Innanzitutto, se networksetup -getdnsservers <service name> non mostra nulla, non hai niente elencato in Preferenze di Sistema > Netowrk sotto "DNS Servers:".

In secondo luogo, è importante notare che OS X non gestisce il DNS come la maggior parte dei sistemi. Per link In sostanza ciò significa che OS X ha più Client DNS in base alla configurazione. Il risultato di questi servizi multipli significa che ci sono situazioni in cui l'utilizzo di Safari per accedere a un sito Web ( link ) ti porterà a un indirizzo IP che OS X ha recuperato dal DNS (ad esempio 1.2.3.4) mentre allo stesso tempo eseguiva uno scavo

$ dig www.example.com  

restituirà risultati diversi. (forse 2.3.4.5)

La ragione di ciò risiede nel modo in cui OS X gestisce il DNS.

Se esegui $ man dig ottieni tra l'altro quanto segue:

Mac OS X NOTICE The dig command does not use the host name and address resolution or the DNS query routing mechanisms used by other processes running on Mac OS X. The results of name or address queries printed by dig may differ from those found by other processes that use the Mac OS X native name and address resolution mechanisms. The results of DNS queries may also differ from queries that use the Mac OS X DNS routing library.

Anche $man nslookup restituirà qualcosa di simile

Mac OS X NOTICE The nslookup command does not use the host name and address resolution or the DNS query routing mechanisms used by other processes running on Mac OS X. The results of name or address queries printed by nslookup may differ from those found by other processes that use the Mac OS X native name and address resolution mechanisms. The results of DNS queries may also differ from queries that use the Mac OS X DNS routing library.

Tutto questo è davvero un modo piuttosto lungo di dire, il modo migliore per vedere quali server DNS vengono utilizzati è guardare le Preferenze di Sistema > Rete

Le voci "Server DNS:" sono solitamente lì, e "Cerca domini:" ti permetterà di cercare indirizzi incompleti.

Se "Server DNS:" non è presente, OS X proverà a utilizzare l'indirizzo in "Router:" per DNS.

E, oltre a tutto questo divertimento, ci sono utility e altri processi che non possono usare con la libreria di routing DNS di OS X, e colpiranno il contenuto di / etc / resolv. conf direttamente.

La risposta breve è questa:

  1. Se segui il contenuto di Preferenze di Sistema > Rete, stai guardando la stessa cosa che i più processi stanno usando.
  2. Il contenuto delle Preferenze di Sistema > Rete, dovrebbe popolare /etc/resolv.conf, ma non sempre.
  3. Alcuni altri processi (come dig e nslookup) accedono direttamente a /etc/resolv.conf.

Inoltre, se non si utilizzano i client VPN integrati in OS X, è possibile che vengano utilizzati percorsi e server DNS aggiuntivi che networksetup -getdnsservers <service name> non mostrerà. Il tuo client VPN potrebbe essere in grado di mostrarti i percorsi e i server DNS, so che il mio fa.

So che questo non risponde esattamente alla tua domanda, ma spero che questo ti aiuti a capire che non è sempre facile scoprire quale sia la "verità" relativa al DNS su un Mac. Generalmente sei sicuro assumendo che il contenuto di Preferenze di Sistema > La rete o il contenuto di networksetup -getdnsservers <service name> sono da dove ricevi il tuo DNS. Tuttavia, se le cose sembrano strane, tieni presente che ci sono anche altre possibilità. Usa lo scavare per aiutare a determinare se ci sono differenze a piedi.

Infine, per quei lettori che si stanno chiedendo come ottenere <service name> in networksetup -getdnsservers <service name> , prova a utilizzare networksetup -listallnetworkservices

Bill

    
risposta data 10.12.2013 - 20:13
fonte
8

in OSX Mavericks (10.9 - in realtà 10.6.3 in su, credo) se vuoi vedere la configurazione DNS attiva:

scutil --dns

La prima voce (resolver # 1) è a quanto riferito la configurazione attiva ... anche se ho visto molti casi in cui non è così.

from man scutil

 The --dns option reports the current DNS configuration.  The first listed
 resolver(5) configuration is considered to be the "default" configura-
 tion.  Additional "supplemental" configurations follow.  Those containing
 a "domain" name will be used for queries matching the specified domain.
 Those without will be used as a "default" configuration in addition to
 the first listed.

IME, se ciò che vedi qui non corrisponde a quello che ti aspetti (cioè, network > advanced > dns), potresti dover disabilitare / abilitare la scheda di rete appropriata affinché possa essere aggiornato ...

Altri suggerimenti recenti OSX:

Con 10.7 o 10.8, i domini di ricerca non si applicano alle ricerche con un punto al loro interno. cioè - www.test non aggiungerà alcun dominio di ricerca, dove www lo farà. c'è una soluzione:

sudo vim /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
Add <string>-AlwaysAppendSearchDomains</string>after line 16
    <key>ProgramArguments</key>
    <array>
        <string>/usr/sbin/mDNSResponder</string>
        <string>-launchd</string>
        <string>-AlwaysAppendSearchDomains</string>
    </array>

Ora scarica e ricarica il servizio mDNSResponder:    sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist    sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

la rete > avanzato > dns config is -PER INTERFACE-. Quindi se usi wireless e cablato ... devi configurare entrambi.

c'è anche un altro modo: / etc / resolver - un esempio qui: Do / etc / resolver / files funzionano in Mountain Lion per la risoluzione DNS? e altri ancora: link

Per quanto riguarda il tentativo di fare un nslookup - è risaputo che nslookup (e host e dig) non segue il meccanismo di risoluzione OSX (estremamente unico e confuso). Usa ping.

    
risposta data 16.12.2014 - 18:46
fonte
2

Normalmente userò (su ambienti unix, e forse è un po 'vecchia scuola) qualcosa come i seguenti esempi.

In primo luogo, è possibile cercare individualmente un indirizzo IP o una voce di nome DNS e segnalerà il server utilizzato per fornire la risposta. Puoi cercare una singola voce sulla riga di comando, o inserire il programma nslookup e cercare più voci senza dover reinserire il comando:

nslookup

Default Server:  redacted.organisation.com
Address:  10.47.xxx.xxx

> ibm.com
Server:  redacted.organisation.com
address:  10.47.xxx.xxx

Non-authoritative answer:
Name:    ibm.com
Address:  129.42.38.1

> sun.com (etc etc, use quit or exit to get out)

In secondo luogo questo comando (nota che l'ho eseguito su una finestra di Windows, su Unix / OS X il comando ipconfig / all è ifconfig -a e i risultati di output potrebbero differire leggermente) che elenca i dati di configurazione ip per ogni interfaccia del sistema, porte fisiche, connessioni wireless, VNC ecc., visualizzando quali dati DNS e IP sono associati a ciascuna rotta fuori dalla macchina, si otterranno molte voci indietro, una per ciascuna vera porta / adattatore di rete, e anche varie quantità di porte virtuali a seconda della configurazione, nel mio esempio ho rimosso la maggior parte dei risultati ma ho mostrato il mio adattatore VPN e le voci DNS (ridotte) che ha.

C:\Users\dawilkin>ipconfig /all

Windows IP Configuration

   Host Name . . . . . . . . . . . . : XXX-XXXXX
   Primary Dns Suffix  . . . . . . . : XX.XXXXX.com
   Node Type . . . . . . . . . . . . : Hybrid
   IP Routing Enabled. . . . . . . . : No
   WINS Proxy Enabled. . . . . . . . : No
   DNS Suffix Search List. . . . . . : XXX.com
                                       XX.XXX.com
                                       XX.XXX.com
                                       XXX.co.uk
                                       XXX.com

Ethernet adapter Local Area Connection 2:

   Connection-specific DNS Suffix  . : XXX.com
   Description . . . . . . . . . . . : Cisco AnyConnect VPN Virtual Miniport Ada
pter for Windows x64
   Physical Address. . . . . . . . . : 00-XX-9A-XX-XX-00
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes
   IPv4 Address. . . . . . . . . . . : 10.47.XX.XX(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.240.0
   Default Gateway . . . . . . . . . : 10.47.XX.X
   DNS Servers . . . . . . . . . . . : 10.47.XX.X
                                       10.31.XX.X
   NetBIOS over Tcpip. . . . . . . . : Enabled

Ethernet adapter Local Area Connection:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Intel(R) 82579LM Gigabit Network Connecti
on
   Physical Address. . . . . . . . . : 3C-97-XX-XX-XX-3C
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes

Wireless LAN adapter Wireless Network Connection 3:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Microsoft Virtual WiFi Miniport Adapter #
2
   Physical Address. . . . . . . . . : A4-4E-31-42-33-41
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
    
risposta data 10.12.2013 - 11:35
fonte
1

Che cosa ti dice nslookup ? Mi dà il mio server DNS sulla seconda riga.

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

Non-authoritative answer:
Name:   stackexchange.com
Address: 198.252.206.16
    
risposta data 10.12.2013 - 11:36
fonte

Leggi altre domande sui tag