فیلد Next-hop به صورت پیش فرض در پروتکل EIGRP، 0.0.0.0 است و هنگام ارسال مسیرهای EIGRP نیز تغییری نمی کند. به همین دلیل آدرس Next-hop در جدول توپولوژی EIGRP و همچنین جدول مسیریابی همواره روتری است که مسیر را ارسال نموده است.

این قانون در شبکه های DMVPN که گاها باید ارتباط مستقیم بین Spoke ها وجود داشته باشد مشکل ایجاد می کند زیرا مسیر Spoke ها از طریق HUB یاد گرفته می شود و بنابراین از دید Spoke آدرس Next-hop روتر HUB است. در حالی که روتر Spoke می خواهد ترافیک را مستقیما تحویل Spoke مقصد بدهد.

قبل از اینکه به راه حل رفع این مشکل بپردازیم، برای درک این مساله بهتر است با یک مثال در شبکه FrameRelay که در آن ارتباط بین Spoke ها از طریق HUB است، صورت مساله را بهتر تحلیل نمائیم.

در شکل زیر بین Spoke ها و HUB، VC وجود دارد که شماره DLCI آنها در شکل آمده است اما هیج VC ای بین Spoke ها وجود ندارد و ارتباط بین Spoke ها از طریق HUB صورت می گیرد.

دستکاری next-hop در EIGRP

دستکاری next-hop در EIGRP

در این مثال با اجرای پروتکل EIGRP می بینیم که در جدول مسیریابی هر یک از Spoke ها، مسیر شبکه دیگر Spoke، به HUB اشاره می کند. به عبارت دیگر آدرس Next-hop برای همه مسیرها در جدول مسیریابی SPOKE روتر HUB است. همانطور که گفته شد این پروتکل EIGRP نبود که آدرس Next-hop را معرفی کرد بلکه روتر Spoke همان روتری را به عنوان Next-hop در نظر گرفته است که مسیر را ارسال نموده است. همچنین در این سناریو دیده می شود که در روتر HUB قانون Split-horizon غیرفعال شده است تا HUB مسیری که از Spoke یاد می گیرد را بتواند به دیگر Spoke ها یاد بدهد.

!!! HUB

!
interface Serial1/0

 no shutdown

 encapsulation frame-relay

!

interface Serial1/0.1 multipoint

 no ip split-horizon eigrp 1

 ip address 192.168.1.1 255.255.255.0

 frame-relay map ip 192.168.1.3 103 broadcast

 frame-relay map ip 192.168.1.2 102 broadcast

!

router eigrp 1

 no aut-summary

 network 0.0.0.0

!!! SPOKE1

!

interface Serial1/0

 no shutdown

 encapsulation frame-relay

!

interface Serial1/0.1 point-to-point

 ip address 192.168.1.2 255.255.255.0

 frame-relay interface-dlci 201

!

router eigrp 1

 no aut-summary

 network 0.0.0.0

!

!!! SPOKE2

!

interface Serial1/0

 no shutdown

 encapsulation frame-relay

!

interface Serial1/0.1 point-to-point

 ip address 192.168.1.3 255.255.255.0

 frame-relay interface-dlci 201

!

router eigrp 1

 no aut-summary

 network 0.0.0.0

!

!!! SPOKE1

SPOKE1#sh ip route eigrp

!!! بخشی از خروجی حذف شده است

!!! همانطور که دیده می شود از دید Spoke مسیر شبکه 172.16.3.0/24 که به دیگر Spoke متصل است، از طریق HUB است

      172.16.0.0/16 is variably subnetted, 4 subnets, 2 masks

D        172.16.0.0/24 [90/2297856] via 192.168.1.1, 00:06:12, Serial1/0.1

D        172.16.3.0/24 [90/2809856] via 192.168.1.1, 00:01:56, Serial1/0.1

!

SPOKE1#sh ip eigrp topology 172.16.0.0 255.255.255.0

EIGRP-IPv4 Topology Entry for AS(1)/ID(172.16.1.1) for 172.16.0.0/24

  State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2297856

  Descriptor Blocks:

  192.168.1.1 (Serial1/0.1), from 192.168.1.1, Send flag is 0x0

      Composite metric is (2297856/128256), route is Internal

      Vector metric:

        Minimum bandwidth is 1544 Kbit

        Total delay is 25000 microseconds

        Reliability is 255/255

        Load is 1/255

        Minimum MTU is 1500

        Hop count is 1

        Originating router is 172.16.0.1

!

SPOKE1#sh ip eigrp topology 172.16.3.0 255.255.255.0

