विंडोज 10 - NAT - पोर्ट फ़ॉरवर्डिंग और IP मस्कारा


13

मैं विंडोज़ 10 में iptables कार्यक्षमता प्राप्त करने का एक तरीका ढूंढ रहा हूं। मैंने IP रूटिंग को सक्षम किया और मुझे tcp डेटा को किसी अन्य होस्ट (पोर्ट 8080) पर अग्रेषित करने की आवश्यकता है और फिर IP को मस्कारा लगाते हुए उसकी प्रतिक्रिया को आगे बढ़ाया। लिनक्स में मैं निम्नलिखित का उपयोग करके ऐसा करने में सक्षम था (जहां $ 1 = <आंतरिक आईपी>, $ 2 = 80, $ 3 = 8080, $ 4 = tcp)

iptables -t nat -A PREROUTING -p $4 --match multiport --dports $2 -j DNAT --to-destination $1:$3 
iptables -A FORWARD -p $4 --match multiport --dports $2 -d $1 -j ACCEPT
iptables -t nat -A POSTROUTING -j MASQUERADE

क्या विंडोज 10 में समान कार्यक्षमता प्राप्त करने का एक तरीका है?


शायद एक उत्तर के लिए बहुत कम है और मुझे नहीं पता कि क्या यह अभी भी विंडोज़ 10 के लिए वैध है। पोर्ट फॉरवर्डिंग इस उत्तर की जाँच करें । विंडोज़ में संदेश भेजना इंटरनेट कनेक्शन शेयरिंग (ICS) कहलाता है , इस उत्तर को देखें
राडा

नमस्कार, आपके इनपुट के लिए धन्यवाद। मैं netsh का उपयोग करने की कोशिश की, लेकिन यह काम करने के लिए प्रतीत नहीं होता है (हो सकता है क्योंकि मुझे वाइल्डकार्ड होने के लिए श्रवण की आवश्यकता है)। आईसीएस के लिए मुझे बिल्कुल यकीन नहीं है कि यह कैसे काम करेगा (क्या मुझे दूसरे एडेप्टर की आवश्यकता होगी? यदि मैं उन्हें पुल करता हूं तो मैं आईसीएस का उपयोग नहीं कर सकता)
ओरस्टिस पी।

शायद आप अपने पीसी पर netcat का उपयोग कर सकते हैं। यह एक पोर्ट पर सुनेगा और दूसरे पोर्ट पर भेजेगा। आईपी ​​बीच में आपकी मशीन का आईपी होगा।
TJJ

2
@OrestisP। netsh interface portproxy add v4tov4 listenport=80 connectaddress=127.0.0.1 connectport=8080अगर मेरे पास समय हो तो चेक करें कि मैं आपके आईपीटैबल्स को नेटश में अनुवाद करने की कोशिश करूंगा। अपनी पसंद के पते के साथ 127.0.0.1 को बदलें
ज़ालमी

जवाबों:


16

Windows netshIPv4 पर व्यवस्थापकों को ipv6 ट्रैफ़िक की अनुमति देने के लिए एक प्रॉक्सी सेटअप कर सकता है। Netsh के पास ipv4 को ipv4 के लिए एक प्रॉक्सी कॉन्फ़िगर करने का विकल्प भी है।

अपने सेटअप के उपयोग के लिए आप जिस पते netsh interface portproxy add v4tov4 listenport=80 connectaddress=127.0.0.1 connectport=8080के 127.0.0.1साथ प्रॉक्सी करना चाहते हैं, उसकी जगह ले लें ।

यहाँ कमांड पर थोड़ा ब्रेकडाउन है।

netsh interface portproxyइंटरफ़ेस का चयन करता है जो सुरंगों को संभालता है। add v4tov4IPv4 सुरंग के लिए एक ipv4 बनाने के लिए। listenport=80पोर्ट के लिए आप ग्राहकों को कनेक्ट करना चाहते हैं। connectaddress=127.0.0.1वह दूरस्थ पता है जिसे क्लाइंट के लिए अनुमानित किया जाएगा। connectport=8080रिमोट पोर्ट है।

आप यह भी उपयोग कर सकते हैं listenaddress=यदि आप चाहते हैं कि प्रॉक्सी केवल एक इंटरफ़ेस पर उपलब्ध हो।

अधिक जानकारी के लिए https://technet.microsoft.com/en-us/library/cc731068(v=ws.10).aspx


1
ध्यान दें कि यह दुर्भाग्य से केवल टीसीपी के लिए काम करता है इसलिए यदि आप कुछ यूडीपी ट्रैफ़िक को आगे करना चाहते हैं, तो आप भाग्य से बाहर हैं।
user276648

1
वीपीएन चलाने वाली मशीन पर विंडोज 10 से पोर्ट-फॉरवर्ड ssh (सर्वर पोर्ट 22) का उपयोग करने के लिए मेरे लिए काम करता है। मेरे घर नेटवर्क पर एक मशीन (वीपीएन कनेक्शन के बिना) वीपीएन के अंदर एक और मशीन से कनेक्ट करने में सक्षम है।
फ्रैंक एम

1

कम से कम परीक्षण उद्देश्यों के लिए मैं टीसीपी और यूडीपी दोनों को आगे बढ़ाने के लिए निम्नलिखित उपयोगिता का उपयोग करने में सक्षम था

https://sourceforge.net/projects/pjs-passport/

यह XP के लिए है, लेकिन यह Win10 पर भी काम करता है।


विंडोज 10 मुझे बताता है:Cannot start service from the command line or a debugger. A Windows Service must first be installed (using installutil.exe) and then started with the ServerExplorer, Windows Services Administrative tool or the NET START command.
पीटर टर्नर

1
@PeterTurner: readmeफ़ाइल की जाँच करें । मैं PassPort.exe -Installसेवा स्थापित करना देखता हूं ।
user276648
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.