मैं DNSMasq को स्थानीय DNS सर्वर के रूप में चला रहा हूं, इसलिए मैं हल कर सकता हूं *.local.pcfdev.io
(जैसा कि यहां चर्चा की गई है मैक ओएस एक्स के साथ पीसीएफ देव ऑफलाइन का उपयोग करना )। जब मैंने पहली बार चीजों को सेट किया तो सब कुछ काम किया।
कुछ दिनों के बाद, मेरे मैकबुक के कुछ रीस्टार्ट होने के बाद, ऑफ़लाइन होने के बाद मैं अब ऐसी चीजों को हल नहीं कर सकता जैसे या api.local.pcfdev.io
उपयोग करना । हालाँकि, सही काम करता है।curl
ping
dig
$ dig api.local.pcfdev.io
; <<>> DiG 9.8.3-P1 <<>> api.local.pcfdev.io
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46877
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;api.local.pcfdev.io. IN A
;; ANSWER SECTION:
api.local.pcfdev.io. 0 IN A 192.168.11.11
;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Sep 6 10:17:44 2016
;; MSG SIZE rcvd: 53
$ curl api.local.pcfdev.io
curl: (6) Could not resolve host: api.local.pcfdev.io
मैंने -AlwaysAppendSearchDomains
एक तर्क के रूप में जोड़ने की कोशिश की /usr/sbin/mDNSResponder
है /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
और mDNSResponder को फिर से शुरू किया है launchctl
, लेकिन कोई फायदा नहीं हुआ।
अद्यतन १
निश्चित रूप से सही स्थानीय आईपी पर कुछ सुनना है:
$ nslookup api.local.pcfdev.io
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: api.local.pcfdev.io
Address: 192.168.11.11
$ ping api.local.pcfdev.io
ping: cannot resolve api.local.pcfdev.io: Unknown host
$ telnet 192.168.11.11 80
Trying 192.168.11.11...
Connected to 192.168.11.11.
Escape character is '^]'.
HTTP/1.1 400 Bad Request
Connection closed by foreign host.
अद्यतन २
नेटवर्क प्रेफरेंस से सभी डीएनएस सर्वर को हटाने के लिए नीचे दिए गए सुझाव की कोशिश करने के बाद 127.0.0.1
, मैं कुछ भी हल नहीं कर सकता। मैं कुछ डिबग लॉगिंग प्राप्त करने में कामयाब रहा mDNSResponder
:
mDNSResponder[91]: 74: DNSServiceCreateConnection START PID[32612](ping)
mDNSResponder[91]: 74: Error socket 75 created 00000000 00000001
mDNSResponder[91]: 74: DNSServiceQueryRecord(15000, 0, api.local.pcfdev.io., Addr) START PID[32612]()
mDNSResponder[91]: 74: Error socket 75 closed 00000000 00000001 (0)
mDNSResponder[91]: 74: DNSServiceQueryRecord(api.local.pcfdev.io., Addr) ADD 0 api.local.pcfdev.io. Addr
mDNSResponder[91]: 74: Cancel 00000000 00000001
mDNSResponder[91]: 74: DNSServiceQueryRecord(api.local.pcfdev.io., Addr) STOP PID[32612]()
mDNSResponder[91]: 74: DNSServiceCreateConnection STOP PID[32612](ping)
मैंने यह भी देखा कि प्रस्तावित उत्तर में बताया गया है, nslookup
और dig
कुछ भी लॉग इन करने का कारण नहीं है mDNSResponder
, लेकिन अन्य उपकरण ( ping
, curl
) करते हैं।
तो ऐसा लगता है कि जो भी कारण dnsmasq
काम नहीं कर रहा है (मैं टीसीपी कनेक्शन स्थापित कर सकता हूं 127.0.0.1:53
) या mDNSResponder
इसका उपयोग नहीं कर रहा है।
अद्यतन 3
etc/resolve.conf
मेरे वाईफाई एडेप्टर के सक्रिय होने पर मौजूद होना बंद हो जाता है, लेकिन मैं किसी नेटवर्क से जुड़ा नहीं हूं। क्या यह हो सकता है कि सीएलआई उपकरण स्थानीय dnsmasq
सर्वर का उपयोग न करें ?
curl
या wget
या उपकरणों में उन्हें / प्रोफाइलर / डिबगर हो और देखते हैं कि क्या वास्तव में संकल्प त्रुटि नहीं कर सका पैदा करने के लिए हो रहा है।