《OpenWrt智能路由系统开发 跟hoowa学智能路由》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:王伟,孙冰,刘龙著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2018
  • ISBN:9787115477118
  • 页数:230 页
图书介绍:本书分成五大部分,第一大部分为基本介绍;第二大部分介绍如何学习使用Linux以及基本的工具使用;第三大部分介绍OpenWrt系统的使用及一些常见的功能开发和实践;第四大部分介绍根据不同的板子定制自己的OpenWrt系统,以及内核模块编写、外部设备驱动的揭秘;第五大部分介绍在线资源、各类更实际的大量智能设备玩法。

第1章 路由器概述 1

1.1传统路由器 1

1.2智能路由器 1

1.3传统路由器与智能路由器的区别 2

第2章OpenWrt介绍 3

2.1什么是OpenWrt 3

2.2哪些产品用了OpenWrt 3

2.3 OpenWrt是如何支持路由器CPU的 4

第3章 智能路由器硬件 5

3.1 MIPS架构 5

3.2国内常见路由器的配置 5

3.3常见路由器芯片厂商 6

3.4本书智能路由硬件 7

3.4.1本书硬件的由来 7

3.4.2 MT7620芯片 7

3.4.3 MR808开发板简述 8

3.4.4 AXWRT系统 11

第4章 智能路由开发环境搭建 12

4.1小企鹅的力量 12

4.2准备学习工具 13

4.3安装VirtualBox虚拟机 13

4.4在虚拟机中安装Centos 17

4.4.1创建新虚拟主机 17

4.4.2配置新虚拟机 18

4.4.3安装Centos系统 20

4.5 SSH远程登录 23

4.5.1 SSH的作用 23

4.5.2启动网卡 23

4.5.3查看当前IP 24

4.5.4 SSH连接 24

4.6 WinSCP文件传输 25

4.6.1 SCP协议 25

4.6.2安装WinSCP客户端 26

4.6.3创建到Linux的连接 28

4.6.4文件传输 29

第5章 基本知识 30

5.1向系统下达命令 30

5.2时间命令 30

5.2.1查看当前日期 30

5.2.2查看当前日历 31

5.3关机和重启 31

5.3.1立即安全关闭系统 31

5.3.2重新启动系统 31

5.3.3强制将缓存写入存储器 31

5.4权限机制 31

5.4.1文件权限 32

5.4.2所有者 32

5.4.3文件容量 32

5.4.4文件日期 32

5.4.5可执行文件 32

5.4.6 隐含文件 33

5.4.7修改所有人 33

5.4.8修改所有组 33

5.4.9修改文件权限 34

5.5文件与目录管理 34

5.5.1路径概念 34

5.5.2特殊目录 35

5.5.3变换目录 35

5.5.4查看当前所在目录是哪个 35

5.5.5创建目录 36

5.5.6删除目录 36

5.5.7列表文件和目录 36

5.5.8复制文件或目录 37

5.5.9删除文件或整个目录 38

5.5.10移动或更名 38

5.6文件分析 39

5.6.1查看文件内容 39

5.6.2分行查看 39

5.6.3查看文件最后几行 39

5.6.4查看启动信息 40

5.7更多指令 40

5.8 Vi编辑器 40

5.8.1 Vi介绍 40

5.8.2 V i的命令 40

5.8.3 Vi的3个状态 41

5.8.4 Vi编辑操作 41

5.9基础Shell编程 43

5.9.1何为Shell编程 43

5.9.2 Shell的运行方式 44

5.9.3 Hello World! 44

5.9.4变量 44

5.9.5运算符 47

5.9.6注释语法 53

5.9.7字符串 54

5.9.8条件判断 54

5.9.9循环表达 56

5.9.10输入/输出重定向 58

5.9.11使用黑洞,一劳永逸 59

第6章OpenWrt刷机 61

6.1通过串口进入系统 61

6.1.1操作板子注意事项 61

6.1.2连接串口步骤 61

6.2认识U-Boot 63

6.3 U-Boot的TFTP刷机 64

6.3.1 TFTP的准备 64

6.3.2 TFTP刷机流程 65

6.3.3可能遇到的问题 67

