मेरे डोमेन के लिए Google ShortName सेवा कैसे सेट करें, ताकि FQDN की आवश्यकता न हो


13

ब्लॉग पोस्ट " आपके डोमेन के लिए एक ' टिनीलल सेवा" बताती है कि Google Apps का उपयोग करके अपने डोमेन के लिए शॉर्टनेम सेवा कैसे सेट करें। उदाहरण के लिए, यदि आपका डोमेन है example.comऔर आप Google Apps का उपयोग करते हैं, तो आप इसे कॉन्फ़िगर कर सकते हैं ताकि यह http://go.example.comआपके उद्यम की निजी ShortName सेवा हो।

नोट: यह उपयोग करने के लिए दुनिया के लिए एक "टिनील" सेवा बनाने के बारे में नहीं है। यह एक उद्यम के लिए है।

एक शॉर्टनेम सेवा होना उपयोगी है जिसे केवल आपके उपयोगकर्ता उपयोग कर सकते हैं ताकि आप आंतरिक पृष्ठों के लिंक बना सकें। लोगों को एक लंबा कठिन URL बताने के बजाय, आप कह सकते हैं, "आज का दोपहर का भोजन मेनू http://go.example.com/lunch " पर है। ब्लॉग लोगों को अपने स्वयं के लिंक स्थापित करने के लिए सशक्त बनाने के कुछ लाभों के दस्तावेज़ पोस्ट करता है। (सबसे महत्वपूर्ण: उन्हें आपको एक नया लिंक सेट करने के लिए परेशान करने की आवश्यकता नहीं है!)

समस्या

सिस्टम के साथ समस्या यह है कि URL अभी भी लंबा है। लोग अपने वेब ब्राउज़र में "गो / लंच" टाइप करेंगे और यह काम करेगा। अफसोस की बात है कि HTTP प्रोटोकॉल कैसे काम करता है, इसकी एक तकनीकी वजह से Google Apps इसका समर्थन नहीं कर सकता है। HTTP 1.1 में "होस्ट:" हेडर उस डोमेन को सूचीबद्ध करता है जिसे उपयोगकर्ता ने अपने वेब ब्राउज़र में टाइप किया था, न कि एफक्यूडीएन । दूसरे शब्दों में, जब Google Apps को " http: // go / lunch " के लिए HTTP अनुरोध मिलता है, तो वेबसर्वर होस्टनाम के रूप में "गो" प्राप्त करता है। चूंकि Google Apps कई डोमेन के लिए यह सेवा प्रदान कर रहा है, इसलिए यह नहीं बता सकता कि आप चाहते हैं go.example.comया go.some-other-example.com

नतीजतन, उपयोगकर्ताओं को हर बार "go.example.com/lunch" लिखना पड़ता है, जो "गो / लंच" की तुलना में बहुत लंबा है।

समाधान

Google वेब कुकीज़ या किसी अन्य योजना का उपयोग करके इसे हल कर सकता है। जिनमें से कोई भी विशेष रूप से साफ या आसान नहीं है। जब तक वे करते हैं आप अपनी खुद की एक मशीन स्थापित करके समस्या को हल कर सकते हैं जो अनुरोधों को "जाना" के रूप में स्वीकार करता है और उन्हें पुनर्निर्देशित करता है।

सर्वर "जाना" नामक साइट के लिए HTTP अनुरोधों को स्वीकार करता है और अनुरोध को पुनर्निर्देशित करता है go.example.com। फिर आप सही DNS रिकॉर्ड बनाते हैं ताकि यह काम करे, और आपके डीएचसीपी कॉन्फ़िगरेशन को ट्विस्ट करें ताकि आपके लैपटॉप / वर्कस्टेशन सही काम करें।

इस सर्वर फाल्ट डॉक्यूमेंट की बात यह है कि इस प्रक्रिया को समझाना है और अपनी साइट के लिए ऐसा करने में आपकी मदद करने के लिए कॉन्फ़िगरेशन उदाहरण दें। चूंकि मेरे पास दुनिया के हर ऑपरेटिंग सिस्टम का ज्ञान या ज्ञान नहीं है, इसलिए मैं इसे एक "कम्युनिटी विकी" बना रहा हूं, ताकि लोग कॉन्फ़िगरेशन स्निपेट्स को भर सकें क्योंकि वे इसे उनके लिए काम कर रहे हैं। मैंने 'TODO' को उस क्षेत्र में रखा है जिसमें विशेष रूप से सुधार की आवश्यकता है।

