यह राउटर ओएसपीएफ से कई, समान-लागत वाले मार्गों का उपयोग करने में विफल क्यों होता है?


16

नेट्रॉन 5.2 पर चलने वाला एक ब्रोकेड राउटर, और आईओएस 12.4 पर चलने वाला डायनामिक्स एमुलेशन दोनों एक बहुत ही सरल कॉन्फ़िगरेशन प्रतीत होता है जो समान रूप से समान लागत पथ का उपयोग करने में विफल होते हैं। मैं कहता हूं "निर्भरता से" क्योंकि मैंने ब्रोकेड से अपेक्षित व्यवहार का संक्षिप्त रूप से निरीक्षण किया था, लेकिन यह निष्क्रियता की एक लंबी अवधि के बाद था और जैसे ही मैंने सिस्टम को गड़बड़ा दिया, गायब हो गया।

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

मेरा प्रोटोटाइप नेटवर्क इस तरह दिखता है।

R1 <--N1--> Rcore <--N2--> R2

R1और R2OSPF के माध्यम से किसी भी गंतव्य गंतव्य का विज्ञापन करें। यदि Rcoreइसके N1और N2इंटरफेस पर समान लागत है , और किसी भी अन्य गंतव्य पर समान स्थान की लागत है, तो मैं Rcoreरूटिंग टेबल में दो समान लागत पथ खोजने की उम्मीद करूंगा । मैं नहीं, कम से कम हमेशा नहीं, और भी नहीं भविष्यवाणी की है। क्यों नहीं?

अन्य के अलावा, संभावित रूप से प्रासंगिक विवरण निम्नलिखित हैं।

  • Rcoreएक एबीआर कनेक्टिंग है N1और N2, जो अलग एनएसएसए क्षेत्रों में हैं, बैकबोन को (दिखाया नहीं गया)।
  • का निरीक्षण RcoreLSDB पुष्टि की है कि से उम्मीद LSAs R1और R2सही ढंग से स्थापित कर रहे हैं, और सही मीट्रिक के साथ एनीकास्ट गंतव्य होते हैं।

मैंने तीन संभावित स्पष्टीकरणों पर विचार किया है।

  1. मुझे समझ में नहीं आता कि इन प्लेटफार्मों पर ECMP को कैसे कॉन्फ़िगर और संचालित किया जाए। यह संभावना है, और मुझे उम्मीद है कि यहां मुझे आत्मज्ञान मिलेगा जो मुझे विक्रेता डॉक्स में नहीं मिला।
  2. मैं OSPF क्षेत्र, ECMP, anycast, आदि के बीच बातचीत को नहीं समझता हूं, मुझे नहीं लगता कि यह बहुत संभावना है, लेकिन मैं वैसे भी कुछ सीखने के लिए तैयार हूं।
  3. ये दो विक्रेताओं के कार्यान्वयन एक ही बग, या गलत-सुविधा, या कुछ से पीड़ित हैं। मुझे लगता है कि यह हो सकता है।

डायनामिप्स / डायनेजन कार्यान्वयन के लिए एडिटेड उदाहरण और आउटपुट को एडिट करें

कॉन्फ़िगरेशन

रूटर R1

!
version 12.4
!
hostname R1
!
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
 ip ospf cost 1
!
interface FastEthernet0/0
 ip address 10.1.0.2 255.255.255.252
 ip ospf cost 2
!
router ospf 1
 router-id 10.1.0.2
 log-adjacency-changes
 area 0.0.0.1 nssa no-summary
 passive-interface Loopback0
 network 1.1.1.1 0.0.0.0 area 0.0.0.1
 network 10.1.0.0 0.0.0.3 area 0.0.0.1
!
line console 0
 exec-timeout 0 0
!
end

रूटर R2

!
version 12.4
!
hostname R2
!
interface Loopback0
 ip address 1.1.1.1 255.255.255.255
 ip ospf cost 1
!
interface FastEthernet0/0
 ip address 10.2.0.2 255.255.255.252
 ip ospf cost 2
!
router ospf 1
 router-id 10.2.0.2
 log-adjacency-changes
 area 0.0.0.2 nssa no-summary
 passive-interface Loopback0
 network 1.1.1.1 0.0.0.0 area 0.0.0.2
 network 10.2.0.0 0.0.0.3 area 0.0.0.2
!
line console 0
 exec-timeout 0 0
!
end

रूटर Rcore

!
version 12.4
!
hostname Rcore
!
interface Loopback0
 ip address 10.0.0.1 255.255.255.255
 ip ospf cost 4
