2012-08-24 16 views
14

मेरे पास दो नेटवर्क इंटरफेस के साथ एक पीसी है: eth0 और eth1।ओएस कैसे जानता है कि इंटरनेट के लिए कौन सा नेटवर्क इंटरफ़ेस उपयोग करना है?

eth0 - 1 9 2.168.11.X/24 का आईपी है।

eth1 - 1 9 2.168.130.X/24 का आईपी है। eth1 में इंटरनेट कनेक्टिविटी है।

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

उत्तर

13

मैं (कम से कम जैसे Ubuntu डेबियन-आधारित सिस्टम, के लिए के बाद से यह इस बिंदु पर उपयोगकर्ताओं के लिए और अधिक आम है) घर के लिनक्स पक्ष के लिए जवाब देने के लिए जा रहा हूँ:

प्रकार एक में निम्नलिखित आदेश पंक्ति:

Destination Gateway   Genmask   ... Iface 
0.0.0.0  192.168.11.254 0.0.0.0   ... eth0 
169.254.0.0 0.0.0.0   255.255.0.0  ... eth0 
192.168.11.0 0.0.0.0   255.255.255.0 ... eth0 
192.168.130.0 0.0.0.0   255.255.255.0 ... eth1 

मैं एक जोड़े कॉलम छोड़ा जाता है, लेकिन मूल रूप से, लाइन:

route -n 

आप अपने "अनुमार्गण तालिका" देखना चाहिए निम्नलिखित की तरह कुछ के साथ दिखाई देते हैं जो "गंतव्य" के तहत "0.0.0.0" कहता है वह रेखा है जो निर्धारित करती है कि आपका डिफ़ॉल्ट मार्ग कहां है। दूसरे शब्दों में, जहां सभी यातायात चला जाता है जो अन्य लाइनों (google.com, facebook.com, जो कुछ भी) में किसी भी अन्य सबनेट के लिए नियत नहीं है।

यदि यह सही है, तो आप डिफ़ॉल्ट मार्ग बदलना चाहिए (जैसे कि उपरोक्त तालिका, जहाँ "eth1" कार्ड आप इंटरनेट का उपयोग के साथ चाहते हैं के रूप में) नहीं है:

sudo route del default 
sudo route add default gw 192.168.130.254 netmask 255.255.255.0 

अभी के लिए यह ठीक कर देंगे । यह स्थायी बनाने के लिए, अपने इंटरफेस फ़ाइल को संपादित: यह की तरह कुछ देखने के लिए

sudo gedit /etc/network/interfaces 

संपादित निम्नलिखित (अपने विशिष्ट स्थिति के लिए आवश्यक के रूप में बदल):

auto eth0 
iface eth0 inet dhcp 
up route del default 

auto eth1 
iface eth1 inet dhcp 
up route add default gw 192.168.130.254 netmask 255.255.255.0 

तो यह है कि अगर किया था देखने के लिए नेटवर्किंग को पुनः आरंभ चाल:

sudo /etc/init.d/networking restart 
2

जो सुविधा आप पूछ रहे हैं वह एक रूटिंग टेबल है, जो मेजबान को ज्ञात स्थलों की एक सूची है।

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

192.0.2.0/28 - 192.0.2.1 via eth1 
198.51.100.0/27 - 198.51.100.1 via eth0 
0.0.0.0/0  - 203.0.113.1 via eth0 

अंतिम गंतव्य पर ध्यान दें: यह किसी भी आईपीवी 4 पते से मेल खाएगा।

+0

लेकिन पीसी चालू होने पर पहली बार क्या होता है और इंटरनेट से कनेक्ट करने का प्रयास करता है? यह नहीं पता कि कौन सी नैतिकता इंटरनेट तक पहुंच प्रदान करती है। क्या यह इंटरफेस पर फिर से शुरू होता है और जब सफलतापूर्वक रूटिंग टेबल में जानकारी डालती है? धन्यवाद। –

+1

@UriH यह उपयोगकर्ता से या रूटिंग प्रोटोकॉल से कॉन्फ़िगरेशन के कुछ रूपों की अपेक्षा करता है। यह यादृच्छिक रूप से पैकेट को रूट करने का प्रयास नहीं करता है। – cnicutar

+0

धन्यवाद, मैं गया और चेक किया कि डिफ़ॉल्ट मार्ग को हटाकर और eth1 को पुनरारंभ करके, मैंने देखा कि डिफ़ॉल्ट मार्ग जोड़ा गया था, मैं राउटर विकल्पों वाले DHCP अनुरोध के कारण मान रहा हूं। –

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^