विवरण

इस उदाहरण में हम डोमेन के रूप में "example.com" का उपयोग करेंगे।

चरण 1: Google Apps सेवा को सामान्य तरीके से सेट करें।

सेवा go.example.comको सामान्य के लिए कॉन्फ़िगर करें । इसका परीक्षण करें और सुनिश्चित करें कि URL http://go.example.com/fooकाम करता है। यदि यह पूर्ण नहीं है तो जारी न रखें। यह अपनी कार की मरम्मत करने की कोशिश करने से पहले आप स्वयं की तरह होगा।

चरण 2: अपने पुनर्निर्देशक hostname का चयन करें

यदि आपकी शार्टनेम सेवा है go.example.com, तो आदर्श रूप से आप अपने रीडायरेक्टर का नाम बनाएंगे go.example.com। अफसोस की बात है, भौतिक विज्ञान एक ही समय में दो निकायों को एक ही स्थान पर होने से रोकता है, और DNS भौतिकी के नियमों का पालन करता है।

चाल को पुनर्निर्देशक को शार्टनेम सेवा के समान होस्टनाम होना चाहिए, लेकिन एक अलग डोमेन में। उदाहरण के लिए, go.corp.example.com, go.ext.google.com, या go.this-is-different.example.com

बड़ी कंपनियों में आमतौर पर एक आंतरिक उपडोमेन होता है जो बाहरी दुनिया के संपर्क में नहीं होता है। आमतौर पर आंतरिक मेजबान होते हैं INSIDEHOST.corp.google.com। वह वह जगह है जहाँ आप पुनर्निर्देशक डालते हैं।

कुछ कंपनियां एक उपडोमेन आवंटित करती हैं जो CNAME की उन सेवाओं की ओर इशारा करती है जो कंपनी के अंदर और बाहर दोनों से एक्सेस की जानी चाहिए। इस तरह एक उपडोमेन है जिसे लोगों के डीएनएस खोजपथ में डालने की जरूरत है। (यूनिक्स के लोग इस बारे में सोच सकते हैं कि यह /usr/local/binसबडाइंक से भरा एक उपनिर्देशिका है) परंपरागत रूप से यह उपडोमेन है ext.example.com। वह उप डोमेन में CNAME उपलब्ध की तरह हैं mail.ext.example.com, calendar.ext.example.com, vpn.ext.example.com, और इतने पर।)

चेतावनी: अपने DNS खोज पथ में अभी तक कोई अन्य आइटम जोड़ना आपके कंप्यूटर को धीमा बनाने का एक और तरीका है। एक अतिरिक्त DNS क्वेरी हर समय करना धीमा है और वेब पर सर्फिंग करना काफी धीमा हो जाएगा। इस रीडायरेक्टर को एक उपडोमेन में जोड़ना बेहतर है जो आपकी मशीन के डीएनएस खोज पथ में पहले से मौजूद है, भले ही इसका मतलब कई उप-डोमेन में CNAME जोड़ना हो। उदाहरण के लिए, यदि आपकी आंतरिक मशीनें और आपके वीपीएन से जुड़ी मशीनें corp.example.comपहले से ही अपने खोज पथ में हैं, तो वहां CNAME जोड़ें। यदि आप चाहते हैं कि बाहरी मशीनें वीपीएन को रीडायरेक्टर तक पहुंचाने में सक्षम न हों, तो corp.example.comउनके खोज पथ में हार्ड कोड के लिए अजीब हो सकता है, अगर यह है कि मशीनों के लिए उपडोमेन बाहर से कभी नहीं पहुंचता है । उस स्थिति में, एक अन्य CNAME को बाहरी उपडोमेन में जोड़ा जा सकता है (जैसेext.example.com) पुनर्निर्देशक को इंगित करने के लिए। दोनों का समर्थन करने के लिए वेब सर्वर कॉन्फ़िगरेशन को अपडेट करें।

