網絡自動化運維教程

梁廣民 王金周 王隆傑 屈海洲

  • 出版商: 人民郵電
  • 出版日期: 2024-09-01
  • 定價: $359
  • 售價: 8.5$305
  • 語言: 簡體中文
  • 頁數: 212
  • ISBN: 7115637113
  • ISBN-13: 9787115637116
  • 下單後立即進貨 (約4週~6週)

  • 網絡自動化運維教程-preview-1
  • 網絡自動化運維教程-preview-2
網絡自動化運維教程-preview-1

相關主題

商品描述

本書遵循網絡自動化運維工程師職業素養和專業技能的要求進行內容組織,採用“項目化教學”和“任務驅動”方式展開。本書分四篇,共計12個項目。內容覆蓋網絡自動化Python編程基礎、用於網絡自動化的Python模塊、用於配置與管理網絡的協議以及網絡自動化運維的常用工具。基礎篇共一個項目,項目1為Python編程基礎;部署實施篇共四個項目,項目2為使用telnetlib下發網絡配置;項目3為使用paramiko實現網絡自動化巡檢;項目4為使用 netmiko發現網絡拓撲;項目5為使用 PySNMP獲取網絡數據;協議篇共三個項目,項目6為使用議NETCONF協議配置網絡;項目7為使用Telemetry實時監控CPU和內存使用率;項目8為使用RESTCONF協議配置網絡;工具篇共四個項目,項目9為使用Ansible實現網絡自動化運維;項目10為使用Nornir收集網絡日誌;項目11為使用scapy處理數據包;項目12為使用NMAP掃描網絡。

本書是一本介紹網絡自動化運維理論知識和應用技能的教材,既可作為高職或應用型本科電子信息類專業學生的教材,也可作為參加華為HCIP Datacom網絡自動化開發者認證的學習者的閱讀材料,還可以作為網絡架構師、網絡運維工程師、網絡運維開發工程師、網絡與系統管理工程師等從業人員的閱讀材料。

作者簡介

梁广民,深圳职业技术大学教授,21年以来兢兢业业工作在教学第一线,教学方面,主持国家精品课程和国家精品资源共享课程《网络互联技术》建设,主持教育部网络技术专业教学资源库子项目《网络设备安装与调试》课程建设,主持广东省教育厅教研项目《高职计算机类专业综合改革》项目,主编出版教材19本,其中《网络互联技术》、《网络系统建设与运维(高级)》和《网络攻防案例教程》3本教材入选“职业教育国家规划教材”。指导224名学生通过CCIE认证考试和80名同学通过HCIE认证考试,数量位居全国之首。指导学生获得全国职业院校技能大赛《计算机网络应用》和《网络系统管理》一等奖。参与华为和中锐公司2项1+X标准制定。多年来为来自全国的2000多名教师进行网络技术师资培训。科研方面,主要从事大数据分析、自动驾驶、生物信息等领域的研究,主持市级、校级重点和企业横向8项,参与广东省自然科学基金3项,研究经费达100多万元,先后发表论文16篇,其中SCI收录6篇,EI收录4篇,中文核心期刊5篇。先后通过华为、思科等18个IT领域职业认证或讲师认证。先后为卫生部、国家电网、中国联通、广东发展银行和广东省税务局员工进行网络技术培训。曾经参与过中国银行、国家电网和学校校园网等网络升级和改造项目。

目錄大綱

第 一篇 基礎篇 9

項目1 Python編程基礎 9

1.1 學習目標 9

1.2 任務陳述 9

1.3 知識準備 10

1.3.1 Python基礎 10

1.3.2 文件處理 15

1.3.3 網絡模塊 18

1.4 任務實施 24

1.4.1 創建文本文件 24

1.4.2 編寫Python代碼 24

1.4.3 運行Python代碼 26

1.5 任務總結 26

1.6 知識鞏固 26

第二篇 部署實施篇 27

項目2 使用telnetlib下發網絡配置 27

2.1 學習目標 27

2.2 任務陳述 28

2.3 知識準備 28

2.3.1 網絡自動化運維 28

2.3.2 SNMP協議 29

2.3.3 NTP協議 33

2.3.4 telnetlib模塊 34

2.4 任務實施 35

2.4.1 配置Telnet服務 36

2.4.2 配置NTP服務 36

2.4.3 編寫配置文件 37

2.4.4 編寫Python腳本 38

2.4.5 運行Python腳本 39

2.4.6 驗證結果 40

2.5 任務總結 42

2.6 知識鞏固 42

項目3 使用paramiko實現網絡自動化巡檢 43

3.1 學習目標 43

3.2 任務陳述 43

3.3 知識準備 43

3.3.1 網絡設備巡檢 43

3.3.2 paramiko模塊 44

3.4 任務實施 47

3.4.1 配置SSH服務端 48

3.4.2 編寫Python腳本 49

3.4.3 運行Python腳本 51

3.5 任務總結 53

3.6 知識鞏固 53

項目4 使用netmiko發現網絡拓撲 54

4.1 學習目標 54

4.2 任務陳述 54

4.3 知識準備 54

4.3.1 JSON數據格式 54

4.3.2 netmiko模塊 56

4.4 任務實施 58