!
interface FastEthernet0/0
 ip address 10.1.0.1 255.255.255.252
 ip ospf cost 2
!
interface FastEthernet0/1
 ip address 10.2.0.1 255.255.255.252
 ip ospf cost 2
!
router ospf 1
 log-adjacency-changes
 area 0.0.0.1 nssa no-summary
 area 0.0.0.2 nssa no-summary
 passive-interface Loopback0
 network 10.0.0.1 0.0.0.0 area 0.0.0.0
 network 10.1.0.0 0.0.0.3 area 0.0.0.1
 network 10.2.0.0 0.0.0.3 area 0.0.0.2
!
line console 0
 exec-timeout 0 0
!
end

उत्पादन

रूटर Rcore

राउटर एलएसए से R1

Rcore#sh ip ospf database router 10.1.0.2

            OSPF Router with ID (10.0.0.1) (Process ID 1)

        Router Link States (Area 0.0.0.1)

  LS age: 1618
  Options: (No TOS-capability, DC)
  LS Type: Router Links
  Link State ID: 10.1.0.2
  Advertising Router: 10.1.0.2
  LS Seq Number: 80000002
  Checksum: 0x726F
  Length: 48
  Number of Links: 2

    Link connected to: a Stub Network
     (Link ID) Network/subnet number: 1.1.1.1
     (Link Data) Network Mask: 255.255.255.255
      Number of TOS metrics: 0
       TOS 0 Metrics: 1

    Link connected to: a Transit Network
     (Link ID) Designated Router address: 10.1.0.2
     (Link Data) Router Interface address: 10.1.0.2
      Number of TOS metrics: 0
       TOS 0 Metrics: 2

राउटर एलएसए से R2

Rcore#sh ip ospf database router 10.2.0.2

            OSPF Router with ID (10.0.0.1) (Process ID 1)

        Router Link States (Area 0.0.0.2)

  LS age: 1766
  Options: (No TOS-capability, DC)
  LS Type: Router Links
  Link State ID: 10.2.0.2
  Advertising Router: 10.2.0.2
  LS Seq Number: 80000002
  Checksum: 0x8A53
  Length: 48
  Number of Links: 2

    Link connected to: a Stub Network
     (Link ID) Network/subnet number: 1.1.1.1
     (Link Data) Network Mask: 255.255.255.255
      Number of TOS metrics: 0
       TOS 0 Metrics: 1

    Link connected to: a Transit Network
     (Link ID) Designated Router address: 10.2.0.2
     (Link Data) Router Interface address: 10.2.0.2
      Number of TOS metrics: 0
       TOS 0 Metrics: 2

राउटिंग टेबल अंश

Rcore#sh ip route 1.1.1.1
Routing entry for 1.1.1.1/32
  Known via "ospf 1", distance 110, metric 3, type intra area
  Last update from 10.1.0.2 on FastEthernet0/0, 00:30:54 ago
  Routing Descriptor Blocks:
  * 10.1.0.2, from 10.1.0.2, 00:30:54 ago, via FastEthernet0/0
      Route metric is 3, traffic share count is 1

मार्ग किस प्रकार का है?
निकोटीन

@nicotine: लूपबैक इंटरफ़ेस पर कोई भी पता एक द्वितीयक पता है। इस कॉन्फ़िगरेशन के नवीनतम क्रमांकन में, यह एक राउटर LSA में स्टब नेटवर्क के रूप में समाप्त होता है। का पालन करने के लिए स्निपेट्स और टर्मिनल ग्रेब को कॉन्फ़िगर करें।
नीरभोज

मैंने जितना संभव हो उतना विन्यास और आउटपुट को कम करने की कोशिश की, लेकिन बहुत अधिक नहीं। सूचना घनत्व में सुधार के सुझावों का स्वागत है।
नीरभोज

यह काम करना चाहिए। क्या आप निम्न कमांड्स से आउटपुट पोस्ट कर सकते हैं: शो आईपी प्रोटोकॉल शो आईपी ओस्पफ रिब डीबग आईपी रूटिंग इन कमांड्स को Rcore पर देखें। यह हमें कुछ सुराग देना चाहिए कि दोहरी मार्ग क्यों स्थापित नहीं हैं। आपका OSPF DB आउटपुट मुझे ठीक लगता है।
डेनियल डिब