इस उदाहरण के लिए, मान लें कि आपने चुना है कि पुनर्निर्देशक होगा go.ext.example.com। मशीन को आप चाहते हैं कुछ भी कहा जा सकता है, हम DNS और वेब सर्वर कॉन्फ़िगरेशन में सभी जादू करेंगे।

चरण 3: अपने पुनर्निर्देशक के लिए योजना बनाना

जिस वेब सर्वर को आप सेट करने जा रहे हैं वह मौजूदा वेब सर्वर या इस उद्देश्य के लिए बनाया गया नया हो सकता है। कुंजी यह है कि मशीन को कहीं से भी एक्सेस करना होगा, जहां आप चाहते हैं कि शॉर्टनेम सेवा काम करे: कंपनी के अंदर, कंपनी के बाहर, जब उपयोगकर्ता वीपीएन के माध्यम से जुड़ा होता है। (आप सुरक्षा कारणों से कंपनी के बाहर से यह काम करने का विकल्प चुन सकते हैं। सुरक्षा कारणों से, आप एक मशीन को अंदर की तरफ और दूसरे को बाहर की तरफ स्थापित कर सकते हैं।)

नोट: आपको इसके लिए एक नया वेब सर्वर सेट करने की आवश्यकता नहीं है। जब तक कॉन्फ़िगरेशन मौजूद नहीं है तब तक आप इसे पहले से मौजूद वेब सर्वर से जोड़ सकते हैं।

नोट: यह बल्कि जटिल हो सकता है। आप इसे सबसे सरल मामले में काम करने पर ध्यान केंद्रित करना चाहते हैं, तो एक बार काम करने और परीक्षण करने के बाद, इसे अन्य स्थितियों के लिए काम कर सकते हैं। विशेष रूप से, इसे इस क्रम में काम करते हुए प्राप्त करें: 1. कंपनी के अंदर वर्कस्टेशन / लैपटॉप 2. वीपीएन से जुड़ी मशीनें, फिर कंपनी के बाहर मशीनें (उदाहरण के लिए, इंटरनेट कैफे में)। 3. वीपीएन अप के बिना नेटवर्क के बाहर की मशीनें। 4. अन्य ऑपरेटिंग सिस्टम के लिए यह परीक्षण करें

इस उदाहरण में, हम मान लेंगे कि एक वेब सर्वर है जो एक ही आईपी पते पर सुलभ है चाहे आप कंपनी के अंदर हों या बाहर।

हमारे "go। Corp .example.com" उदाहरण में, इसका अर्थ है "गो" एक उपडोमेन में है जो केवल अंदरूनी सूत्रों के लिए सुलभ है, और शॉर्टनेम सेवा का उपयोग करने के लिए वीपीएन की आवश्यकता होती है। चूंकि Google Apps आमतौर पर वीपीएन के बिना काम करने के लिए कॉन्फ़िगर किया गया है (क्योंकि सभी एक्सेस HTTPS है), यह सब-इष्टतम है।

हमारे "go। Ext .example.com" उदाहरण में, इसका मतलब है कि उपडोमेन कंपनी के अंदर और बाहर दोनों से पहुंच योग्य है, और Aरिकॉर्ड बाहरी आईपी पते की ओर इशारा करता है।

चरण 4: अपने पुनर्निर्देशक के लिए DNS रिकॉर्ड्स जोड़ें

यहाँ DNS रिकॉर्ड आवश्यक हैं:

go.example.com.                IN CNAME ghs.google.com.
go.ext.example.com.            IN A 64.32.179.5
go-redirector.example.com  IN A 64.32.179.5

पहला DNS रिकॉर्ड (go.example.com) चरण 1 के भाग के रूप में पहले से मौजूद होना चाहिए।

दूसरा DNS रिकॉर्ड (go। Ext .example.com) Aनए वेब सर्वर के आईपी पते पर एक रिकॉर्ड है जो आप कॉन्फ़िगर कर रहे हैं।

