लिनक्स पर कुछ कमांड के लिए उपयोग किए जाने वाले गेटवे का चयन करें


1

मेरे पास इंटरनेट से कनेक्शन प्रदान करने के लिए कई नेटवर्क इंटरफेस हैं। मैं route add default gw ...किसी भी समय इंटरनेट एक्सेस के लिए उपयोग किए जाने वाले इंटरफ़ेस को बदल सकता हूं ।

हालांकि, क्या केवल एक निश्चित आदेश के लिए प्रवेश द्वार का चयन करना संभव है? उदाहरण के लिए एक प्रक्रिया में एक जीएसएम मॉडम लिंक का उपयोग होता है, जबकि सिस्टम अन्य सभी इंटरनेट अनुरोधों के लिए ईथरनेट लिंक का उपयोग करता है।

जवाबों:


1

आप iptablesएक अलग उपयोगकर्ता के साथ कर सकते हैं । यह मानते हुए कि जिस इंटरफ़ेस का आप उपयोग करना चाहते हैं, उसका आईपी पता, 1.2.3.4नाम eth1और प्रवेश द्वार है 1.2.3.1

1) एक नया उपयोगकर्ता बनाएँ:

adduser user2

2) उस उपयोगकर्ता से आने वाले मार्क पैकेट:

iptables -t mangle -A OUTPUT -m owner --uid-owner user2 -j MARK --set-mark 42

3) उन पैकेजों पर आईपी पता लागू करें:

iptables -t nat -A POSTROUTING -o eth1 -m mark --mark 42 -j SNAT --to-source 1.2.3.4

4) मार्ग के eth1गेटवे के माध्यम से चिह्नित पैकेट :

ip rule add fwmark 42 table 42
ip route add default via 1.2.3.1 dev eth1 table 42

5) नए उपयोगकर्ता के रूप में कमांड निष्पादित करें:

sudo -u user2 ping example.com

ping example.comअब गेटवे पर रूट किया जाएगा 1.2.3.1न कि सिस्टम डिफ़ॉल्ट गेटवे।


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