यदि आप सक्रिय मार्ग के लिंक को उछालते हैं तो क्या यह अभी भी मूल मार्ग को पसंद करता है? उदाहरण के लिए: अपने सीएलआई आउटपुट में यह 10.1.0.2 की ओर इशारा करते हुए सक्रिय मार्ग दिखाता है। यदि आप OSPF आस-पड़ोस को तोड़ने के लिए इंटरफ़ेस को 10.1.0.2 पर बंद करते हैं, तो इसे ऑनलाइन वापस लाएं क्या 10.1.0.2 की ओर मूल मार्ग फिर से स्थापित होता है?
बड़ा पत्थर

जवाबों:


7

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

सामान्य तौर पर, सिस्को के लिए, यदि मार्ग प्रोटोकॉल में समान हैं, तो वे दोनों रूटिंग टेबल पर प्रस्तुत किए जाएंगे। रूटिंग टेबल, डिफ़ॉल्ट रूप से, दोनों पथों को स्थापित करेगा और ECMP करेगा। यदि मेट्रिक्स या प्रोटोकॉल अलग-अलग हैं, तो वे ECMP नहीं होंगे। यह एक ही उपसर्ग के लिए अलग-अलग एलएसए पर भी लागू होगा।


हां - डेटाबेस प्रविष्टियों को हमें बताना चाहिए - क्या उनके पास एक ही अग्रेषण पता और विज्ञापन राउटर है?
निकोटीन

मैं आज दोपहर नमूना उत्पादन प्राप्त करने पर काम करूंगा।
नीरभोज

6

मैं इस बात पर विचार कर रहा हूं कि क्या ईसीएमपी किसी भी तरह की समझदारी है। रूटिंग को लॉजिस्टिक-निकटतम गंतव्य के लिए किसी भी प्रसारण को निर्देशित करना चाहिए जिसमें एक मेजबान दूसरे के पक्ष में होगा। यहां तक ​​कि इस मामले में जहां वैसे भी मेजबान मेजबान के बराबर हैं, मैं अब भी यही उम्मीद करूंगा कि यह सच रहेगा। ECMP लोड-शेयरिंग के लिए, मुझे लगता है कि प्रति-गंतव्य / 32 के साथ असंभव है। शायद लोड-शेयरिंग एल्गोरिदम हैं जो स्रोत पर विचार करते हैं। DNS के लिए भी प्रति-पैकेट जोखिम भरा लगता है। मेरा मानना ​​है कि अधिकांश आउट-ऑफ-द-बॉक्स किसी भी प्रकार के समाधान मेजबान पर ओस्पफ चलाते हैं।

थोड़ी खोज की, लेकिन rfc2178 के निम्नलिखित अंश कारण की पुष्टि करते हैं।

16.8। समान-लागत बहुपथ

ओएसपीएफ प्रोटोकॉल सभी गंतव्यों के लिए कई समान लागत वाले मार्गों को बनाए रखता है। यह रूटिंग टेबल की गणना करने के लिए ऊपर दिए गए चरणों में देखा जा सकता है, और रूटिंग टेबल संरचना की परिभाषा में।

कई मार्गों में से प्रत्येक एक ही प्रकार का होगा (इंट्रा-एरिया, इंटर-एरिया, टाइप 1 एक्सटर्नल या टाइप 2 एक्सटर्नल), लागत, और इसमें एक ही संबद्ध क्षेत्र होगा । हालांकि, प्रत्येक मार्ग एक अलग अगला हॉप और विज्ञापन राउटर निर्दिष्ट करता है।


1
हम्म, मैं एक एकल क्षेत्र से बाहर निकला और कोर पर ईसीएमपी मौजूद है। हालाँकि, मैं अभी भी इस बात का समर्थन करूंगा कि यह / 32 के साथ बेकार है। शायद निम्नलिखित प्रासंगिक है: morse.colorado.edu/~tlen5710/12/12/OSPF.pdf
डेनिस ओल्वानी

यह कहता है कि यह क्षेत्र ईसीएमपी के मानदंडों में से एक है। ऐसा लगता है कि विभिन्न क्षेत्रों में सौदा हो सकता है।
डेनिस ओलिवानी

मेजबान पर OSPF - हाँ, यह लक्ष्य है। / 32 लूपबैक पर एक द्वितीयक पते के रूप में सौंपा गया है। मैं लोड-शेयरिंग कॉन्फ़िगरेशन में भी देख रहा हूं, लेकिन यह पहले स्थान पर ईसीएमपी पर निर्भर करता है।
नीरभोज

5

मैं 12.4 (24) का उपयोग करके अपनी प्रयोगशाला में इसे पुन: पेश नहीं कर सकता। एक ही टोपोलॉजी, RCore क्षेत्र 0 लूपबैक, लो 1 के साथ R1 और क्षेत्र 1 में इंटरफ़ेस, 2 के साथ R2 और क्षेत्र 2 में इंटरफ़ेस (दोनों NSSA), पुनर्वितरित मार्ग को ECMP के लिए Rcore पर उठाया जाता है:

Routing entry for 10.20.0.0/16
  Known via "ospf 1", distance 110, metric 20, type NSSA extern 2, forward metric 6477
  Last update from 2.2.2.6 on Serial1/1, 00:02:23 ago
  Routing Descriptor Blocks:
    2.2.2.6, from 2.2.2.21, 00:02:23 ago, via Serial1/1
      Route metric is 20, traffic share count is 1
  * 1.1.2.1, from 1.1.1.1, 00:06:31 ago, via Serial1/0
      Route metric is 20, traffic share count is 1

संभावनाएँ जो मैं सोच सकता हूँ: यह निर्भर करता है कि मार्ग इसे OSPF में कैसे बना रहा है, और OSPF मार्ग-प्रकार का उपयोग किस प्रकार किया जाता है, ASBR राउटर की लागत मार्ग चयन प्रक्रिया में शामिल हो सकती है / नहीं हो सकती है (ECMP के लिए कार्य करने के लिए, दोनों मार्ग लागत , और एएसबीआर को लागत मैच के लिए है)। दोनों के लिए वास्तविक एलएसए पर मीट्रिक देखने से मदद मिल सकती है।

मैं आपके कॉन्फ़िगरेशन की नकल करने के लिए IOS पर इसे पुन: उत्पन्न करने में सक्षम था - एक इंटरफ़ेस पर anycast रखकर, और एक क्षेत्र में इंटरफ़ेस रखकर। यदि आपको ईसीएमपी की आवश्यकता है, तो मार्ग को ओएसपीएफ में पुनर्वितरित करने पर विचार करें, क्योंकि यह काम करने के लिए प्रकट होता है।


एफडब्ल्यूआईडब्ल्यू, मेरे डायनामिप्स उदाहरण में छवि 7200 पर 12.4 (25 डी) है। आपके परिणाम "एनएसएसए के माध्यम से ज्ञात ... एक्सटर्ना 2" लेकिन मेरा शो "इंट्रा क्षेत्र" है। यह एक अच्छा सुराग है।
नीरभोज

कनेक्टेड Redistribute इंटरफ़ेस के तहत नेटवर्क कमांड या ip ospf का उपयोग करने के बजाय इसका उत्पादन करेगा।
डेनियल डिब

@DanielDib मैं सामान्य / ठूंठ / nssa, इंट्रा-क्षेत्र / बाहरी, और कम से कम सिस्को + डायनामिप्स / ब्रोकेड के क्रमपरिवर्तन को समाप्त करने की प्रक्रिया में हूं। मैं जुनिपर भी कोशिश करूँगा, अगर मेरे पास समय हो।
नीरभोज

3

आप किस ब्रोकेड हार्डवेयर का उपयोग कर रहे हैं (एमएलएक्स? सीईआर? एक्सएमआर?) के आधार पर, आप सॉफ़्टवेयर को अपडेट करना चाह सकते हैं। 5.3 (और 5.4 आपके हार्डवेयर पर निर्भर करता है) सॉफ्टवेयर पेड़ों के माध्यम से कई कीड़े तय किए गए थे, जिनके लक्षण ओएसपीएफ मार्ग की लागत से संबंधित थे, जिन्हें ठीक से अपडेट नहीं किया गया था। मुझे बग देखने के लिए सभी मानदंड नहीं पता हैं, लेकिन उनमें से कुछ थे: यदि लागत को 1gig पोर्ट या OSPF पर चलने वाले राउटर पर लूपबैक इंटरफ़ेस में बदल दिया गया था, तो परिवर्तन संसाधित नहीं किया गया था और लागत अपडेट नहीं की गई थी ।

मुझे लगता है कि आप इसे दो निर्माताओं के प्लेटफार्मों पर देख रहे हैं, इसलिए यह एक कॉन्फ़िगरेशन समस्या होने की अधिक संभावना है। मुझे यह भी एहसास है कि पुराने टेक-सपोर्ट-पंट "अपने सॉफ़्टवेयर को अपडेट करें" अक्सर एक आई रोल से ज्यादा कुछ नहीं हो सकता है। यह कहा, यह ध्यान में रखने के लिए कुछ हो सकता है।


मैं इसे ध्यान में रखूंगा। हालाँकि, R1 / R2 ने लागत निर्धारित की, Rcore लागत को देखता है, और Rcore ECMP लक्षणों को प्रदर्शित करता है।
नीरभोज
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.