एक निश्चित नेटवर्क इंटरफ़ेस का उपयोग करने के लिए एक आवेदन (जैसे फ़ायरफ़ॉक्स) कैसे मजबूर किया जा सकता है?


20

मेरे पास दो इंटरफेस हैं: एक नोटबुक पर eth0 और wlan0।

संभावित उपयोग के मामले:

  • eth0 मुझे इंटरनेट एक्सेस प्रदान करता है, और wlan0 वर्तमान में एक राउटर से जुड़ा है जिसमें इंटरनेट-कनेक्टिविटी नहीं है। विकास के उद्देश्यों के लिए, मुझे डिफ़ॉल्ट रूप से wlan0 से कनेक्ट करने की आवश्यकता है, लेकिन सर्फिंग के लिए eth0 का उपयोग करें
  • eth0 और wlan0 दोनों इंटरनेट से जुड़े हैं। एक धार एप्लिकेशन के लिए, eth0 को गति के लिए उपयोग किया जाना चाहिए, लेकिन नोटबुक की पोर्टेबिलिटी के लिए, SSH का wli0 पर एक कनेक्शन होना चाहिए
  • eth0 एक तार कनेक्शन है, wlan0 एक वायरलेस है। समझदार डेटा को eth0 पर स्थानांतरित किया जाना चाहिए, लेकिन अन्य ट्रैफ़िक wlan0 पर भी जा सकता है।

क्या एक निश्चित नेटवर्क इंटरफ़ेस का उपयोग करने के लिए अनुप्रयोगों (जैसे nc.traditionalया firefox) को मजबूर करने का एक तरीका है ? इस example-wrapper eth0 programतरह के कार्यक्रम मौजूद होने पर भी एक रैपर ठीक है। यह अच्छा होगा यदि इसे फ़ायरफ़ॉक्स (रनटाइम में) के भीतर कॉन्फ़िगर किया जा सके। यदि संभव हो तो मैं IPTables समाधान से बचना चाहूंगा।


4
यह कई इंटरनेट कनेक्शन के लिए भी मददगार है, जबकि एक टोरेंट कर रहा है जबकि दूसरा सर्फिंग के लिए इस्तेमाल किया जा रहा है।
12 गोपाल में

आप प्रोटोकॉल / एप्लिकेशन के आधार पर विभिन्न मार्गों का उपयोग करना चाहते हैं, इसके लिए आपको iptables की आवश्यकता होगी।
जोओ पिंटो

1
मुझे नहीं पता कि आप ऐसा कैसे कर सकते हैं जो आपके लेयर 7 (एप्लिकेशन) ट्रैफ़िक को किसी विशिष्ट पोर्ट पर मैप करता है या फिर कुछ उच्चतर स्तर की एप्लिकेशन जानकारी (जिसमें ट्रैफ़िक निरीक्षण की आवश्यकता होती है) के आधार पर फ़िल्टर करता है। तो जबकि iptables विशेष रूप से आवश्यक नहीं है, एक आवरण से जुड़े किसी भी समाधान को कुछ फैशन में टीसीपी या आईपी नीति के साथ बातचीत करना होगा। मुझे नहीं पता कि बिना लेयर 2 या लेयर 3 नेटवर्किंग के ऐसा कैसे किया जा सकता है जो ट्रैफिक को कहीं और निर्देशित करता है।
बेलाक्वा

जवाबों:


1

आप जो देख रहे हैं वह एक LS_PRELOAD शिम है, विस्तृत विवरण और उदाहरण कोड के लिए डैनियल लैंग का ब्लॉग प्रविष्टि देखें ।


3
उबंटू पूछने के लिए आपका स्वागत है! जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा
स्टॉर्मविरक्स

1

आप कनेक्शन अंकन और मार्ग नीति के अधिक जटिल दृष्टिकोण का उपयोग कर सकते हैं।
यदि आपके पास एक ऐसा उपयोगकर्ता है जो एक सॉफ्टवेयर और एथेर चलाता है तो यह ठीक काम करेगा।
इस तरह आप एक उपयोगकर्ता के कनेक्शन को चिह्नित कर सकते हैं और इसके लिए विशिष्ट रूटिंग टेबल का उपयोग कर सकते हैं, जबकि अन्य सभी डिफ़ॉल्ट एक का उपयोग करेंगे।
इसे समझने के लिए मूल दस्तावेज़ यहाँ है: http://www.lartc.org/lartc.html
दो कनेक्शनों के लिए एक उदाहरण जो आप यहाँ देख सकते हैं: /unix/58635/iptables- सेट-मार्क-रूट-डिफरेंशियल-पोर्ट्स-थ्रू-अलग-अलग इंटरफेस
आप "स्वामी" आईपीटैब मॉड्यूल का उपयोग कर सकते हैं जो रूटिंग पॉलिसी को अनुमति देने के लिए कनेक्शन को चिह्नित करेगा।


पॉलिसी रूटिंग विभिन्न उपयोगकर्ताओं के लिए काम करती है, लेकिन एक उपयोगकर्ता के तहत चलने वाले एप्लिकेशन के लिए नहीं (जैसा कि ओपी में वर्णित है)। LD_PRELOADजाने के लिए रास्ता लगता है (दुर्भावनापूर्ण कार्यक्रमों के लिए नहीं / सुरक्षा कारणों से), शायद कोई बॉब लेबिंस पोस्ट को विस्तृत कर सकता है?
लेकेनस्टेन

0

यहाँ एक नमूना समाधान है। यह SOCKS सर्वर का उपयोग करता है, वर्तमान मशीन पर रूट कोन्यूज के लिए सेटअप करता है। प्रत्येक सर्वर का उपयोग करने के लिए प्रत्येक एप्लिकेशन को कॉन्फ़िगर किया जाना चाहिए।


3
यह एक HTTP प्रॉक्सी की तरह दिखता है, क्या यह अन्य प्रोटोकॉल के साथ काम करता है, जैसे दो नेटकैट इंस्टेंस के बीच एक कनेक्शन?
लीकेनस्टाइन

0

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

आपको VMware पर ethX और wlanX दोनों को सेटअप करने की आवश्यकता है, लेकिन एक बार जब आप इसे कॉन्फ़िगर कर लेते हैं तो आप डाउनलोड या ब्राउज़ करने के लिए तैयार होते हैं।

यह बहुत चिकनी है। आप बॉन्ड इंटरफेस के लिए फ़ायरवॉल का भी उपयोग कर सकते हैं जो बहुत अच्छा काम करता है।


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