2011-09-29 5 views
11

मैं openfire में सर्वर सेटिंग्स को अचेत एक दृष्टि डाली है, और इस बयान वहाँ से:क्यों एक STUN सर्वर की जरूरत है दो अलग सार्वजनिक IP पते

"आदेश में एक STUN सर्वर, दो अलग अलग सार्वजनिक आईपी पतों के रूप में कार्य करने के लिए एक ही मशीन पर, प्रत्येक आईपी के लिए दो अलग-अलग बंदरगाहों की आवश्यकता होती है। "

मैंने Google पर शोध किया है, और आम तौर पर स्टन सर्वर को दो सार्वजनिक आईपी की आवश्यकता होती है, इसके लिए क्या कारण है?

उत्तर

6

क्योंकि कुछ दुर्लभ मामलों में, एनएटी अनुवाद का व्यवहार लक्ष्य आईपी पते का एक कार्य है। मतलब, आप 'पिंग' दो अलग-अलग IP पते चाहिए नेट की सटीक व्यवहार को खोजने के लिए (यह नहीं लक्ष्य आईपी पते की निर्भर या करता है?)

आप दो अलग-अलग बंदरगाहों के साथ 'पिंग' दो बार एक ही सर्वर हैं, जो इस मामले को ठीक से कवर नहीं करेगा (यानी, आप अपने सभी अड्डों को कवर नहीं करेंगे)।

पीएस .: दो आईपी पते एक ही सर्वर पर होने की आवश्यकता नहीं है, यह विभिन्न सर्वर हो सकता है।

+2

अलास, क्लासिक स्टंड कार्यान्वयन [समर्थन नहीं करता है] (http://sourceforge.net/tracker/?func=detail&aid=1055306&group_id=47735&atid=450612) दो सर्वरों पर दो आईपी पते। दो आईपी एक ही एनआईसी पर हो सकते हैं या नहीं, लेकिन स्टंड दोनों को बांधने की कोशिश करता है, इसलिए वे एक ही सर्वर पर होना चाहिए। –

1

मुझे लगता है कि एनएटी के प्रकार की पहचान करने की आवश्यकता है - कुछ एनएटी उसी स्रोत आईपी पते का उपयोग करेंगे और पोर्ट नंबर के माध्यम से सत्र आईडी को एन्कोड करेंगे (मुझे लगता है कि इसे शंकु एनएटी कहा जाता है लेकिन यकीन नहीं है) , कुछ एनएटी सत्र आईडी को एन्कोड करने के लिए स्रोत आईपी और पोर्ट के संयोजन का उपयोग करेंगे। STAT सर्वर को उत्तर देने की आवश्यकता क्लाइंट को एनएटी प्रकार के आधार पर अलग है।

13

पी 2 पी कनेक्टिविटी स्थापित करने के प्रयास के लिए, STUN बाध्यकारी अनुरोध और STUN सेवा के प्राथमिक पते (आईपी और पोर्ट) से प्रतिक्रिया/वास्तव में महत्वपूर्ण है। इस अनुरोध के प्रतिक्रिया निकाय में लौटाया गया मैप किया गया पता रिमोट नोड को पास किया गया है (एक्सएमपीपी या अन्य सेवा के माध्यम से) जो स्थानीय ग्राहक सीधे संचार स्थापित करने का प्रयास कर रहा है।

एसटीयूएन सेवा सुनने वाला दूसरा आईपी और पोर्ट एनएटी पोर्ट मैपिंग व्यवहार और एनएटी फ़िल्टरिंग व्यवहार को निर्धारित करने के लिए उपयोगी है।

वैकल्पिक आईपी: सेवा पर बंदरगाह के लिए बाध्यकारी अनुरोध करके, एक ग्राहक यह पता लगा सकता है कि उसके एनएटी में स्थानीय बंदरगाहों के लिए लगातार मैपिंग अर्थशास्त्र है या नहीं। यदि वह प्रत्येक परीक्षण के लिए अलग-अलग पोर्ट मैपिंग मान प्राप्त करता है, तो क्लाइंट निष्कर्ष निकाल सकता है कि यह "सममित एनएटी" के पीछे है - जो पी 2 पी के लिए सबसे कठिन है।

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

मानचित्रण व्यवहार और फ़िल्टरिंग परीक्षण केवल बाद के पी 2 पी कनेक्शन के लिए सीमित जानकारी प्रदान करते हैं। एक सममित एनएटी को निर्धारित करने के मामले में मेजबान और इंटरनेट के बीच है, कुछ कार्यान्वयन एनएटी को प्रत्येक बाध्यकारी प्रतिक्रिया में बंदरगाह मूल्य के लगातार वृद्धिशील मान के लिए देख सकते हैं। (उदाहरण के लिए STUN सेवा द्वारा मनाया गया बाहरी बंदरगाह एक से बढ़ता है)। इस प्रकार, ग्राहक रिमोट क्लाइंट के लिए पहले बाध्यकारी अनुरोध से वापस मैप किए जाने के बजाय एक आईपी और अनुमानित पोर्ट नंबर प्रदान कर सकता है। या ग्राहक लॉगिंग के लिए इस व्यवहार/फ़िल्टरिंग परीक्षण का उपयोग कर सकते हैं। या सममित एनएटी की स्थिति में स्वचालित रूप से एक रिले आवंटित करने के लिए।

+1

इस स्पष्टीकरण ने मुझे बहुत मदद की।अगर मैं सही ढंग से समझता हूं तो इसका मतलब है कि STUN सर्वर पर दूसरा आईपी केवल तभी नियोजित किया जाएगा जब क्लाइंट का STUN अनुरोध इसका उपयोग करने के लिए इंगित करता है। मैं वेबआरटीसी के मामले में STUN के बारे में पतला रहा हूं और (वायरशर्क के माध्यम से) मुझे लगता है कि स्टैन सर्वर से कोई भी माध्यमिक आईपी मेरे पास नहीं पहुंचता है। मेरा सिद्धांत यह इसलिए है क्योंकि दूसरा आईपी पुष्टि करेगा कि यूडीपी छेद पंचिंग सफल हो रही है और वेबआरटीसी में, यदि यह सफल नहीं होता है, तो वे उम्मीदवार किसी भी तरह विफल होने जा रहे हैं, इसलिए अतिरिक्त जांच का कोई परिणाम नहीं है। क्या मेरी समझ यहां सही है? – Ternary

+2

@ टर्नरी - दूसरा आईपी केवल एनएटी प्रकार (यानी डायग्नोस्टिक्स और डीबगिंग) निर्धारित करने के लिए आवश्यक है, वास्तविक छेद पंचिंग के लिए नहीं। ग्राहक अपने आईपी/पोर्ट मैपिंग के लिए सर्वर से "बाध्यकारी अनुरोध" भेज सकता है। ये बाध्यकारी अनुरोध इंगित कर सकते हैं कि प्रतिक्रिया सर्वर के वैकल्पिक आईपी और/या वैकल्पिक बंदरगाह से आ सकती है। Stun.stunprotocol.org पर क्लाइंट अनुरोधों का 99% प्राथमिक आईपी और पोर्ट 3478 से सरल बाध्यकारी अनुरोध हैं। कुछ हद तक ग्राहक बंदरगाह पुनर्निर्देशन विशेषता का उपयोग करते हैं। कुछ एसआईपी फोन रहे हैं जो दोनों बंदरगाहों का उपयोग करना चाहते हैं। – selbie

संबंधित मुद्दे