6.4 U-Boot的Web刷机 67

6.4.1触发按钮准备 67

6.4.2可能遇到的问题 69

第7章 分区、外网与OPKG 70

7.1了解分区 70

7.1.1查看系统MTD分配 72

7.1.2查看系统MTD的分区 72

7.1.3将非文件系统分区读出来 72

7.2文件系统 73

7.2.1透明挂载/根目录 73

7.2.2基本系统演示 74

7.2.3第一次接入网络 75

7.3软件包管理OPKG 77

7.3.1 OPKG语法格式 77

7.3.2软件包的内核依赖问题 78

7.3.3 OPKG的配置 78

7.3.4关于OPKG软件包 79

第8章UCI命令系统 80

8.1 UCI命令 80

8.2 UCI的文件和流程 80

8.3 UCI的文件语法 81

8.3.1 config节点语法格式 81

8.3.2 option选项语法格式 82

8.3.3 list列表选项语法格式 82

8.3.4 UCI的语法容错 82

8.3.5 UCI无法容忍的语法 82

8.4 UCI命令读写配置 82

8.4.1读取类语法 83

8.4.2写入类语法 83

8.5综合实例 84

8.5.1语法测试 85

8.5.2举例开启W i-Fi 86

第9章 智能路由配置 88

9.1网络配置文件 88

9.1.1查看网络配置 88

9.1.2查看当前网络 89

9.1.3查看br-lan桥状态 90

9.1.4查看内核日志 91

9.1.5网口VLAN 91

9.2配置WAN口外网 91

9.2.1动态获取IP选项 92

9.2.2指定静态IP语法 92

9.2.3 PPPOE拨号上网语法 93

9.2.4 WAN口设置 94

9.2.5 WAN口设置 94

9.3配置LAN口服务 95

9.4配置无线网络 97

9.4.1无线查看命令 99

9.4.2实现无线中继 99

9.5 DHCP服务 102

9.6如何连接外网 105

第10章 防火墙与 UPnP 106

10.1防火墙命令 106

10.2防火墙配置 106

10.2.1 defaults默认配置 107

10.2.2 zone域配置 107

10.2.3 forwarding转发配置 108

10.2.4 rule规则 109

10.2.5 direction端口转发 110

10.3实现UPnP 111

10.3.1安装UPnP 111

10.3.2配置UPnP 112

10.3.3 UPnP命令 114

第11章 时区、服务、SSH与SCP 115

11.1信息和时区 115

11.2服务管理 118

11.3 SSH远程登录 118

11.3.1 SSH配置 118

11.3.2 SSH登录 119

11.4 SCP文件复制 121

11.4.1安装SCP客户端 121

11.4.2 SCP操作 123

第12章 存储器扩展 124

12.1实现原理 124

12.2存储器选型 124

12.3初始化存储器 125

12.3.1存储器软件包 125

12.3.2识别存储器 126

12.3.3存储器分区 126

12.3.4存储器格式化 128

12.4存储器扩容设置 129

12.4.1 rootfs_data数据迁移 129

12.4.2获得存储器UUID 130

12.4.3自动挂载配置 130

12.4.4存储区自动挂载 132

12.4.5 swap交换区自动挂载 133

12.4.6关于挂载的注意事项 134

第13章 网络存储与文件共享 135

13.1 Windows文件共享实现 135

13.1.1创建文件夹/pub 135

13.1.2安装Samba 135

13.1.3 Samba配置说明 135

13.1.4配置共享目录 137

13.1.5 Windows连接方法 137

13.2 FTP文件共享实现 139

13.2.1安装Pure-FTPD 139

13.2.2 Pure-FTPD配置说明 139

13.2.3配置Pure-FTPD 140

13.2.4创建FTP账户 141

13.2.5 FTP穿越防火墙 142

13.2.6 WinSCP做FTP客户端 143

13.2.7浏览器作FTP客户端 144

第14章 智能路由器媒体中心 145

14.1 USB声卡驱动支持 145

14.1.1媒体播放必备条件 145

14.1.2选择合适的USB声卡 145

14.1.3安装声卡驱动 145

14.1.4设置默认音量 146

14.1.5用命令行播放MP3 147