तीसरा डीएनएस रिकॉर्ड (गो-रीडायरेक्टर) डिबगिंग के समय आपकी मदद करने के लिए है।

चरण 5: वेब सर्वर को कॉन्फ़िगर करें

वेब सर्वर पर रीडायरेक्ट जोड़ें। (यह मानता है कि वेब सर्वर पहले से इंस्टॉल और रन हो रहा है)।

यहाँ अपाचे विन्यास स्निपेट है:

<VirtualHost *:80>
        ServerName go-redirector.example.com
        ServerAlias go, go.ext, go.ext.example
        RewriteEngine on
        RewriteRule ^(.*)$ http://go.example.com$1 [R=permanent]
</VirtualHost>

इसका परीक्षण कैसे करें। http://go-redirector.example.comइस बिंदु पर काम करना चाहिए।

जब तक यह परीक्षण काम नहीं करता तब तक आगे न बढ़ें। बच्चे के कदम।

चरण 6: क्लाइंट के DNS खोज पथ को कॉन्फ़िगर करें

अब हम मशीनों को कॉन्फ़िगर करने जा रहे हैं (वेब ​​ब्राउज़र पर कुछ भी चल रहा है) ताकि DNS खोज पथ में "ext.example.com" शामिल हो।

अपने डीएचसीपी सर्वर और वीपीएन सर्वर पर एक DNS खोज पथ भेजें जो है:

corp.example.com।

(पुनर्निर्देशित मेजबान के साथ उपडोमेन, उसके बाद "।")

वैकल्पिक रूप से आप खोज पथ का उपयोग कर सकते हैं:

corp.example.com example.com।

हालाँकि, हम जिस वेब पेज पर जाते हैं, उसके लिए एक अतिरिक्त DNS लुकअप जोड़ने जा रहे हैं। चूंकि वे 99% समय में विफल हो जाएंगे, इसलिए यह केवल वेब सर्फिंग को धीमा करने वाला है।

वर्कस्टेशन और लैपटॉप पर आपको यह सुनिश्चित करने की आवश्यकता है कि उपडोमेन उनके DNS खोज पथ में शामिल है। इस तरह जब उपयोगकर्ता "गो" टाइप करता है, तो सॉफ्टवेयर इसे डोमेन में खोज लेगा।

हम इस उपडोमेन को हर तरह से शामिल करने के लिए मशीन के खोज पथ को कॉन्फ़िगर करना चाहते हैं, ताकि खोज पथ को संभवतः सेट किया जा सके:

मूल रूप से DNS खोज पथ डीएचसीपी के माध्यम से सेट नहीं किया जा सकता है। यह एक नया जोड़ा गया फीचर है और सभी डीएचसीपी क्लाइंट इसका समर्थन नहीं करते हैं। यहां तक ​​कि डीएचसीपी क्लाइंट जो इसका समर्थन करते हैं, उन्हें संशोधित करने की आवश्यकता है क्योंकि जब एक लैपटॉप (उदाहरण के लिए) एक इंटरनेट कैफे होता है, तो यह डीएचसीपी सर्वर से बात कर रहा है जिसे आप नियंत्रित नहीं करते हैं। जब एक लैपटॉप एक वीपीएन का उपयोग करता है, तो वीपीएन क्लाइंट सॉफ़्टवेयर वास्तव में डीएचसीपी का उपयोग नहीं करता है, लेकिन आमतौर पर कुछ तरीका है कि वीपीएन सर्वर उन सेटिंग्स को प्रसारित करता है जो आमतौर पर एक डीएचसीपी सर्वर से मिलेगा।

इसलिए आप इन सभी स्थानों में DNS खोज पथ सेट करना चाहते हैं:

  • डीएचसीपी सर्वर को डीएनएस खोज पथ विकल्प भेजना चाहिए
  • सांख्यिकीय रूप से कॉन्फ़िगर की गई मशीनों में उनका DNS खोज पथ सेट होना चाहिए
  • corp.example.comयदि डीएचसीपी सर्वर ने इसे पहले ही शामिल नहीं किया है, तो डीएचसीपी का उपयोग करने वाले ग्राहकों को अपने खोज पथ पर डोमेन को प्री-पेंड करने के लिए कॉन्फ़िगर किया जाना चाहिए ।

