मैं मेरे और मेरे रूममेट्स के लिए एक घर इंट्रानेट स्थापित करने पर काम कर रहा हूं। मेरा विचार यह है कि हम पिछले उपयोगिता बिल जैसी चीजों को स्टोर करने में सक्षम होंगे, जो कि रसोई घर में एक दराज की तुलना में अधिक सुलभ हैं। वैसे भी, मेरे पास अपाचे 2 एक रास्पबेरी पाई पर चल रहा है, मेरे लैन पर, और अगर मैं उपयोग करता हूं इसका IP पता, मैं Pi पर कार्य किए जा रहे पृष्ठों तक पहुंच सकता हूं। चूंकि मैं अपने अपार्टमेंट को सेवा प्रदान करने के लिए नेटवर्किंग के बारे में जानने के लिए इस परियोजना को और अधिक कर रहा हूं, इसलिए मैंने सोचा कि यदि मेरा नेटवर्क मेरे लैन के लिए होस्टनाम रिज़ॉल्यूशन प्रदान कर सकता है तो यह अच्छा होगा। इसलिए अपने ब्राउज़र को इंगित करने के बजाय 192.168.1.151, पाई का आईपी पता, मैं इसे oberon(इसके होस्टनाम) को इंगित कर सकता हूं और पाई द्वारा प्रस्तुत वेब पृष्ठों को देख सकता हूं ।
अब मुझे पता था कि मैं ऐसा करने वाला पहला व्यक्ति नहीं था, इसलिए मैंने Googling द्वारा शुरू किया। यह सवाल, यूनिक्स और लिनक्स पर भी, मुझे बहुत मदद मिली है: अपने होस्टनाम का उपयोग करके लैन से एक मशीन को कैसे सुलभ बनाया जाए । इस बिंदु पर, मैंने सत्यापित उत्तर में सब कुछ आज़माया है। मैंने hostsफ़ाइल का उपयोग करने के बारे में सोचा , लेकिन इसका मतलब यह होगा कि मुझे अपने रूममेट्स को अपनी मशीनों को कॉन्फ़िगर करने के लिए कहना होगा, जो मैं उन्हें नहीं करना चाहता। मैंने अपने राउटर (एक NETGEAR WNR1000v2 (उर्फ एक N150)) पर पाई के लिए डीएचसीपी पट्टे को आरक्षित करने की कोशिश की, और जब आरक्षण काम किया, तो मेजबाननाम संकल्प नहीं करता है। इस तरह की मुझे निराशा होती है क्योंकि मैंने अपने राउटर को पीआई और इसके होस्टनाम का आईपी बताया था , फिर भी यह मेरे लैन पर क्लाइंट को यह जानकारी नहीं देता है।
इन दो तरीकों के काम नहीं करने के कारण, मैंने dnsmasqपाई पर स्थापित करने का निर्णय लिया । यह कॉन्फ़िगर करना आसान लग रहा था और मुझे एक नया टूल सीखने में खुशी होगी। मैंने स्थापित किया है और यह ठीक चल रहा है (ऐसा लगता है)। मैं यह कर सकते हैं digया nslookupपाई के प्रचलित नाम (जो मैं में सेट /etc/hostsकरने के लिए oberonऔर homenet) और सही परिणाम प्राप्त। मैं की तरह इंटरनेट नाम के लिए भी ऐसा ही कर सकते हैं yahoo.comऔर क्योंकि मैं गूगल के सेट सही जवाब पाने 8.8.8.8और 8.8.4.4के रूप में बैकअप सर्वर /etc/dnsmasq.conf। यह देखो:
me@oberon~$ dig oberon
; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> oberon
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10787
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;oberon. IN A
;; ANSWER SECTION:
oberon. 0 IN A 192.168.1.151
;; Query time: 10 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sun Oct 6 18:59:18 2013
;; MSG SIZE rcvd: 40
ध्यान दें कि SERVERहै 127.0.0.1: oberonअपने आप ही अपने आईपी पते को देख रहा है। यह वही है जो मुझे देखने की उम्मीद थी। यदि मैं करता हूं तो आउटपुट समान है dig oberon @localhost। इस आउटपुट के कारण, मैं सोच रहा हूँ कि dnsmasqठीक काम कर रहा है। इसलिए इसे अगले स्तर पर लाने के लिए, मैं चाहता हूं कि मेरे LAN के सभी क्लाइंट oberonअपने ब्राउज़र में टाइप करने में सक्षम हों और इसे oberon's' इंडेक्स पेज पर ले जाया जा सके । इसके लिए मुझे पता है कि मुझे अपने राउटर को कॉन्फ़िगर करने की आवश्यकता है (माफी अगर यह सख्ती से यूनिक्स और लिनक्स क्षेत्र से दूर हो जाता है)।
मेरे पास एक Netgear WNR1000v2 है जिससे मैं काफी परिचित हूं। मैंने पोर्ट अग्रेषण को कॉन्फ़िगर कर दिया है ताकि मैं पाई में SSH कर सकूं, और मैंने अन्य सेटिंग्स में भी चारों ओर पोज़ किया है। मुझे पता है कि इस परियोजना को शुरू करने से पहले, मैं अपने आईएसपी से अपने डीएनएस सर्वर प्राप्त कर रहा था, लेकिन अब मैं उन डीएनएस सर्वरों का प्राथमिक रूप से उपयोग करना चाहता हूं, लेकिन 192.168.1.151अंतिम जांच के रूप में भी उपयोग करना चाहता हूं । इसलिए मैंने अपने राउटर के DNS कॉन्फिगरेशन को निम्न में बदल दिया:

तो इस विन्यास के साथ, मुझे उम्मीद है कि मैं nslookup oberonअपने (विंडोज) डेस्कटॉप पर कर पाऊंगा और इसका परिणाम पा सकूंगा 192.168.1.151। लेकिन ऐसा होता नहीं है। यह क्या होता है:
C:\Users\me>nslookup oberon
Server: UnKnown
Address: fe80::226:f2ff:fefa:bea
*** UnKnown can't find oberon: Non-existent domain
dnsflushingमेरे विंडोज मशीन पर रीसेट या नेटवर्क एडेप्टर कुछ भी नहीं बदलता है।
अब यहाँ क्यों मैं अपने बालों को यहाँ फाड़ने की तरह हूँ:
C:\Users\me>nslookup oberon 192.168.1.151
Server: oberon.lan
Address: 192.168.1.151
Name: oberon
Address: 192.168.1.151
जाहिर है, dnsmasqठीक काम कर रहा है। अगर मैं अपने विंडोज बॉक्स को 192.168.1.151नाम को हल करने के लिए उपयोग करने के लिए कहता हूं oberon, तो सब कुछ ठीक है ( .lanडोमेन के कॉन्फ़िगरेशन का हिस्सा था dnsmasq, इसलिए मुझे वहां इसे देखने की उम्मीद थी)। अगर मैं अपना राउटर प्राप्त करने के लिए अपने विंडोज मशीन को बता सकता हूं कि 192.168.1.151जब यह डीएनएस प्रश्न बनाता है, तो मुझे अच्छा होना चाहिए!
तो यह मुझे लगता है कि समस्या मेरे राउटर में है, लेकिन मैं अभी यह पता नहीं लगा सकता कि डीएनएस सर्वरों को बदलने से आगे क्या करना है 192.168.1.151जैसे कि पहले से ही है। क्या कोई यहां मेरी सहायता करेगा? मैं आगे कोई वांछित जानकारी प्रदान करने का प्रयास करूंगा।