14.2安卓手机远程播放音乐 147

14.2.1 MP介绍 147

14.2.2安装MPD服务 148

14.2.3安卓系统安装客户端 151

14.2.4关于安卓手机播放音乐 153

14.3 DLNA数字媒体服务器 153

14.3.1 DLNA介绍 154

14.3.2安装配置MiniDLNA 154

14.3.3 Inotify与overlay的冲突 156

14.3.4启动服务 157

14.3.5 DLNA客户端 157

14.3.6 DLNA其他功能 159

14.4苹果AirPlay播放音乐 159

14.4.1 AirPlay介绍 159

14.4.2安装与配置Shairport 159

14.4.3辅助配置和检查 161

14.4.4使用终端播放 162

第15章 智能路由器编程工具 163

15.1 Web+PHP建站系统 163

15.1.1 PHP语言 163

15.1.2 Web服务 164

15.1.3 PHP测试代码 167

15.2 SQLite3与MySQL数据库应用 169

15.2.1 SQLite3数据库 169

15.2.2 MySQL数据库 173

15.3 Python、 Lua与Ruby编程工具 174

15.3.1 Python 174

15.3.2 Lua 175

15.3.3 Ruby 175

第16章 智能路由器服务软件 177

16.1 VPN(PPTP)服务器与客户端 177

16.1.1 PPTP协议VPN服务器 177

16.1.2 PPTP协议VPN客户端 181

16.2 USB摄像头 183

16.2.1 USB摄像头准备 183

16.2.2 MJPG-streamer 184

16.2.3浏览器访问 186

16.3迅雷远程下载 187

16.3.1迅雷远程下载条件 187

16.3.2迅雷远程下载 190

16.4 WiFiDog广告路由器 192

16.4.1 WiFiDog功能服务 192

16.4.2 WiFiDog验证界面 195

第17章 编译定制OpenWrt固件 197

17.1 OpenWrt编译环境 197

17.1.1编译与交叉编译 197

17.1.2 AxWRT与OpenWrt的关系 198

17.1.3 OpenWrt的版本关系 199

17.1.4准备编译环境 199

17.2 OpenWrt固件生成 200

17.2.1编译流程 200

17.2.2获取AxWRT源代码 200

17.2.3获取软件包源代码 201

17.2.4 OpenWrt菜单选项配置 201

17.2.5编译固件 203

17.2.6清理编译 204

17.2.7编译完成 204

17.3 OpenWrt源码预设 205

17.3.1 Feeds源 205

17.3.2 OPKG自定义软件仓库 206

17.3.3预设编译参数文件 206

17.3.4 OpenWrt文件夹的作用 206

17.3.5 Target/Linux下平台预设文件 207

17.4 OpenWrt官方版编译 208

17.4.1关于编译 208

17.4.2关于硬件支持 209

第18章 编译定制IPK软件包 210

18.1 IPK软件包与OPKG命令 210

18.2 IPK软件包规范 210

18.2.1 Makefile格式与流程 211

18.2.2 PKG_*任务的作用 212

18.2.3定义Build/*的作用 213

18.2.4定义Package/*的作用 213

18.2.5 IPK软件包补充说明 214

18.3简易软件包mytest 215

18.3.1 mytest软件包的制作 215

18.3.2 mytest调试 216

18.3.3下载测试 217

18.4软件包示例xware 218

18.5软件包示例shairport 219

第19章 智能路由器外设应用实例 221

19.1 OpenWrt的硬件支持 221

19.1.1 DTS设备树 221

19.1.2 GPIO总线 223

19.2 OpenWrt对LED驱动的支持 224

19.2.1 LED电路设计 224

19.2.2手动测试LED 224

19.2.3将LED注册为系统标准LED 225

19.2.4 LED设置心跳功能 226

19.2.5将LED设置为WAN口状态 226

19.3 OpenWrt对按钮驱动的支持 226

19.3.1按钮电路设计 226

19.3.2手动测试按钮 227

19.3.3将按钮注册为系统按钮 228

19.3.4编写脚本检测按钮时长 228

19.4 OpenWrt对继电器驱动的支持 229

19.4.1继电器电路设计 229

19.4.2手动测试继电器 230