4.4.1 配置SSH服務和LLDP 58

4.4.2 編寫Python腳本 60

4.4.3 運行Python腳本 63

4.4.4 查看拓撲圖 64

4.5 任務總結 64

4.6 知識鞏固 64

項目5 使用PySNMP獲取網絡數據 66

5.1 學習目標 66

5.2 任務陳述 66

5.3 知識準備 66

5.3.1 PySNMP模塊簡介 66

5.3.2 PySNMP使用方法 68

5.4 任務實施 72

5.4.1 配置設備SNMPv3 72

5.4.2 獲取OID 73

5.4.3 編寫腳本 73

5.4.4 運行腳本 75

5.5 任務總結 75

5.6 知識鞏固 75

第三篇 協議篇 77

項目6 使用NETCONF協議配置網絡 78

6.1 學習目標 78

6.2 任務陳述 78

6.3 知識準備 79

6.3. 1 XML數據格式 79

6.3.2 NETCONF協議基礎 84

6.3.3 NETCONF基本操作 89

6.3.4 NETCONF客戶端 90

6.3.5 設備上配置NETCONF 92

6.4 任務實施 94

6.4.1 設備上配置SSH服務 95

6.4.2 使能設備NETCONF功能 95

6.4.3 編寫Python腳本 96

6.4.4 運行Python腳本下發配置 111

6.4.5 驗證配置 113

6.5 任務總結 114

6.6 知識鞏固 114

項目7 使用Telemetry實時監控CPU和內存使用率 116

7.1 學習目標 116

7.2 任務陳述 116

7.3知識準備 117

7.3.1 YANG建模語言 117

7.3.2 Telemetry技術原理 122

7.3.3 Telemetry數據訂閱 124

7.3.4 採樣數據與編碼格式 127

7.3.5 Proto文件 131

7.3.6 gRPC傳輸協議 136

7.3.7 配置設備側數據訂閱 137

7.4 任務實施 140

7.4.1 配置SSH密碼登錄 140

7.4.2 配置目標採集器 140

7.4.3 配置採樣路徑和過濾條件 141

7.4.4 配置訂閱 141

7.4.5 安裝grpcio-tools 141

7.4.6 創建PyCharm項目 141

7.4.7 編譯proto文件 143

7.4.8 編寫服務端Python腳本 145

7.4.9 運行Python腳本驗證結果 146

7.5 任務總結 147

7.6 知識鞏固 148

項目8 使用RESTCONF協議配置網絡 149

8.1 學習目標 149

8.2 任務陳述 149

8.3 知識準備 150

8.3.1 HTTP協議 150

8.3.2 RESTCONF基礎 155

8.3.3 配置RESTCONF 161

8.3.4 requests模塊 161

8.4 任務實施 162

8.4.1 配置SSH密碼登錄 163

8.4.2 配置RESTCONF 163

8.4.3 編寫Python腳本 164

8.4.4 運行Python腳本 170

8.4.5 驗證 171

8.5 任務總結 172

8.6 知識鞏固 172

第四篇 工具篇 173

項目9 使用Ansible實現網絡自動化運維 174

9.1 學習目標 174

9.2 任務陳述 174

9.3 知識準備 174

9.3.1 YAML配置文件語言 174

9.3.2 Ansible基礎 177

9.3.3 Ansible劇本 181

9.3.4 任務控制 182

9.4 任務實施 183

9.4.1 配置SSH服務端 184

9.4.2 創建資產文件 185

9.4.3 編寫收集信息的playbook 185

9.4.4 驗證執行收集信息的playbook 186

9.4.5 編寫配置交換機的playbook 189

9.4.6 驗證執行配置交換機的playbook 190

9.5 任務總結 192

9.6 知識鞏固 192

項目10 使用Nornir收集網絡日誌 193

10.1 學習目標 193

10.2 任務陳述 193

10.3 知識準備 193

10.3.1 Nornir基礎 193

10.3.2 Nornir插件 200

10.4 任務實施 205

10.4.1 配置SSH服務 205

10.4.2 安裝配置Syslog日誌服務器。 206

10.4.3 創建主機清單 206

10.4.4 編寫Python腳本 208

10.4.5 執行Python腳本 208

10.4.6 服務器接收日誌 209

10.5 任務總結 210

10.6 知識鞏固 210

項目11 使用scapy處理數據包 211

11.1 學習目標 211

11.2 任務陳述 211

11.3 知識準備 211

11.3.1 Scapy基礎 211

11.3.2 Scapy函數 221

11.5 任務實施 228

11.5.1 SYN掃描 228

11.5.2 ARP ping 228

11.5.3 ICMP ping 229

11.5.4 UDP ping 230

11.5 任務總結 232

11.6 知識鞏固 232

項目12 使用NMAP掃描網絡 233

12.1 學習目標 233

12.2 任務陳述 233

12.3 知識準備 233

12.3.1 NMAP基礎 233

12.3.2 主機發現 235

12.3.3 埠掃描 237

12.3.4 服務和版本探測 239

12.5.5 操作系統探測 240

12.5.6 Python中的nmap模塊 240

12.4 任務實施 241

12.5 任務總結 244

12.6 知識鞏固 245

參考資料 246