पिंग क्यों काम नहीं कर रहा है?


0

नेटवर्क सेटअप जैसा चित्र में देखा गया है:

network setup

  • मशीन m1 का eth0 ईथरनेट पोर्ट, मशीन क्रॉस के माध्यम से मशीन m2 eth0 ईथरनेट पोर्ट से जुड़ता है।

  • मशीन m1 और m2 एक ही नेटवर्क पर हैं: 1.1.1.0/24

  • M1 eth0 का पता है 1.1.1.1/24, और इन प्रविष्टियों को रूटिंग टेबल में दर्ज किया गया था:

    # ip route add 2.2.2.0/24 via 1.1.1.4 //route to m3
    # ip route add 3.3.3.0/24 via 1.1.1.3 //route to m4
    
  • मशीन M2 में 3 ईथरनेट कार्ड हैं और मशीन m3 और मशीन m4 के लिए एक राउटर के रूप में कार्य करता है जो क्रमशः 2.2.2.0/24 और 3.3.3.0/24 नेटवर्क पर हैं।

  • M2 में sysctl.conf में net.ipv4.ip_forward = 1 है

  • M2 eth0 का पता है 1.1.1.2/24, eth1 है 1.1.1.4/24, eth2 है 1.1.1.3/24। ये सभी नेटवर्क को संचारित करने के लिए रूटिंग को सक्षम करने के लिए एम 2 पर निष्पादित कमांड हैं

    # ip route add 2.2.2.0/24 via 1.1.1.4 //route to m3
    # ip route add 3.3.3.0/24 via 1.1.1.3 //route to m4
    
  • M3 eth0 का पता है 2.2.2.1/24, और इन प्रविष्टियों को रूटिंग टेबल पर दर्ज किया गया था:

    # ip route add 1.1.1.0/24 via 2.2.2.1 //route to m2 && m1
    # ip route add 3.3.3.0/24 via 2.2.2.1 //route to m4
    
  • M4 eth0 का पता है 3.3.3.1/24, और इन प्रविष्टियों को रूटिंग टेबल पर दर्ज किया गया था

    # ip route add 2.2.2.0/24 via 3.3.3.1 //route to m3
    # ip route add 1.1.1.0/24 via 3.3.3.1 //route to m2 && m1
    

तो पहली समस्या यह है कि,

  • मैं एम 1, एम 3 और एम 4 को एम 2 से पिंग कर सकता हूं।
  • मैं एम 3 और एम 4 से एम 2 को पिंग कर सकता हूं
  • पिंग M3 से M4 या M4 से M3 तक काम नहीं कर रहा है।
  • पिंग भी M1 से M3 या M4 से काम नहीं कर रहा है।
  • पिंग M3 / M4 से M1 तक भी काम नहीं कर रहा है।

मैं क्या गलत कर रहा हूँ?

जवाबों:


0

M1 का 1.1.1.4 (या .3) पते के लिए कोई मार्ग नहीं है क्योंकि यह सीधे .2 से जुड़ा है।

यदि आप एम 1 पर राउटिंग टेबल को देखते हैं, तो यह कुछ ऐसा दिखेगा

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
1.1.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

और इसलिए यह सोचता है कि यह स्विच या हब के माध्यम से सीधे 1.1.1.3 | 4 पते से जुड़ने में सक्षम होना चाहिए।

M1 और M2 के बीच लिंक को अलग सबनेट पर रखें, और M1 के लिए डिफ़ॉल्ट गेटवे के रूप में M2 के पते का उपयोग करें और यह काम करेगा।

समान स्थिति एम 3/4 से अन्य लोगों के कनेक्शन के साथ मौजूद है, उन्हें यह जानने की जरूरत है कि कौन सा मार्ग लेना है, या उनके डिफ़ॉल्ट राउटर को जानना होगा।


0

