Win10 IoT पर सॉफ्टएप पर मल्टिकास्ट डीएनएस


2

जब मैं अपने Win10 IoT बोर्ड को वाईफाई से जोड़ता हूं, तो मैं macOS से इसके वेब इंटरफेस से कनेक्ट कर सकता हूं http://minwinpc.local:8080। होस्टनाम का रिज़ॉल्यूशन मल्टीकास्ट डीएनएस के माध्यम से होता है, जैसा कि चलकर देखा जा सकता है dns-sd -q minwinpc.local.

Win10 IoT बोर्ड की ऑनबोर्डिंग के दौरान समान व्यवहार देखा जा सकता है। इस मोड में, एक एक्सेस प्वाइंट जैसे AJ_SoftAPSsidबोर्ड द्वारा विज्ञापित किया जाता है। इसे कनेक्ट करने के बाद, एक बार और, dns-sd -q minwinpc.local.अपने आईपी में हल हो जाता है, और http://minwinpc.local:8080मैकओएस से ठीक काम करने के लिए उपयोग होता है ।

चीजें दिलचस्प हो जाती हैं, हालांकि, जब मैं Win10 IoT बोर्ड को मैन्युअल रूप से सॉफ्टएप मोड में सेट करता हूं, उदाहरण के लिए कस्टम यूडब्ल्यूपी ऐप का उपयोग करके (पॉवर्सशेल के माध्यम से, मुझे सीधे होस्टन नेटवर्क्स का उपयोग करने का तरीका नहीं मिला है, यह केवल वाईफाई डायरेक्ट का समर्थन करता है)।

WiFiDirectAdvertisementPublisher^ p;
p = ref new WiFiDirectAdvertisementPublisher();
p->Advertisement->ListenStateDiscoverability = 
    WiFiDirectAdvertisementListenStateDiscoverability::Intensive;
p->Advertisement->IsAutonomousGroupOwnerEnabled = true;
p->Advertisement->LegacySettings->IsEnabled = true;
p->Advertisement->LegacySettings->Ssid = L"My-SSID";
PasswordCredential^ password = ref new PasswordCredential();
password->Password = L"123456789";
p->Advertisement->LegacySettings->Passphrase = password;
p->Start();

फिर मैं ऐप को ऑटोस्टार्ट ( iotstartup add headless) और रिबूट में जोड़ता हूं ।

जब मैं सामान्य वाईफाई का उपयोग करके डिवाइस तक पहुंचता हूं, तो सब कुछ पहले की तरह ही व्यवहार करता है। हालाँकि, जब मैं कस्टम सॉफ्टएप से जुड़ता हूं, तो मैं अब पते को हल नहीं कर सकता, क्योंकि मल्टीकास्ट डीएनएस अब विज्ञापन नहीं करता है। दिलचस्प है, अगर मैं एक समर्पित विंडोज क्लाइंट (एक मैक पर वीएम नहीं) का उपयोग करता हूं, तो मैं अभी भी http://minwinpc.local:8080और दोनों का उपयोग कर सकता हूं http://minwinpc:8080MSDN लेख में जुड़े हुए के अनुसार https://stackoverflow.com/a/45619667 , इस अपेक्षित व्यवहार ( [...] इसके अलावा, SoftAP DNS रिज़ॉल्यूशन प्रदान नहीं करता है। [...] )

DNS रिज़ॉल्यूशन वापस पाने के लिए एक समाधान ICS चालू करना है। जब मैं IoT विंडोज डिवाइस पोर्टल से ऐसा करता हूं, तो रिबूट करें, और सॉफ्टओएस को macOS के साथ मिलाएं, वास्तव में मुझे DNS सर्वर के रूप में 192.168.137.1 (IoT बोर्ड) मिलता है। मुझे भी सर्च डोमेन मिलता है mshome.net

ICS चालू होने के साथ, व्यवहार दो तरह से बदलता है:

• सबसे पहले, यूनिकैस्ट डीएनएस अब काम करने लगता है (यूनिकस्ट डीएनएस पहले काम नहीं कर रहा था, न तो शुरुआती AJ_SoftAPSsidवाईफाई पर और न ही नियमित वाईफाई पर)।

dig minwinpc.local. @192.168.137.1

;; QUESTION SECTION:
;minwinpc.local.    IN  A

;; ANSWER SECTION:
minwinpc.       0   IN  A   192.168.137.1
minwinpc.       0   IN  A   172.20.10.7

इसके अतिरिक्त, minwinpc.mshome.net.विज्ञापन भी किया जाता है।

;; QUESTION SECTION:
;minwinpc.mshome.net.      IN  A

;; ANSWER SECTION:
minwinpc.mshome.net.    0  IN  A  192.168.137.1