EIGRP-IPv4 Topology Entry for AS(1)/ID(172.16.1.1) for 172.16.3.0/24

  State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2809856

  Descriptor Blocks:

  192.168.1.1 (Serial1/0.1), from 192.168.1.1, Send flag is 0x0

      Composite metric is (2809856/2297856), route is Internal

      Vector metric:

        Minimum bandwidth is 1544 Kbit

        Total delay is 45000 microseconds

        Reliability is 255/255

        Load is 1/255

        Minimum MTU is 1500

        Hop count is 2

        Originating router is 172.16.3.1

چگونگی محاسبه فیلد next-hop در EIGRP به صورت پیش فرض

 خروجی منطقی است و مشکل خاصی هم وجود ندارد. مشکل از آنجا ناشی می شود که Spoke ها بخواهند به صورت مستقیم و بدون واسطه HUB ترافیک داده بین یکدیگر ارسال نمایند. البته در مثال فوق این امر میسر نسیت زیرا بین Spoke ها هیچگونه VC وجود ندارد.

در شبکه DMVPN همانند Framerelay مسیر بین Spoke ها از طریق HUB جابجا می شود اما در آنجا امکان ارسال مستقیم ترافیک داده بین Spoke ها وجود دارد. در چنین شرایطی حتما آدرس Next-hop در یک Spoke باید به دیگر Spoke ها اشاره کند تا امکان ارسال مستقیم ترافیک داده بین Spoke ها بدون دخالت HUB ایجاد گردد.

برای ایجاد چنین شرایطی در EIGRP از دستور no ip next-hop-self eigrp در محیط اینترفیس استفاده می شود که در این صورت EIGRP برخلاف معمول آدرس Next-hop را تغییر می دهد البته مشروط بر آنکه آدرس Next-hop با آدرس IP اینترفیس خروجی در یک شبکه مشترک باشند. در مثال فوق وقتی مسیر Spoke2 از طریق HUB به Spoke1 یاد داده می شود، آدرس Next-hop، آدرس Spoke2 یا 192.168.1.2 است که با آدرس اینترفیس خروجی HUB یعنی 192.168.1.1 در یک شبکه قرار دارند.

در خروجی زیر نشان داده شده است که با اعمال دستور no ip next-hop-self eigrp آدرس Next-hop برای مسیر شبکه 172.16.3.0/24 متصل به Spoke2 از دید Spoke1 همان Spoke2 است و به HUB اشاره نمی کند. همچنین در بخش آخر این خروجی نشان داده شده است که در جدول مسیریابی آدرس ارسال کننده مسیر با آدرس next-hop متفاوت است

!!! HUB

HUB(config)#interface serial 1/0.1

HUB(config-subif)#no ip next-hop-self eigrp 1

!

!!! SPOKE1

SPOKE1#show ip route eigrp

!!! بخشی از خروجی حذف شده است

      172.16.0.0/16 is variably subnetted, 4 subnets, 2 masks

D        172.16.0.0/24 [90/2297856] via 192.168.1.1, 00:00:50, Serial1/0.1

D        172.16.3.0/24 [90/2809856] via 192.168.1.3, 00:00:50, Serial1/0.1

!

SPOKE1#show ip eigrp topology 172.16.3.0 255.255.255.0

EIGRP-IPv4 Topology Entry for AS(1)/ID(172.16.1.1) for 172.16.3.0/24

  State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2809856

  Descriptor Blocks:

  192.168.1.3 (Serial1/0.1), from 192.168.1.1, Send flag is 0x0

      Composite metric is (2809856/2297856), route is Internal

      Vector metric:

        Minimum bandwidth is 1544 Kbit

        Total delay is 45000 microseconds

        Reliability is 255/255

        Load is 1/255

        Minimum MTU is 1500

        Hop count is 2

        Originating router is 172.16.3.1

!

!!! خروجی جدول مسیریابی به وضوح نشان می دهد که آدرس Next-hop که در اینجا 192.168.1.3 است با آدرس ارسال کننده مسیر که در اینجا 192.168.1.1 است، تفاوت دارد

SPOKE1#show ip route 172.16.3.0

Routing entry for 172.16.3.0/24

  Known via "eigrp 1", distance 90, metric 2809856, type internal

  Redistributing via eigrp 1

  Last update from 192.168.1.3 on Serial1/0.1, 00:02:38 ago

  Routing Descriptor Blocks:

  * 192.168.1.3, from 192.168.1.1, 00:02:38 ago, via Serial1/0.1

      Route metric is 2809856, traffic share count is 1

      Total delay is 45000 microseconds, minimum bandwidth is 1544 Kbit

      Reliability 255/255, minimum MTU 1500 bytes

      Loading 1/255, Hops 2

دستکاری فیلد next-hop در EIGRP

نوشتن دیدگاه


تصویر امنیتی
تصویر امنیتی جدید