मुझे लगता है कि आपकी पहली समस्या यह है कि आप मार्गों को बहु-हॉप होने की उम्मीद करते हैं - वे नहीं होंगे। उदाहरण के लिए, आपने M1 पर इन कमांड का उपयोग किया है, और ऐसा लगता है कि आप उन्हें M2 पर विशिष्ट आउटबाउंड इंटरफेस चुनने की उम्मीद कर रहे हैं:

# ip route add 2.2.2.0/24 via 1.1.1.4 //route to m3
# ip route add 3.3.3.0/24 via 1.1.1.3 //route to m4

ऐसा नहीं होगा। दोनों रूट प्रविष्टियाँ केवल एम 2 के मैक पते के पैकेट को अग्रेषित करेंगी (जैसा कि यह मेजबान है जो दोनों नेक्सथॉप पतों के लिए एआरपी प्रश्नों का उत्तर देता है), लेकिन एम 2 पूरी तरह से अपने आप ही तय करता है कि उन पैकेटों को आगे कैसे भेजा जाए।

इसलिए M1 में जोड़े गए मार्गों को केवल M1 के सामने वाले M2 के पते का उपयोग करना चाहिए, अर्थात। via 1.1.1.2


आपकी दूसरी समस्या यह है कि एम 2 में तीन इंटरफेस हैं एक ही नेटवर्क से संबंधित है (1.1.1.0/24)।

इसके बजाय, क्योंकि एम 2 एक राउटर है और एक ही बार में सभी तीन नेटवर्क से संबंधित है, इसके पते होने चाहिए उन नेटवर्क से: अर्थात्, 2.2.2.x/24 eth1 पर और 3.3.3.x/24 eth2 पर।

(इसके साथ, आपको M2 पर किसी भी रूट को जोड़ने की आवश्यकता नहीं होगी - स्थानीय-सबनेट रूट पर्याप्त होगा।)


आपकी तीसरी समस्या यह है कि एम 3 और एम 4 पर आपके मार्ग पैकेट भेजने के लिए प्रवेश द्वार निर्दिष्ट नहीं करते हैं। उनके पास केवल मेजबान है अपना पता है, लेकिन किसी भी तरह से संकेत नहीं है कि पैकेट "एम 1" वास्तव में एम 2 के माध्यम से जाना चाहिए।

चूंकि मार्ग एक मान्य प्रवेश द्वार / नेक्सथॉप निर्दिष्ट नहीं करते हैं, उन्हें स्थानीय-सबनेट मार्गों के रूप में माना जाता है; दूसरे शब्दों में, आप M3 / M4 को बता रहे हैं कि गंतव्य (M1) स्थानीय ईथरनेट पर उपलब्ध है, भले ही यह नहीं है। इसलिए जब आप M3 / M4 से M1 को पिंग करते हैं, तो वे ARP का उपयोग करके M1 के IP पते को हल करने का प्रयास करते हैं (जो निश्चित रूप से विफल रहता है)।

(याद रखें कि ईथरनेट हमेशा स्विच किए गए माध्यम से काम करता है, बिंदु से बिंदु तक नहीं, इसलिए M2 प्राप्त करेगा केवल उन पैकेटों को जो विशेष रूप से एम 2 के मैक पते (या प्रसारण) में भेजे गए थे। दूसरे शब्दों में, एम 2 को एम 1 के मार्ग के लिए गेटवे के रूप में निर्दिष्ट किया जाना चाहिए।)

यदि आपने भाग II के अनुसार M2 के IP पते पहले ही तय कर लिए हैं, तो M3 / M4 पर रूट इस तरह दिखना चाहिए:

(On M3)
# ip addr add 2.2.2.1/24 dev eth0
# ip route add 1.1.1.0/24 via 2.2.2.x  // <via M2's eth1 address>
# ip route add 3.3.3.0/24 via 2.2.2.x  // <via M2's eth1 address>

(On M4)
# ip addr add 3.3.3.1/24 dev eth0
# ip route add 1.1.1.0/24 via 3.3.3.x  // <via M2's eth2 address>
# ip route add 2.2.2.0/24 via 3.3.3.x  // <via M2's eth2 address>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.