فصل 1: مقدمهای بر اتوماسیون شبکه
1-1. اتوماسیون شبکه چیست؟
1-2. چرا اتوماسیون شبکه ضروری است؟
1-3. چرا پایتون برای اتوماسیون شبکه ؟
1-4. مزایای اتوماسیون شبکه
1-5. کاربردهای واقعی اتوماسیون شبکه
1-6. مسیر پیش رو در این کتاب
فصل 2: تنظیم محیط پایتون
2-1. نصب پایتون
2-2. انتخاب و راهاندازی یک IDE
2-3. کار با محیطهای مجازی
2-4. نصب کتابخانههای ضروری برای اتوماسیون شبکه
2-5. تأیید تنظیمات محیط مجازی
2-6. عیبیابی مشکلات رایج راهاندازی
فصل 3: مروری بر مبانی پایتون
3-1. متغیرها و انواع داده
3-2. لیستها و دیکشنریها
3-3. شرطها
3-4. حلقهها
3-5. توابع
3-6. کنار هم قراردادن همه چیز: یک اسکریپت ساده اتوماسیون شبکه
فصل 4: کار با ساختارهای داده
4-1. لیستها
4-2. دیکشنریها
4-3. مجموعهها
4-4. تاپلها
4-5. کار با ساختارهای داده در اتوماسیون شبکه: مثالهای عملی
4-6. انتخاب ساختار داده مناسب
فصل 5: درک API ها و درخواستهای HTTP
5-1. API چیست؟
5-2. مقدمهای بر RESTful API ها
5-3. درخواستهای HTTP و کدهای وضعیت
5-4. استفاده از کتابخانه requests در پایتون
5-5. ایجاد درخواستهای HTTP با پایتون
5-6. احراز هویت و سرآیندها
5-7. مدیریت پاسخهای API
5-8. مثال عملی: بازیابی و نمایش اطلاعات دستگاه
فصل 6: مقدمهای بر کتابخانههای اتوماسیون شبکه
6-1. Netmiko
6-2. Paramiko
6-3. NAPALM (لایه انتزاعی اتوماسیون شبکه و قابلیت برنامهریزی با پشتیبانی از چندفروشندگی)
6-4. pyATS
6-5. مقایسه کتابخانهها
6-6. انتخاب ابزار مناسب
6-7. شروع کار با هر کتابخانه
فصل 7 : خودکارسازی اتصالات SSH با PARAMIKO و NETMIKO
7-1. درک SSH
7-2. استفاده از Paramiko برای اتصالات SSH
7-3. استفاده از Netmiko برای اتصالات SSH
7-4. اجرای دستورات پیکربندی
7-5. کار با چندین دستگاه
7-6. استفاده از Paramiko برای انتقال فایل
7-7. انتخاب بین Paramiko و Netmiko
فصل 8 : کار با پیکربندیهای شبکه
8-1. بازیابی پیکربندیهای شبکه
8-2. تجزیه پیکربندیهای شبکه
8-3. اصلاح پیکربندیهای شبکه با برنامهنویسی
8-4. تأیید پیکربندیهای شبکه
8-5. خودکارسازی پشتیبانگیری از پیکربندی
8-6. مثال عملی: بهروزرسانی و تأیید پیکربندیها در چندین دستگاه
فصل 9 : استفاده از NAPALM برای شبکههای چندفروشندهای
9-1. NAPALM چیست؟
9-2. نصب NAPALM
9-3. اتصال به دستگاهها با NAPALM
9-4. بازیابی دادههای دستگاه با NAPALM
9-5. مدیریت پیکربندیها با NAPALM
9-6. کاربرد عملی NAPALM در دنیای واقعی
9-7. بهترین روشها برای استفاده از NAPALM
فصل 10 : SNMP و پایش شبکه پایتون
10-1. مقدمهای بر SNMP
10-2. استفاده از SNMP برای پایش شبکه
10-3. نصب و استفاده از کتابخانه pysnmp
10-4. بازیابی دادهها با SNMP با استفاده از pysnmp
10-5. ایجاد یک اسکریپت ساده پایش شبکه
10-6. کاربرد عملی در دنیای واقعی: پایش میزان استفاده از پردازنده و حافظه
10-7. بهترین روشها برای پایش SNMP
فصل 11 : خودکارسازی پشتیبانگیری از پیکربندی دستگاه
11-1. اهمیت پشتیبانگیری از پیکربندی
11-2. استفاده از Netmiko برای پشتیبانگیری از پیکربندی
11-3. پشتیبانگیری از چندین دستگاه
11-4. استفاده از Paramiko برای سناریوهای پشتیبانگیری پیشرفته
11-5. خودکارسازی پشتیبانگیری با ابزارهای زمانبندی
11-6. کاربرد عملی در دنیای واقعی: پشتیبانگیریهای افزایشی و کنترل نسخه
11-7. بهترین روشها برای پشتیبانگیری از پیکربندی
فصل 12 : مدیریت موجودی شبکه با استفاده از پایتون
12-1. اهمیت مدیریت موجودی شبکه
12-2. جمعآوری اطلاعات دستگاه
12-3. ذخیره دادههای موجودی در JSON
12-4. استفاده از یک پایگاه داده برای مدیریت موجودی مقیاسپذیر
12-5. بهروزرسانی موجودی با برنامهنویسی
12-6. خودکارسازی بهروزرسانیهای موجودی با ابزارهای زمانبندی
12-7. بهترین روشها برای مدیریت موجودی
فصل 13 : تحلیل دادههای شبکه با PANDAS
13-1. مقدمهای بر Pandas برای تحلیل دادههای شبکه
13-2. راهاندازی Pandas
13-3. ایجاد و دستکاری DataFrame ها
13-4. بارگذاری دادههای شبکه از فایلها
13-5. پاکسازی و آمادهسازی دادهها
13-6. تحلیل دادههای شبکه با Pandas
13-7. مصورسازی معیارهای شبکه با استفاده از Pandas
13-8. کاربرد عملی در دنیای واقعی: تحلیل لاگهای دستگاه برای روندهای زمان فعالیت
13-9. بهترین روشها برای تحلیل دادههای شبکه
فصل 14 : ساخت ابزارهای CLI برای مهندسان شبکه
14-1. مزایای ابزارهای CLI سفارشی برای مهندسان شبکه
14-2. مقدمهای بر argparse برای آرگومانهای خط فرمان
14-3. طراحی ابزارهای مفید CLI برای وظایف شبکه
14-4. مثال: ساخت یک ابزار CLI برای بازیابی پیکربندی دستگاه
14-5. بستهبندی ابزارهای CLI برای استفاده آسان
14-6. بهترین روشها برای طراحی ابزارهای CLI
فصل 15 : استفاده از پایتون برای خودکارسازی امنیت شبکه
15-1. مقدمهای بر امنیت شبکه
15-2. مدیریت فایروالها با پایتون
15-3. پیکربندی لیستهای کنترل دسترسی (ACL)
15-4. اسکن برای شناسایی آسیبپذیریها
15-5. خودکارسازی بررسی انطباق با سیاستهای امنیتی
15-6. کاربرد عملی در دنیای واقعی: خودکارسازی بررسیهای انطباق فایروال و ACL در چندین دستگاه
15-7. بهترین روشها برای اتوماسیون امنیت شبکه
فصل 16 : خودکارسازی آزمون و اعتبارسنجی شبکه
16-1. اهمیت آزمون و اعتبارسنجی شبکه
16-2. اصول اولیه اعتبارسنجی شبکه
16-3. آزمون اتصال با پایتون
16-4. اعتبارسنجی پیکربندیها با پایتون
16-5. استفاده از pyATS برای اتوماسیون آزمون
16-6. تأیید پس از تغییر
16-7. بهترین روشها برای آزمون و اعتبارسنجی شبکه
فصل 17 : پایش و هشدارهای شبکه به صورت لحظهای
17-1. مقدمهای بر پایش شبکه به صورت لحظهای
17-2. جمعآوری معیارهای شبکه به صورت لحظهای
17-3. ارسال هشدارها از طریق ایمیل
17-4. ارسال هشدارها به Slack
17-5. تشخیص و پاسخ به مشکلات شبکه
17-6. بهترین روشها برای پایش و هشدار به صورت لحظهای
فصل 18 : مقدمهای بر شبکههای نرمافزارمحور و کنترلگرهای شبکه
18-1. شبکههای نرمافزارمحور (SDN) چیست؟
18-2. پروتکلهای SDN : مقدمهای بر OpenFlow
18-3. کار با کنترل کنندههای SDN
18-4. تعامل با Cisco APIC با استفاده از پایتون
18-5. تعامل با OpenDaylight با استفاده از پایتون
18-6. کاربرد عملی SDN و کنترل کنندههای شبکه
18-7. بهترین روشها برای اتوماسیون SDN با پایتون