NAT और UDP उत्तर देते हैं


20

कृपया जाँच करें।

अगर मैं मशीन A से पीछे NDP मशीन B के पोर्ट N, जहां मशीन B NAT (इंटरनेट पर कहीं और) के बाहर है, से UDP पैकेट भेज सकता हूं, तो क्या मैं यथोचित अपेक्षा कर सकता हूं कि NAT, मशीन B से प्राप्त UDP पैकेट को पोर्ट N पर वापस भेज दे। पोर्ट ए पर मशीन एन, नेट पर अग्रेषित मैनुअल पोर्ट की आवश्यकता के बिना?

जवाबों:


21

केवल अगर मूल आउटगोइंग डेटाग्राम का स्रोत पोर्ट भी पोर्ट N था, और अगर NAT ने स्रोत पोर्ट को फ्लोट करने का विकल्प नहीं चुना।

यानि मशीन A से पहला UDP डेटाग्राम आपके LAN पर इस तरह दिखता है:

       Source IP: MachineAPrivate  
     Source Port: PortA     <-- note this is typically different than the destination port  
  Destination IP: MachineBPublic  
Destination Port: PortN  

फिर, एनएबी द्वारा आउटबाउंड दिशा में अनुवाद किए जाने के बाद, यह इस तरह दिखता है:

       Source IP: NATPublic  
     Source Port: PortC   <-- note this may or may not be the same as "PortA" above  
  Destination IP: MachineBPublic  
Destination Port: PortN  

अब, जब मशीन B उत्तर देता है, तो उत्तर आम तौर पर इस तरह दिखता है:

       Source IP: MachineBPublic  
     Source Port: PortN  
  Destination IP: NATPublic  
Destination Port: PortC  

इसके बाद, यह इनबाउंड NAT अनुवाद प्रक्रिया से गुजरने के बाद:

       Source IP: MachineBPublic  
     Source Port: PortN  
  Destination IP: MachineAPrivate  
Destination Port: PortA  

तो, यदि IF मशीन A उसी स्रोत पोर्ट से गंतव्य पोर्ट ("पोर्ट N") के रूप में फ़्रेम भेजता है, और यदि NAT उस स्रोत पोर्ट को संरक्षित करने में सक्षम है (यानी जब संभव हो तो स्रोत पोर्ट को संरक्षित करने के लिए इसे कॉन्फ़िगर किया गया है, और वह स्रोत पोर्ट उपयोग में नहीं है), तो आप मशीन ए को वापस पाने के लिए "पोर्ट एन" के लिए एक जवाब की उम्मीद कर सकते

यहाँ उचित NAT UDP व्यवहार पर आधिकारिक संदर्भ दिया गया है:
RFC 4787 / BCP 127: यूनिकैस्ट UDP के लिए नेटवर्क एड्रेस ट्रांसलेशन (NAT) व्यवहार आवश्यकताएँ


3

बंद करें, लेकिन मशीन बी को वास्तव में प्राप्त स्रोत पते और पोर्ट नंबर को देखने की जरूरत है, जो एन से अलग हो सकता है।

मशीन ए पर एनएटी उसी पोर्ट एन का उपयोग नहीं कर सकता है जो मशीन ए ने भेजा था। (कल्पना करें कि C के पीछे उसी NAT को भी पोर्ट N पर भेजा जा रहा है: वे दोनों इसका उपयोग नहीं कर सकते।) तो मशीन B एक अलग स्रोत पोर्ट देख सकता है, एम। लेकिन अगर NAT ऐसा करता है, तो उसे वापस भेजे गए ट्रैफ़िक को स्वीकार करना चाहिए। पोर्ट M और स्वचालित रूप से इसे वापस मशीन B पर N में मैप करें।

दूसरे शब्दों में, जब तक मशीन B उसे प्राप्त पैकेट में दिए गए स्रोत पते और स्रोत पोर्ट पर वापस भेजती है, तब तक आप मूल स्रोत पर वापस जाने के लिए वापसी पैकेट की यथोचित अपेक्षा कर सकते हैं। यह मानता है कि वापसी पैकेट को कुछ समय के भीतर भेजा जाता है, क्योंकि स्वचालित NAT नियम कुछ मिनटों के बाद समय समाप्त हो जाते हैं।


-1

मैं यह उम्मीद नहीं करूंगा।

आपके पास NAT के पीछे IP गुणा हो सकती है, इसलिए आपको यह चुनने की आवश्यकता है कि इसे आगे भेजना चाहिए। NAT के बाहर केवल राउटर IP दिखाई देता है और आंतरिक NAT IP दिखाई नहीं देते हैं।

यूडीपी कनेक्शन नहीं बनाता है, लेकिन इसका सिर्फ एक नेटवर्क है जो नेटवर्क पर यात्रा कर रहा है।

पोर्ट भेजने और प्राप्त करने वाले पोर्ट नंबर के बीच भी अंतर है।


आप सही हैं कि यूडीपी "कनेक्शन नहीं बनाता है" हालांकि स्रोत और गंतव्य पोर्ट्स एक साथ जोड़े गए हैं जो वास्तव में NAT को विशिष्ट रूप से पहचानने की अनुमति देता है कि पैकेटों को भेजने के लिए NAT के पीछे कौन सा IP है
portforwardpodcast
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.