नेटवर्क सिस्टम पर चलने वाली सेवाएँ
नेटवर्क सेवा वह काम है जो एक कंप्यूटर नेटवर्क पर दूसरों के लिए करता है। माँगने वाला कंप्यूटर क्लाइंट (client) है। काम करने वाला कंप्यूटर सर्वर (server) है।
आम सेवाएँ:
- वेब सेवा: ब्राउज़र को वेब पेज भेजती है।
- मेल सेवा: ईमेल जमा करती है और आगे भेजती है।
- फ़ाइल सेवा: साझा फ़ाइलें एक जगह रखती है।
- नाम सेवा (DNS): वेबसाइट के नाम को अंकों वाले पते में बदलती है।
- पता सेवा (DHCP): हर नए डिवाइस को अपने आप पता देती है।
- प्रिंट सेवा: एक प्रिंटर को कई लोग इस्तेमाल करते हैं।
सेवा क्यों? एक मज़बूत सर्वर कई क्लाइंट को सँभालता है, फ़ाइलें एक सुरक्षित जगह रहती हैं, और अपडेट व बैकअप एक ही बार करने पड़ते हैं।
नेटवर्क सर्वर बनाना
सर्वर परतों में बनता है। हर परत नीचे वाली परत पर टिकी होती है।
- हार्डवेयर: ऐसा कंप्यूटर जिसमें काफ़ी प्रोसेसर, मेमोरी, डिस्क और नेटवर्क कार्ड हो। सर्वर दिन भर चलते हैं, इसलिए बिजली और ठंडक ठीक चाहिए।
- ऑपरेटिंग सिस्टम (OS): जैसे Linux या Windows Server। यह प्रोग्राम चलाता है और नेटवर्क कार्ड सँभालता है।
- सेवा सॉफ़्टवेयर: वेब सर्वर प्रोग्राम, मेल सर्वर प्रोग्राम, फ़ाइल साझा करने का प्रोग्राम। असली काम यही करता है।
- सेटिंग: पक्का IP पता, सेवा का पोर्ट, उपयोगकर्ता नाम और किसको क्या करने की छूट है।
- फ़ायरवॉल और सुरक्षा: सिर्फ़ ज़रूरी पोर्ट खोलो, सॉफ़्टवेयर अपडेट रखो, मज़बूत पासवर्ड लगाओ।
- जाँच और बैकअप: क्लाइंट कंप्यूटर से माँगकर देखो, लॉग देखो, और डेटा की कॉपी सुरक्षित जगह रखो।
पोर्ट क्या है?
IP पता कंप्यूटर को ढूँढता है। पोर्ट नंबर (port number) उस कंप्यूटर पर सेवा को ढूँढता है। सुरक्षित वेब के लिए 443, सादे वेब के लिए 80 और मेल भेजने के लिए 25 होता है। फ़ायरवॉल (firewall) हर संदेश देखता है और उसका पोर्ट खुला हो तभी जाने देता है।
नेटवर्क एप्लीकेशन बनाना
नेटवर्क एप्लीकेशन में दो प्रोग्राम होते हैं: क्लाइंट प्रोग्राम और सर्वर प्रोग्राम। वे संदेश भेजकर बात करते हैं।
बनाने के चरण:
- काम तय करो: जैसे कक्षा के अंक बताने वाली सेवा।
- संदेश का रूप तय करो (छोटा प्रोटोकॉल): क्लाइंट भेजे GET marks roll=12, सर्वर जवाब दे OK marks=78 या ERROR not found।
- सर्वर लिखो: वह एक पोर्ट पर इंतज़ार करता है, हर सवाल पढ़ता है, जवाब ढूँढता है और भेजता है।
- क्लाइंट लिखो: वह जुड़ता है, सवाल भेजता है, जवाब दिखाता है।
- गड़बड़ सँभालो: जवाब न आना, गलत सवाल, एक साथ बहुत लोग।
- जाँच और सुरक्षा: सही और गलत दोनों सवाल आज़माओ, जाँचो कि किसे छूट है, और क्लाइंट की भेजी बात पर आँख मूँदकर भरोसा मत करो।
दोनों प्रोग्राम एक ही रूप मानें, वरना वे एक-दूसरे को समझ नहीं पाएँगे।
करके देखो: अपने नेटवर्क के दरवाज़े खोजो
घर पर तीन सेवाओं की सूची बनाओ जो तुम इस्तेमाल करते हो: कोई वेबसाइट, वीडियो कॉल और फ़ोटो साझा करना। हर एक में बताओ कि क्लाइंट कौन है और सर्वर कौन। फिर 3D में खेलो: फ़ाइल पोर्ट बंद करके फ़ाइल का सवाल भेजो। बताओ किसने रोका। आखिर में एक काल्पनिक 'लंच मेन्यू' सेवा के लिए दो पंक्तियों का संदेश-रूप लिखो: एक पंक्ति सवाल की, एक जवाब की।
मुख्य सूत्र और परिभाषाएँ
- सेवा = क्लाइंट की माँग + सर्वर का जवाब
- पता कंप्यूटर ढूँढता है, पोर्ट सेवा ढूँढता है
- सर्वर की परतें: हार्डवेयर, OS, सेवा सॉफ़्टवेयर, सेटिंग
- आम पोर्ट: 80 वेब, 443 सुरक्षित वेब, 25 मेल भेजना, 53 नाम
- फ़ायरवॉल नियम: सिर्फ़ ज़रूरी पोर्ट खोलो
हल किए गए उदाहरण
1. एक स्कूल चाहता है कि बच्चे वेबसाइट पर सूचनाएँ पढ़ें। कौन सी सेवा और (सुरक्षित लिंक का) कौन सा आम पोर्ट चाहिए?
वेब सेवा। सुरक्षित वेब पेज पोर्ट 443 इस्तेमाल करते हैं, इसलिए फ़ायरवॉल में 443 खुला रखना होगा।
2. नया सर्वर लगा दिया, पर क्लाइंट उसका वेब पेज नहीं खोल पा रहा। OS और वेब सॉफ़्टवेयर लगे हैं। तीन बातें जाँचो।
1) सर्वर का IP पता सही है और वेब सॉफ़्टवेयर चल रहा है। 2) वेब पोर्ट सही सेट है। 3) फ़ायरवॉल में वेब पोर्ट खुला है। हर सुधार के बाद क्लाइंट से जाँचो।
3. बस का समय बताने वाली सेवा के लिए एक आसान संदेश-रूप लिखो। एक सवाल और दो संभावित जवाब दो।
सवाल: GET bus route=5। जवाब: OK time=07:45 या ERROR no such route। दोनों प्रोग्राम इन्हीं शब्दों पर सहमत हैं।
आम गलतियाँ
- सर्वर और सेवा को एक ही समझना। एक सर्वर पर कई सेवाएँ चल सकती हैं, हर एक अपने पोर्ट पर।
- 'सुरक्षा के लिए' सारे पोर्ट खोल देना। सिर्फ़ ज़रूरी पोर्ट खोलो, वरना हमलावर को ज़्यादा दरवाज़े मिलते हैं।
- क्लाइंट कंप्यूटर से जाँच करना भूल जाना। सर्वर अपनी मशीन पर चल सकता है पर दीवार के कारण बाहर से न पहुँचे।
- क्लाइंट और सर्वर का संदेश-रूप अलग रखना। तब वे एक-दूसरे को समझ नहीं पाते।