पृष्ठभूमि
हमारे वातावरण में हमारे पास एक लॉगिन स्क्रिप्ट है जो उपयोगकर्ताओं को नेटवर्क शेयरों से जोड़ने के लिए चलती है। जब तक कि हम अचानक से सर्वर के आईपी पते का उपयोग करके एसएमबी शेयरों में से एक से कनेक्ट करने में असमर्थ नहीं थे, तब तक मैक के सिएरा में अपग्रेड किए जाने तक यह त्रुटिपूर्ण रूप से काम करता था।
तीन विंडोज सर्वर हैं जिन्हें मैक को लॉगिन पर कनेक्ट करने की आवश्यकता है - एक आईपी पते 192.168.65.3 के साथ, एक आईपी पते 192.168.65.30 के साथ, और आईपी पते 192.168.65.25 के साथ अंतिम एक (यह एक Acronis प्रवेश कनेक्ट का उपयोग करके जोड़ता है) एएफपी)।
192.168.65.3 से पहला SMB शेयर बिना किसी समस्या के सफलतापूर्वक जुड़ता है, तब जब दूसरा SMB शेयर - 192.168.65.30 से कनेक्ट करने का प्रयास करता है - मैक कनेक्ट करने में विफल रहता है। अंततः Macs AFP शेयर - 192.168.65.25 से सफलतापूर्वक जुड़कर लॉगिन स्क्रिप्ट को पूरा करता है।
मैंने क्या किया
मुझे पता चला है कि दूसरे SMB सर्वर - server2 के होस्टनाम से कनेक्ट करने का प्रयास करते समय कोई समस्या नहीं है। कनेक्शन स्ट्रिंग का उपयोग smb://server2/share_name
पूरी तरह से काम करता है जहां smb://192.168.65.30/share_name
बिल्कुल भी काम नहीं करता है।
इसके बाद मैंने विंडसर्क का उपयोग करके पैकेटों को पकड़ने का प्रयास किया - मैंने फ़िल्टर सेट किया ip.src == 192.168.65.30 or ip.dst == 192.168.65.30
लेकिन जब मैंने शेयर से जुड़ने का प्रयास किया तो कोई पैकेट नहीं थे जो उस आईपी पते से / को भेजे गए थे।
इसलिए मैंने फ़िल्टर को हटा दिया और फिर से कनेक्ट करने का प्रयास किया - मैं देख सकता था कि नेटवर्क एड्रेस 192.168.65.255 पर पैकेट भेजे जा रहे थे ताकि आईपी एड्रेस 192.168.65.30 को हल करने के लिए इसे होस्ट करने के बजाय NetBIOS नाम सेवा (NBNS) का उपयोग करते हुए होस्टनाम का उपयोग किया जाए। एक आईपी पते के रूप में। जब यह IP को दूसरे IP में हल करने में विफल रहा, तो कनेक्ट करने की प्रक्रिया विफल हो गई।
TLDR
सिएरा को लगता है कि एक आईपी एड्रेस वास्तव में एसएमबी कनेक्शन के दौरान एक होस्टनाम है और इसे आईपी पते पर हल करने का प्रयास किया जा रहा है, जो स्पष्ट रूप से असफल है। यह सभी आईपी पतों को इस तरह नहीं मानता है क्योंकि एक ही सबनेट पर एक और आईपी सफलतापूर्वक कनेक्ट होता है।
यह सभी मैक पर होता है जो सिएरा में अपग्रेड किए जाते हैं।
इसलिए...
MacOS इस IP पते को होस्टनाम के रूप में क्यों मान रहा है? क्या कोई ऐसा तरीका है जिससे मैं इसे सामान्य आईपी पते के रूप में मान सकता हूं?
अद्यतन करें
मैंने देखा है कि थोड़ी देर (शायद 10 मिनट?) मशीनों के चालू होने और लॉग इन होने के बाद, यह वास्तव में आईपी पते से सफलतापूर्वक जुड़ जाएगा जो समस्याएँ पैदा कर रहा है।
अपडेट २
इसलिए - मैंने देखा है कि मैं दूसरे आईपी पते से जुड़ने में सक्षम हूं - 192.168.65.30 - अगर मैं वर्तमान में पहले आईपी पते से जुड़ा नहीं हूं - 192.168.65.3 - और इसके विपरीत।
दूसरे कनेक्शन पर यह पहले सर्वर पर शेयर नाम से कनेक्ट करने का प्रयास करता है जो इससे जुड़ा था। उदाहरण के लिए, यदि मैं smb://192.168.65.3/share_1
पहले कनेक्ट करता हूं तो कनेक्ट करने का प्रयास smb://192.168.65.30/share_2
करता हूं, पैकेट कहते हैं कि यह वास्तव में कनेक्ट करने का प्रयास smb://192.168.65.3/share_2
करता है, जो मौजूद नहीं है, और इसलिए कनेक्शन स्थापित होने में विफल रहता है।
वास्तव में, मैंने पाया है कि किसी भी दूसरे SMB कनेक्शन का प्रयास विफल रहता है! यह सिएरा में अपग्रेड करके और फिर दो अलग-अलग एसएमबी शेयरों से जुड़ने का प्रयास करने के लिए प्रजनन योग्य है।
अपडेट ३
नाम रिज़ॉल्यूशन एक रेड हेरिंग था - अब मैं इस मुद्दे को दूसरे एसएमबी सर्वर से कनेक्शन खोलने से संबंधित जानता हूं। सिएरा पहले कनेक्शन के लिए उसी आईपी पते का उपयोग करने का प्रयास करेगा, और दूसरे कनेक्शन में निर्दिष्ट शेयर नाम। होस्टनाम का उपयोग करने के लिए एक वर्कअराउंड होगा, हालांकि वीपीएन का उपयोग करते हुए कार्यालय के बाहर से कनेक्ट होने पर हमारे लिए इससे जुड़े मुद्दे हैं।