नीचे विभिन्न डीएचसीपी सर्वर और ऑपरेटिंग सिस्टम पर ऐसा करने के निर्देश दिए गए हैं।

DNS खोज पथ को शामिल करने के लिए DHCP सर्वर कॉन्फ़िगर करना:

  1. विंडोज डीएचसीपी निर्देश

करने के लिए

  1. ISC DHCP निर्देश

यदि खोज पथ केवल डोमेन है जो मशीन में होना चाहिए, तो:

option domain-name "corp.example.com";

यदि क्लाइंट खोज पथ की आपूर्ति करने के लिए RFC 3397 का समर्थन करते हैं, तो आप ऐसा कर सकते हैं, लेकिन यह अजीब है क्योंकि एक डेटा प्रकार के लिए कोई मूल समर्थन नहीं है जो DNS होस्ट्स का एक क्रम है, प्रत्येक डीएनएस में लंबाई-पूर्व-उप-प्रकार लेबल के रूप में एन्कोडेड है। रिकॉर्ड के एक सरणी के रूप में परिभाषित एक विकल्प के मूल्यों को लिखने का कोई तरीका नहीं है, जहां रिकॉर्ड में एक और रिकॉर्ड का एक सरणी होता है, इसलिए आप मैन्युअल रूप से चीजों को एन्कोड करने के लिए डेटा-स्ट्रिंग का उपयोग करने के लिए नीचे हैं।

option dns-search-domains code 119 = string;
option dns-search-domains concat(
    encode-int(4,1), "corp", encode-int(7,1), "example", encode-int(3,1), "com", encode-int(0,1),
    encode-int(7,1), "example", encode-int(3,1), "com", encode-int(0,1)
    );

जो (अनटाइटेड) एक दो आइटम खोज सूची उत्पन्न करना चाहिए।

  1. dnsmasq DHCP निर्देश

करने के लिए

वैधानिक रूप से कॉन्फ़िगर की गई मशीनों को कॉन्फ़िगर करना:

  1. खिड़कियाँ

करने के लिए

  1. लिनक्स / यूनिक्स

संपादित करें /etc/resolv.confऔर सुनिश्चित करें कि (1) "डोमेन corp.example.com" पहली पंक्ति है, (2) corp.example.comडोमेन को शामिल करने के लिए "खोज" पंक्ति को जोड़ें / संपादित करें , (3) एक "विकल्प ndotes: 2" लाइन जोड़ें अपने DNS सर्वर पर लोड कम करें।

domain corp.example.com
search corp.example.com exmaple.com
options ndots:2

DHCP क्लाइंट को कॉन्फ़िगर करना जब अन्य DHCP सर्वर पर काम करना हो

विंडोज, लिनक्स, आदि के लिए TODO भरें

चरण 7: परीक्षण, परीक्षण, परीक्षण!

अब उपयोगकर्ताओं को निर्दिष्ट करने में सक्षम होना चाहिए:

http: // go / foo http: //go.example/foo http://go.example.com/foo

वास्तव में, एक आत्मविश्वास परीक्षण के रूप में, आप सभी स्थितियों में उन URL का परीक्षण करना चाहेंगे:

( each OS you support ) * ( internal LAN / at an Internet cafe / while on the VPN )

चरण 8: अन्य सलाह

और अंत में, एक सलाह: यदि आपने इसका सही काम किया है, तब भी आपको उस http://go/fooलिंक पर काम न करने का जोखिम है जब कोई व्यक्ति उस कंप्यूटर पर टाइप करने की कोशिश करता है जिसे आपने DNS खोज को मजबूर करने के लिए कॉन्फ़िगर नहीं किया था अपने डोमेन को शामिल करने के लिए पथ। इसलिए, आपको पूर्ण URL का उपयोग करके लिंक प्रकाशित करना चाहिए http://go.example.com/foo:; और अपनी कंपनी के पीआर विभाग और अन्य को शिक्षित करने के लिए समय निकालकर हमेशा इसे इस तरह निर्दिष्ट करें।