इसका मतलब है कि मैं अब http://minwinpc.mshome.net:8080macOS से एक्सेस कर सकता हूं । इसका यह भी अर्थ है कि मैं http://minwinpc.local:8080VMware में विंडोज से पहुंच सकता हूं । दोनों प्लेटफार्मों के लिए, मैं भी उपयोग कर सकता हूं http://minwinpc:8080क्योंकि खोज डोमेन इसे स्वचालित रूप से रीडायरेक्ट कर रहा है http://minwinpc.mshome.net:8080

हालाँकि, यहाँ बड़ी समस्या यह है कि http://minwinpc.local:8080यह macOS से काम नहीं करता है, इसका कारण यह है कि .localडोमेन को मल्टीकास्ट डीएनएस के माध्यम से नियंत्रित किया जाता है।

• ICS के साथ दूसरा बदलाव मल्टीकास्ट DNS के बारे में है। वास्तव में, dns-sd -q minwinpc.mshome.net.आईसीएस के साथ हल होता है, लेकिन फिर dns-sd -q minwinpc.local.भी यह बिल्कुल भी काम नहीं करता है।

जब मैं अपनी खुद की सेवा के साथ पंजीकृत करता हूं DnssdServiceInstance, हालांकि, यह डोमेन पर विज्ञापित हो जाता है local., जब dns-sd -B _mycustom._tcpइसके बजाय ब्राउज्ड किया जाता है mshome.net.

जब मैं सेवा को सौंपे गए नाम को हल करता हूं dns-sd -L myname _mycustom._tcp, हालांकि, मुझे minwinpc.local.डोमेन मिलता है , हालांकि ^ _ ^ myname._mycustom._tcp.local. can be reached at minwinpc.local.:12345 (interface 5):।

जो समस्याग्रस्त है, क्योंकि minwinpc.local.मल्टीकास्ट डीएनएस ( minwinpc.mshome.net.इसके बजाय) में ठीक से विज्ञापन नहीं किया गया है, और local.डोमेन के लिए मैकोस द्वारा यूनिकैस्ट डीएनएस का पालन नहीं किया जाता है ।


अंततः, यह सब इस सवाल से उब जाता है:

  • सॉफ्टएफ़ इंटरफ़ेस पर मैं स्थानीय मल्टीकास्ट डीएनएस कैसे काम कर सकता हूं?

मल्टीकास्ट डीएनएस शुरुआती AJ_SoftAPSsidऑनबोर्डिंग नेटवर्क पर ठीक काम करता है , और अगर मैं बोर्ड को अपने मैकबुक के समान वाईफाई से जोड़ता हूं तो यह ठीक काम करता है। यह बिना ICS के सॉफ्टएप पर काम नहीं करता है। आईसीएस के साथ, यह एक अलग डोमेन पर विज्ञापन करता है local


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


1
अच्छी तरह से शोध और अच्छी तरह से प्रलेखित प्रश्न के लिए धन्यवाद। क्या आपने macOS में यूनिकास्ट डीएनएस खोज डोमेन में .local को जोड़ने का प्रयास किया था? ऐसा लगता है कि आपका Win10 IoT बोर्ड mDNS के माध्यम से minwinpc.local का विज्ञापन नहीं कर रहा है, लेकिन जब यह एक यूनिकैस्ट DNS सर्वर के रूप में कार्य करता है, तो यह एक सही A रिकॉर्ड के साथ minwinpc.local का जवाब देता है। मैक के खोज डोमेन में .local को जोड़ने से मैक को देखने की कोशिश करनी चाहिए। mDNS के डिफ़ॉल्ट के अलावा यूनिकस्ट DNS के माध्यम से।
स्पाइफ

क्या आपके पास कोई स्रोत है जो दस्तावेज़ों को जोड़ रहा है। सर्च डोमेन बलों के रूप में। मैंने इसे मैन्युअल रूप से जोड़ा, mshome.net को ओवरराइड किया, लेकिन यह अभी भी mDNS के माध्यम से कनेक्ट करने का प्रयास करता है जो विफल रहता है।
इतन

1
RFC 6762, जो कि Apple के Bonjour इंजीनियरों द्वारा लिखा गया था, का सुझाव है कि।
स्पाइ

ऐसा लगता है कि अधिक कदम आवश्यक हैं: Technet.microsoft.com/en-us/library/cc708087(v=ws.10).aspx पर "एक ग्राहक कंप्यूटर पर यूनिकास्ट को सक्षम करने के लिए। " 10.3 और विंडोज छोटे व्यवसाय सर्वर 2003 नेटवर्क के लिए उच्च ग्राहक ")। मैं क्लाइंट सेटिंग्स को यहाँ समायोजित नहीं कर सकता क्योंकि मैं सभी ग्राहकों को नियंत्रित नहीं करता, और iOS ग्राहकों के लिए भी यही समस्या है। मुझे आश्चर्य है: सॉफ्टएप पर शुरुआती "ए जे" में सबकुछ ठीक क्यों है, लेकिन मेरे खुद के सॉफ्टएप में ब्रेकिंग शुरू होती है? विंडोज में स्पष्ट रूप से सॉफ्टपैड के माध्यम से mDNS की कार्यक्षमता है ...
इतन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.