'लोकलहोस्ट' ने OSX से मेरे VirtualBox VM में SSHing के लिए '127.0.0.1' के लिए एक उपनाम के रूप में काम करना बंद कर दिया। क्यों, और कैसे ठीक करें?


0

सवाल समस्या की व्याख्या करता है। महीनों तक मुझे इन रेखाओं के साथ कोई समस्या नहीं हुई। फिर, कल सुबह, मैं अपने वीएम में नहीं जा सका! समस्या निवारण के लिए एक लंबा समय लिया, लेकिन यहाँ समाधान था:

Brendans-Mac-mini:~ Brendan$ ssh -p 3022 user@localhost
ssh: Could not resolve hostname localhost: nodename nor servname provided, or not known
Brendans-Mac-mini:~ Brendan$ ssh -p 3022 user@127.0.0.1
user@127.0.0.1's password: 
Last login: Tue Jul  1 22:37:59 2014 from 10.0.2.2

तो, ऐसा क्यों हुआ होगा, और इससे भी महत्वपूर्ण बात यह है कि मैं इसे कैसे ठीक करूं?

मैंने कोशिश की dig localhost, जो मुझे बताता है कि लोकलहोस्ट और 127.0.0.1 के बीच अभी भी किसी तरह का कनेक्शन है:

Brendans-Mac-mini:~ Brendan$ dig localhost

; <<>> DiG 9.8.3-P1 <<>> localhost
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28989
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;localhost.         IN  A

;; ANSWER SECTION:
localhost.      655360  IN  A   127.0.0.1

;; Query time: 7 msec
;; SERVER: 10.0.1.1#53(10.0.1.1)
;; WHEN: Wed Jul  2 09:44:44 2014
;; MSG SIZE  rcvd: 43

1
लोकलहोस्ट को सामान्य रूप से / etc / होस्ट फ़ाइल में परिभाषित किया जाता है, DNS में नहीं (हालांकि आपके DNS में इसके लिए आपातकालीन बैकअप प्रविष्टि है)। लाइन "127.0.0.1 लोकलहोस्ट" के लिए अपने / etc / मेजबान फ़ाइल की जाँच करें। आप यह भी है कि क्या प्रणाली रिसोल्वर के साथ देखता है जाँच कर सकते हैंdscacheutil -q host -a name localhost
गॉर्डन Davisson

@GordonDavisson हाँ, किसी कारण से आदि / मेजबानों के लिए खाली था! यही समस्या थी। यदि आप चाहें तो एक उत्तर के रूप में पोस्ट करने के लिए स्वतंत्र महसूस करें, अन्यथा मैं इसे करूँगा। आपकी सहायताके लिए धन्यवाद!
ब्रेंडन

जवाबों:


1

लोकलहोस्ट को सामान्य रूप से / etc / होस्ट फ़ाइल में परिभाषित किया जाता है, DNS में नहीं (हालांकि आपके DNS में इसके लिए आपातकालीन बैकअप प्रविष्टि है)। OS X (Mavericks के रूप में) / etc / मेजबानों की सामान्य सामग्री यहाँ दी गई है:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost 
fe80::1%lo0     localhost

ध्यान दें कि यदि आपको इस फ़ाइल को संपादित / पुनः बनाने की आवश्यकता है, तो यह सादे पाठ प्रारूप (सभी में कोई स्वरूपण नहीं), यूनिक्स-स्टाइल लाइन एंडिंग (लाइनफीड) के साथ होना चाहिए। आप कमांड लाइन संपादक का उपयोग कर सकते हैं जैसे viया nano; यदि आप एक GUI संपादक चाहते हैं, तो मैं इस तरह की फाइलों को संपादित करने के लिए TextWrangler या इसके बड़े भाई BBEdit की सिफारिश करता हूं , क्योंकि वे आपके द्वारा संपादित की गई फाइलों में "उपयोगी" उपयोगी चीजों को नहीं जोड़ने के बारे में अच्छे हैं, और संपादित करने के लिए व्यवस्थापक अधिकारों का उपयोग भी कर सकते हैं सिस्टम फाइलें (जैसे / आदि / मेजबान)।

(इसके अलावा, यह वास्तव में दृश्यमान या महत्वपूर्ण नहीं है, लेकिन वे पते और नामों के बीच टैब वर्ण हैं।)

इस तरह के लुकअप के परीक्षण के लिए, जैसे कुछ का उपयोग करें dscacheutil( dscacheutil -q host -a name localhost) dig। कारण उपयोग करने के लिए dscacheutilवह यह है कि dig(और hostऔर nsloogup) प्रणाली देखने नीति बाईपास और बस सीधे डीएनएस की जाँच करता है, जबकि dscacheutilपूरी प्रणाली देखने नीति उपयोग करता है। परिणामस्वरूप, dig/ etc / मेजबानों में प्रविष्टियाँ नहीं देखेंगे, या mDNS (Bonjour) लुकअप करें, या निर्देशिका सेवाओं में कंप्यूटर प्रविष्टियों की तलाश करें, या पिछले लुकअप से कैश्ड प्रविष्टियाँ देखें, या ...

जब आपके पास मेजबानों की फाइल ठीक से सेट हो जाती है, तो यहां क्या है dscacheutilआउटपुट जैसा दिखना चाहिए:

$ dscacheutil -q host -a name localhost
name: localhost
ipv6_address: ::1
ipv6_address: fe80:1::1

name: localhost
ip_address: 127.0.0.1

नैनो संपादित करने के लिए काफी अच्छा था ... sudoफ़ाइल को संपादित करने में सक्षम होने के लिए अनुमतियाँ बदलने के बजाय इसे करना समाप्त कर दिया । इसके लिए धन्यवाद। ऐसा लगता है कि मैं कुछ अन्य मेजबानों को भी याद कर रहा हूं!
ब्रेंडन

sudo nanoइस तरह की चीजों के लिए ठीक काम करेगा। अन्य प्रविष्टियाँ उतनी महत्वपूर्ण नहीं हैं, लेकिन मैं आगे बढ़कर उन्हें पूर्णता के लिए जोड़ूंगा।
गॉर्डन डेविसन

पूछना अलग पर एक ही जवाब पोस्ट करना चाहते हैं? मैंने मूल रूप से वहां पोस्ट किया था। मैंने आपको जवाब देने के बाद इसे ध्वजांकित किया और वे कहते हैं कि इसका उत्तर वहां भी दिया जा सकता है ... यदि नहीं तो मैं केवल इस उत्तर को स्रोत बनाऊंगा और आपको श्रेय दूंगा।
ब्रेंडन

1
मैंने इसे आस्क डिफरेंट पर कॉपी किया, और कुछ जोड़ दिए। मैं यहाँ के परिवर्धन में भी संपादित करूँगा ...
गॉर्डन डेविसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.