या कम से कम उन्हें HTML में एनकोड करें ताकि लिंक टेक्स्ट में "गो" दिखाई दे, लेकिन वास्तविक HREF FQDN में चला जाता है:

<a href="http://go.example.com/lunch">go/lunch</a>

ऐसा करने के लिए पीआर विभाग में लोगों को पढ़ाना मुश्किल हो सकता है। आप बस उन्हें बताना चाहते हैं कि उन्हें लंबे संस्करण ( go.example.com) का उपयोग किसी भी चीज़ में करना होगा जो वे लिखते हैं क्योंकि लघु "गो / लंच" केवल दुर्घटना से काम करता है।

चरण 8: HTTPS

TODO: HTTPS के साथ कैसे काम करें (प्रमाणपत्र सही होने के लिए असंभव नहीं तो बहुत मुश्किल होने वाले हैं)।


2
यदि इसके लिए ग्राहकों को आपके विशिष्ट खोज पथ को सक्षम करने की आवश्यकता होती है, तो यह कभी उड़ान नहीं भरेगा। यदि आप वास्तव में ऐसा करना चाहते हैं, तो अपना छोटा TLD खरीदें - केवल $ 280k पर एक स्निप
Alnitak

1
मुझे यह समझाना चाहिए कि यह उद्यम उपयोगकर्ताओं के लिए है, सार्वजनिक सेवा के लिए नहीं।
टॉमऑन टाइम

6
हाय टॉम, जो हम आम तौर पर आपके प्रश्न के लिए सुझाव देते हैं, वह है प्रश्न पूछना, और फिर उत्तर के रूप में अपना समाधान पोस्ट करना। इस तरह इसे अपडाउन किया जा सकता है और इसे स्वीकार किया जा सकता है: serverfault.com/faq (`यह भी अपने सवाल पूछने और जवाब देने के लिए पूरी तरह से ठीक है, लेकिन आप खतरे में पड़ने का नाटक करते हैं: इसे प्रश्न के रूप में वाक्यांश दें।`)
मार्क हेंडरसन

1
और ... टॉम अब "यह एक सवाल नहीं है, यह सर्वरफैम मेमे से संबंधित नहीं है।" वाटर कूलर के लिए आपका स्वागत है। बहुत बढ़िया पोस्ट टॉम। +1।
जोसेफ केर्न

2
@TomOnTime शायद आप प्रश्न और उत्तर में "समस्या" और "समाधान" को विभाजित कर सकते हैं। जिससे हर कोई खुश हो जाए! धन्यवाद!
splattne

जवाबों:


3

इस प्रश्न को "उत्तर" के रूप में चिह्नित किया जाना चाहिए। इस तरह, /server//unanswered URL सही रहेगा। कृपया (पोस्ट) और इस सवाल का "जवाब" स्वीकार करें। धन्यवाद!

मेरा "उत्तर" यह होगा कि लिंक-शॉर्टिंग सेवा का निर्माण (या स्थापित करना) मृत-आसान है, और ऊपर दिए गए सभी हुप्स के माध्यम से कूदने के बजाय, बस एक वेब सर्वर पर एक स्थानीय लिंक-शॉर्टनर स्थापित करें जो "उत्तर दें"। example.com "और सुनिश्चित करें कि आपका DNS खोज example.com का जवाब देता है। इस तरह, आप आंतरिक URL को दुनिया में लीक नहीं करते हैं। (संभवतः मैं इस बिंदु को याद कर रहा हूं।)

विकल्प:

  • एक बहुत छोटी कंपनी, या कार्यसमूह के लिए, हर किसी से अपने पसंदीदा बुकमार्क पूछें और इंट्रानेट फ्रंट पेज पर इसे रखने के लिए कुछ जगह खोजें।

  • वैकल्पिक रूप से, विकी के रूप में अपनी छोटी कंपनी या समूह के लिए इंट्रानेट को तैनात करें, लोगों की मदद के लिए साझा हॉट-लिंक की एक आसान सूची के साथ जहां वे जाने की संभावना रखते हैं।

चीयर्स, -डैनी

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.