वास्तविक नेटवर्क में ओपन vSwitch स्विच कनेक्ट करें: iptables मालिश


10

मैं VirtualBox अतिथि मशीनों के बीच स्विच किए गए नेटवर्क बनाने के लिए Open vSwitch का उपयोग कर रहा हूं, और मैं चाहता हूं कि होस्ट OS (Ubuntu 12.04) इस नेटवर्क में शामिल हो और इसे इस वर्चुअल नेटवर्क के प्रवेश द्वार के रूप में कॉन्फ़िगर करें:

सबसे पहले, मैंने एक vswitch बनाया और मैंने उपकरणों को टैप करने के लिए बंदरगाहों को जोड़ा (जो कि वर्चुअल मशीनें उन्हें ब्रिज इंटरफेस के रूप में उपयोग करती हैं):

ovs-vsctl add-br sw0
ovs-vsctl add-port sw0 tap0

उसके बाद, मैं स्टेटिक रूप से लुबंटू 12.04 वर्चुअल मशीन का आईपी सेट करता हूं:

ifconfig eth0 192.168.1.3/24 up
route add -net 0.0.0.0/0 gw 192.168.1.1

होस्ट os साइड में, मैं भी IP पता सेट करता हूं:

ifconfig sw0 192.168.1.1/24 up

इस समय, मैं लुबुनुत से उबुनुतु तक पिंग कर सकता हूं। मैं अब चाहता हूँ, मेजबान मशीन में 192.168.1.0/24 से आगे के ट्रैफ़िक के लिए आईपी मास्सरैड का उपयोग कर मेरी भौतिक अंतरा (इंटरनेट से जुड़ा):

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.1.0/24 -j MASQUERADE

तो लुबंटू (वर्चुअल मशीन) से, मैं उबंटू एथ 1 इंटरफेस को पिंग कर सकता हूं, लेकिन मैं वास्तविक नेटवर्क तक नहीं पहुंच सकता (जैसे: वास्तविक लैन पर प्रवेश द्वार), मैंने कोशिश की है:

nslookup google.com
dig @8.8.8.8 yahoo.com
dig @192.168.30.1 google.com

नेटवर्क टोपोलॉजी

   Internet (real gw) ------ Host OS -------- vswitch -------- VBox Guest 1
           192.168.30.1   ip masquerade    192.168.1.0/24
                                                |
                                                 ------------ VBox Guest 2

यदि आपके पास था तो कृपया कोई प्रगति जोड़ें। मेरी भी यही समस्या है।
मसूद_मज।

जवाबों:


1

जवाब वास्तव में मेरा नहीं है, लेकिन ... VirtualBox पर ओपन vSwitch का अनुसरण करने का प्रयास करें

इसी तरह के विषय पर कुछ फेडोरा लोगों से एक संक्षिप्त पाठ फ़ाइल भी थी: पाठ फ़ाइल के रूप में libvirt और OpenVSwitch ... हालांकि यह पता लगाने में सक्षम नहीं था।

टिप्पणी के अनुसार, यहाँ संक्षिप्त सारांश है:

(1) vnet0 इंटरफ़ेस और br0 ब्रिज बनाएँ:

ovs-vsctl add-br br0
ip tuntap add mode tap vnet0
ip link set vnet0 up
ovs-vsctl add-port br0 vnet0
ip link # (View the created interface)

(2) VM को स्पिन करें जो vnet0 इंटरफ़ेस का उपयोग करता है (एक एडॉप्टर एडॉप्टर के रूप में)

(3) कनेक्ट br br वास्तविक नेटवर्क से:

ovs-vsctl add-br br0 
ovs-vsctl add-port br0 eth0 
ovs-vsctl add-port br0 vnet0 
ifconfig eth0  0 && ifconfig br0 192.168.1.(X) netmask 255.255.255.0
route add default gw 192.168.1.1 br0
route del default gw 192.168.1.1 eth0

चूंकि आप एक बाहरी लेख से लिंक कर रहे हैं जो बदल सकता है, इसलिए यह आपके उत्तर में समाधान को संक्षेप में प्रस्तुत करने और इसके बजाय लेख को संदर्भित करने के लिए अनुशंसित है।
एसा जोकिनेन

0

/Etc/sysctl.conf में इन पंक्तियों को अन-टिप्पणी करके रिबूट पर अग्रेषित करने में सक्षम करें :

net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.