من در این آموزش می خواهم نحوه Failover کزدن 2 لینک اینترنت را آموزش دهم:
Failover چیست؟
به زبان ساده Failover یعنی ارتباطی را از طریق یک لینک با کیفیت برقرار نموده و یک لینک دیگری را به صورت standby نگه داریم. که در مواقع قطعی لینک اول به صورت اتوماتیک بر روی لینک دوم switch شود.
این کار با platform های Linux, Mikrotik و Cisco قابل اجراست اما ما در این آموزش بر روی Cisco توضیح خواهم داد.
با یک مثال عملی شروع میکنیم که هم اکنون آن را زیر بار دارم:
یک لینک وایرلس 90 کیلومتری وجود دارد که روی آن 15 مگ اینترنت ارائه داده میشود. به دلیل اینکه این اینترنت متعلق به یک دانشگاه است و روی آن web server قرار دارد 2M لینک پشتیبان بر روی بستر مخابراتی برای آن تعبیه گردیده است .
در سمت سرویس دهنده که سایت A مینامیم یک عدد روتر 3845 و در سمت سرویس گیرنده که سایت B مینامیم یک عدد 2811 وجود دارد. هر کدام دارای 2 Fast Ethernet است که یکی به لینک وایرلس و دیگری به خط مخابراتی متصل است.
آدرس های لینک مخابراتی 2.2.2.1 و 2.2.2.2 و لینک وایرلس 1.1.1.1 و 1.1.1.2 میباشند.
و رنج آدرس 24/ 109.74.224.0 به سمت سایت B رووت شده است.
میبایست روتر ها به گونه ای تنظیم گردند که کیفیت لینک وایرلس مرتبا چک شود و در صورت قطعی بیش از 10 ثانیه ارتباط به لینک مخابراتی منتقل گردد و اگر کیفیت لینک وایرلس به حالت اول برگشت مجددا ارتباط بر دوش آن باشد.
برای روتر سایت A مینویسیم:
ابتدا یک روول برای مانیتورینگ ایجاد میکنیم:
Ip sla monitor 1
Ip sla 1 (IOS 12.4 and higher)
سپس نحوه چک up بودن لینک را مشخص میکنیم. که در این مثال آدرس 1.1.1.2 را مرتبا ping میکند. اگر طی 10 بار هر کدام زیر 4 ثانیه جوابی برگشت خط up بوده وگرنه خط down محسوب می گردد.
Type echo protocol ipIcmpEcho 1.1.1.2
Frequency 10
Timeout 4000
در دستور زیر زمان اجرا و طول عمر فرایند بالا محاسبه میگردد. که مشخص کرده ایم از هم اکنون و برای همیشه اجرا شود.
ip sla monitor schedule 1 life forever start-time now
ip sla schedule 1 life forever start-time now (IOS 12.4 and higher)
سپس میبایست یک track برای آن بنویسیم تا بتوان بر اساس آن route نوشت.
Track 1 rtr 1 reachability
Track 1 ip sla 1 (IOS 12.4 and higher)
سپس نوبت نوشتن route است. ابتدا route را بر روی لینک اصلی مینویسیم و در آخر route , شماره آن track را که رووت مادام up بودن آن track میبایست فعال باشد مینویسیم:
Ip route 109.74.224.0 255.255.255.0 1.1.1.2 track 1
اکنون باید route لینک backup را با metric 254 یعنی بالاترین metric بنویسیم تا در صورت غیر فعال شده route اول اتوماتیک این route فعال شود.
Ip route 109.74.224.0 255.255.255.0 2.2.2.2 254
حالا نوبت سایت B رسیده:
دستورات مثل router A هستند اما با تفاوت آدرسها و رووت ها:
Ip sla monitor 1
در اینجا آدری سایت A باید چک شود:
type echo protocol ipIcmpEcho 1.1.1.1
frequency 10
timeout 4000
ip sla monitor schedule 1 life forever start-time now
track 1 rtr 1 reachability
default route هنگام OK بودن وضعیت:
ip route 0.0.0.0 0.0.0.0 1.1.1.1 track 1
Default route هنگام قطعی لینک اصلی:
ip route 0.0.0.0 0.0.0.0 2.2.2.1 254
تنظیمات به پایان رسید. برای آزمایش میتوان آدرس 109.74.224.1 را روی پینگ گذاشت و لینک وایرلس را قطع کرد.
خواهیم دید که پس از 2 request timed out ارتباط از طریق لینک backup برقرار می شود.
برای مشاهده وضعیت failover میتوان از دستور زیر استفاده کرد:
Show ip sla monitor statistics
که اینچنین خروجی خواهد داد:
Round trip time (RTT) Index 1
Latest RTT: 8 ms
Latest operation start time: *23:38:31.073 UTC Fri Mar 5 2010
Latest operation return code: OK
Number of successes: 18
Number of failures: 0
Operation time to live: Forever
و در حالت قطعی:
Round trip time (RTT) Index 1
Latest RTT: NoConnection/Busy/Timeout
Latest operation start time: *23:40:31.073 UTC Fri Mar 5 2010
Latest operation return code: Timeout
Number of successes: 29
Number of failures: 1
Operation time to live: Forever
Rased#sh ip sla monitor statistics
Round trip time (RTT) Index 1
Latest RTT: 8 ms
Latest operation start time: *23:49:21.072 UTC Fri Mar 5 2010
Latest operation return code: OK
Number of successes: 42
Number of failures: 41
Operation time to live: Forever
دستوری دیگر برای چک کردن وضعیت:
sh ip sla monitor operational-state
Entry number: 1
Modification time: *22:35:31.072 UTC Fri Mar 5 2010
Number of Octets Used by this Entry: 2264
Number of operations attempted: 445
Number of operations skipped: 0
Current seconds left in Life: Forever
Operational state of entry: Active
Last time this entry was reset: Never
Connection loss occurred: FALSE
Timeout occurred: FALSE
Over thresholds occurred: FALSE
Latest RTT (milliseconds): 12
Latest operation start time: *23:49:31.072 UTC Fri Mar 5 2010
Latest operation return code: OK
RTT Values:
RTTAvg: 12 RTTMin: 12 RTTMax: 12
NumOfRTT: 1 RTTSum: 12 RTTSum2: 144