چیت‌شیت

چیت‌شیت Backup و Restore کانفیگ سیسکو

مفاهیم پایه

روی هر دستگاه سیسکو دو نسخه از کانفیگ وجود داره: نسخه‌ای که الان در حال اجراست، و نسخه‌ای که بعد از هر بار روشن شدن دستگاه بارگذاری می‌شه. تا وقتی این دو تا رو با هم قاطی نکنی، بقیه‌ی دستورها منطقی‌ان.

نام جایی که ذخیره می‌شه معنی عملی
running-config حافظه RAM تنظیماتی که همین الان روی دستگاه فعاله
startup-config حافظه NVRAM تنظیماتی که بعد از reload بارگذاری می‌شه
flash: حافظه فلش دستگاه محل نگهداری IOS، فایل‌های کانفیگ و ایمیج‌ها
TFTP / FTP / SCP سرور خارجی روی شبکه برای گرفتن بکاپ بیرون از خود دستگاه

جریان کار همیشه یکی از این دو مسیره:

running-config
      │  copy
      ▼
startup-config
      │  reload
      ▼
running-config

یعنی: هرچی تو running تغییر بدی، اگه copy نکنی به startup، با یه reload از بین می‌ره.

دیدن تنظیمات فعلی و ذخیره‌شده

show running-config      ! کوتاه: show run
show startup-config
dir flash:                 ! یا: show flash:
show memory
show file systems

ذخیره کردن تنظیمات فعلی

بعد از هر تغییری که می‌خوای بعد از ریستارت هم بمونه:

copy running-config startup-config

دستگاه یه سوال می‌پرسه (Destination filename [startup-config]?) که فقط باید Enter بزنی و رد بشی.

یه نسخه‌ی قدیمی‌تر از همین دستور هم هست که هنوز جواب می‌ده، ولی بهتره فرم استاندارد بالا رو یاد بگیری:

write memory
wr

گرفتن بکاپ روی TFTP

این پرکاربردترین روش بکاپ‌گیریه:

copy running-config tftp:
Address or name of remote host []? 192.168.1.100
Destination filename []? R1-running-config

کوتاه‌ترش: copy run tftp:

همین کار رو می‌شه برای startup-config هم انجام داد: copy startup-config tftp:

نکته‌ی مهم: copy run tftp: تنظیمات فعلی رو می‌فرسته، copy start tftp: تنظیمات ذخیره‌شده برای بوت بعدی رو. این دو تا لزوماً یکی نیستن، مخصوصاً اگه تغییری دادی و هنوز save نکردی.

برگرداندن بکاپ از TFTP

به running-config:

copy tftp: running-config
Address or name of remote host []? 192.168.1.100
Source filename []? R1-config
Destination filename [running-config]?

باید حواست باشه که این دستور کانفیگ قدیمی رو کامل پاک نمی‌کنه؛ فایل بازیابی‌شده با running-config فعلی merge می‌شه.

به startup-config:

copy tftp: startup-config

اگه می‌خوای این تنظیمات همون لحظه هم فعال بشه، بعدش یه reload بزن.

بکاپ و بازیابی روی Flash خود دستگاه

وقتی سرور TFTP در دسترس نیست، می‌شه بکاپ رو همون‌جا روی فلش خود دستگاه نگه داشت:

copy running-config flash:R1-backup.cfg
copy startup-config flash:R1-startup-backup.cfg

dir flash:

copy flash:R1-backup.cfg running-config
copy flash:R1-startup-backup.cfg startup-config

بکاپ با SCP

SCP نسبت به TFTP امن‌تره چون رمزنگاری‌شده‌ست و برای محیط‌های واقعی ترجیح داده می‌شه. قبل از استفاده باید SSH/SCP روی دستگاه فعال باشه.

copy running-config scp:
copy startup-config scp:
copy scp: running-config
copy scp: startup-config

بکاپ و بازیابی خود IOS

بکاپ‌گیری فقط مال کانفیگ نیست؛ خود فایل ایمیج IOS هم قابل بکاپه:

dir flash:
copy flash:c2900-universalk9-mz.SPA.155-3.M.bin tftp:
copy tftp: flash:
show boot

برای این‌که به دستگاه بگی موقع بوت کدوم فایل IOS رو بخونه:

configure terminal
boot system flash:<IOS-FILENAME>
end
copy running-config startup-config

پاک کردن تنظیمات

این بخش رو با احتیاط اجرا کن، چون قابل برگشت نیست مگر بکاپ داشته باشی:

erase startup-config
! یا: write erase
reload

موقع reload ممکنه بپرسه System configuration has been modified. Save? [yes/no] — اگه هدفت واقعاً پاک کردن کانفیگه، اینجا Save نزن.

فرق این دو دستور رو حتماً جدا نگه دار: erase startup-config فقط تنظیمات ذخیره‌شده رو حذف می‌کنه، ولی reload خود دستگاه رو ریستارت می‌کنه. برای یه ریست کامل شبیه حالت کارخانه، معمولاً هر دو رو پشت‌سرهم می‌زنن.

مقایسه‌ی running-config و startup-config

show running-config
show startup-config
show archive config differences nvram:startup-config system:running-config

دستور آخر تفاوت دقیق بین دو کانفیگ رو نشون می‌ده، البته فقط روی نسخه‌های IOS که از این قابلیت پشتیبانی می‌کنن.

نگه‌داری خودکار نسخه‌های قبلی (Archive)

سیسکو می‌تونه خودش به‌صورت دوره‌ای از کانفیگ نسخه بگیره:

configure terminal
archive
 path flash:config
 maximum 10
 time-period 1440
end

show archive

بازگردانی کامل با configure replace

configure replace flash:config-1

فرق این دستور با copy ... running-config اینه که configure replace کانفیگ فعلی رو کامل جایگزین می‌کنه، نه این‌که با اون merge بشه.

بکاپ با FTP

copy running-config ftp:
copy startup-config ftp:
copy ftp: running-config

یک سناریوی کامل روی روتر

R1# copy running-config tftp:
Address or name of remote host []? 192.168.10.10
Destination filename []? R1-backup.cfg

R1# configure terminal
R1(config)# hostname R1-NEW
R1(config)# end

! اگه بعد از این تغییر مشکلی پیش اومد:
R1# copy tftp: running-config
Address or name of remote host []? 192.168.10.10
Source filename []? R1-backup.cfg
Destination filename [running-config]?

R1# show running-config
R1# copy running-config startup-config

یک سناریوی کامل روی سوییچ

SW1# copy startup-config tftp:
Address or name of remote host []? 192.168.10.10
Destination filename []? SW1-backup.cfg

SW1# copy tftp: startup-config
Address or name of remote host []? 192.168.10.10
Source filename []? SW1-backup.cfg
Destination filename [startup-config]?

SW1# reload

اشتباهی که خیلی‌ها می‌کنند

این دو دستور جهت عکس هم دارن و قاطی کردنشون می‌تونه کانفیگت رو خراب کنه:

copy running-config startup-config   ! جهت: RUNNING به سمت STARTUP
copy startup-config running-config   ! جهت: STARTUP به سمت RUNNING

چهار دستور کوتاهی که بیشتر استفاده می‌شن:

copy run start      تنظیمات فعلی رو برای reboot بعدی ذخیره می‌کنه
copy run tftp:       تنظیمات فعلی رو روی TFTP بکاپ می‌گیره
copy tftp: run       بکاپ رو با running-config فعلی merge می‌کنه
copy tftp: start     بکاپ رو کانفیگ بوت بعدی می‌کنه

اگر فقط چند دستور بخوای حفظ کنی

show run
show start
dir flash:
copy run start
copy run tftp:
copy start tftp:
copy tftp: run
copy tftp: start
erase startup-config
reload

و جهت کلی جابه‌جایی‌ها:

RUNNING به TFTP        copy run tftp:
STARTUP به TFTP        copy start tftp:
TFTP به RUNNING        copy tftp: run
TFTP به STARTUP        copy tftp: start

← بازگشت به همه پست‌ها