注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络网络与数据通信TCP IP路由技术英文版(第2卷 第2版)

TCP IP路由技术英文版(第2卷 第2版)

TCP IP路由技术英文版(第2卷 第2版)

定 价:¥168.00

作 者: [美] 杰夫·多伊尔(Jeff Doyle) 著;a 译
出版社: 人民邮电出版社
丛编项:
标 签: 计算机/网络 网络协议 网络与数据通信

购买这本书可以去


ISBN: 9787115444011 出版时间: 2017-03-01 包装: 平装
开本: 16开 页数: 1125 字数:  

内容简介

  《TCP IP路由技术(第2卷)(第2版)英文版》是有关Cisco外部路由协议和高级IP路由主题的quanwei指南,是Cisco路由与交换领域实属罕见的经典著作。《TCP IP路由技术(第2卷)(第2版)英文版》在上一版的基础上进行了全面更新,其可读性、广度和深度相较于上一版有了相当大的改进。《TCP IP路由技术(第2卷)(第2版)英文版》主要分为11章,其内容包括域间路由概念、BGP简介、BGP和NLRI、BGP和路由策略、扩展BGP、多协议BGP、IP组播路由简介、协议无关组播、扩展IP组播路由、IPv4到IPv4的网络地址转换(NAT44)、IPv6到IPv4的网络地址转换(NAT64)等。为了方便读者深入掌握各章所学知识,《TCP IP路由技术(第2卷)(第2版)英文版》提供了大量的案例分析材料,涵盖了协议配置、故障检测和排除等方面。每章在结束时都提供大量的复习题、配置练习和排错练习,以加强读者对所学知识的理解与记忆。《TCP IP路由技术(第2卷)(第2版)英文版》除了适合众多备考的准CCIE以及需要通过再认证的CCIE阅读,还非常适合从事大型IP网络规划、设计和实施工作的工程技术人员及网络管理员参考。

作者简介

  Jeff Doyle(CCIE #1919)是Fishtech实验室的研发副总裁,主要研究方向是IP路由协议、SDN NFV、数据中心架构、MPLS以及IPv6技术。Jeff设计或协助设计完成的大规模IP服务提供商网络以及企业网络遍及六大洲的26个国家,曾经协助日本、中国以及韩国开展IPv6的早期部署,为这些国家的服务提供商、政府机构、军队供应商、设备制造商以及大型企业提供IPv6zuijia部署方案的咨询服务。目前主要为大型企业提供数据中心基础设施、SDN以及SD-WAN等领域的演进咨询服务。Jeff是CCIE Professional Development: Routing TCP IP, Volumes I and II、OSPF and IS-IS: Choosing an IGP for Large-Scale Networks的作者,是Software Defined Networking: Anatomy of OpenFlow一书的合作者,同时还是 Juniper Networks Routers: The Complete Reference的编辑及特约作者。此外,Jeff还为福布斯以及Network World博客及Network Computing博客写作文章。Jeff是洛基山IPv6任务组的奠基人之一(是IPv6论坛会士),并负责ISOC(互联网协会)科罗拉多分会的执行委员会工作。Jeff和他的妻子Sara以及一只名叫Max的牧羊犬(狗狗世界的阿甘)住在科罗拉多州的威斯敏斯特。Jeff和Sara的生活非常美满,长期与四个成年子女及一大群孙子孙女们居住在方圆几英里的范围之内。

图书目录

Chapter 1 Inter-Domain Routing Concepts\t1
第1章 域间路由概念
Early Inter-Domain Routing: The Exterior Gateway Protocol (EGP)
早期的域间路由:外部网关协议(EGP) 1
Origins of EGP EGP起源 2
Operation of EGP EGP的运行 3
EGP Topology Issues EGP术语 3
EGP Functions EGP功能 5
Neighbor Acquisition Protocol 邻居获取协议 6
Neighbor Reachability Protoco 邻居可达性协议 8
Network Reachability Protocol 网络可达性协议 10
Shortcomings of EGP EGP的缺点 15
The Advent of BGP BGP的出现 16
BGP Basics BGP基础 17
Autonomous System Types 匿名系统类型 21
External and Internal BGP 外部和内部BGP 22
Multihoming  多宿主 29
Transit AS Multihoming 过渡AS多宿主 30
Stub AS Multihoming 末节AS多宿主 31
Multihoming and Routing Policies 多宿主和路由策略 36
Multihoming Issues: Load Sharing and Load Balancing 多宿主问题:
负载共享和负载平衡 36
Multihoming Issues: Traffic Control 多宿主问题:流量控制 37
Multihoming Issues: Provider-Assigned Addressing 多宿主问题:
供应商分配的编址 40
Classless Inter-Domain Routing 无类域间路由 41
A Summarization Summary 汇总总结 41
Classless Routing 无类路由 43
Summarization: The Good, the Bad, and the Asymmetric 汇总:
好的、坏的和非对称汇总 47
CIDR: Reducing Class B Address Space Depletion CIDR:
减缓了B类地址空间的消耗 50
CIDR: Reducing Routing Table Explosion CIDR:减缓了路由表的爆炸 50
Managing and Assigning IPv4 Address Blocks 管理和分配IPv4地址块 54
CIDR Issues: Multihoming and Provider-Assigned Addresses
CIDR问题:多宿主和供应商分配的地址 56
CIDR Issues: Address Portability CIDR问题:地址可移植性 58
CIDR Issues: Provider-Independent Addresses CIDR问题:
独立于供应商的地址 59
CIDR Issues: Traffic Engineering CIDR问题:流量工程 60
CIDR Approaches Its Limits CIDR接近其极限 62
IPv6 Comes of Age IPv6时代的到来 66
Routing Table Explosion, Again 再谈路由表的爆炸 66
Looking Ahead 展望 68
Review Questions 复习题 69
Chapter 2 Introduction to BGP 71
第2章 BGP简介
Who Needs BGP 谁需要BGP? 71
Connecting to Untrusted Domains 连接到不可信区域 71
Connecting to Multiple External Neighbors 连接到多个外部邻居 74
Setting Routing Policy 设置路由策略 79
BGP Hazards BGP的危害 82
Operation of BGP BGP的运行 84
BGP Message Types BGP消息类型 85
Open Message 打开(Open)消息 85
Keepalive Message 保活(Keepalive)消息 86
Update Message 更新(Update)消息 86
Notification Message 通知(Notification)消息 87
BGP Finite State Machine BGP有限状态机 87
Idle State 空闲状态 88
Connect State 连接状态 89
Active State 活跃状态 89
OpenSent State 打开发送(OpenSent)状态 89
OpenConfirm State 打开确认(OpenConfirm)状态 90
Established State 已建立(Established)状态 90
Path Attributes 路径属性 90
ORIGIN Attribute ORIGIN属性 92
AS_PATH Attribute AS_PATH属性 92
NEXT_HOP Attribute NEXT_HOP属性 97
Weight  权重 100
BGP Decision Process BGP决策过程 100
BGP Message Formats BGP消息格式 103
Open Message 打开(Open)消息 104
Update Message 更新(Update)消息 105
Keepalive Message 保活(Keepalive)消息 108
Notification Message 通知(Notification)消息 108
Configuring and Troubleshooting BGP Peering 配置和排错BGP对等体 110
Case Study: EBGP Peering 案例学习:EBGP对等体 110
Case Study: EBGP Peering over IPv6
案例学习:IPv6上的EBGP对等体 114
Case Study: IBGP Peering 案例学习:IBGP对等体 118
Case Study: Connected Check and EBGP Multihop
案例学习:连接检查和BGP多跳 127
Case Study: Managing and Securing BGP Connections
案例学习:管理和保护BGP连接 136
Looking Ahead 展望 142
Review Questions 复习题 143
Configuration Exercises 配置练习 144
Troubleshooting Exercises 排错练习 145
Chapter 3 BGP and NLRI 155
第3章 BGP和NLRI
Configuring and Troubleshooting NLRI in BGP
在BGP中配置和排错NLRI 155
Injecting Prefixes with the network Statement 用network
语句注入前缀 156
Using the network mask Statement 使用network mask语句 160
Injecting Prefixes with Redistribution 用重分布注入前缀 162
NLRI and IBGP NLRI和IBGP 167
Managing Prefixes in an IBGP Topology 在IBGP拓扑中管理前缀 168
IBGP and IGP Synchronization IBGP和IGP同步 179
Advertising BGP NLRI into the Local AS 将BGP NLRI通告近本地AS 182
Redistributing BGP NLRI into the IGP 将BGP NLRI重分布到IGP 182
Case Study: Distributing NLRI in a Stub AS with IBGP
案例学习:使用IBGP将NLRI重分布到末节AS 184
Distributing NLRI in a Stub AS with Static Routes
使用静态路由将NLRI重分布到末节AS 193
Advertising a Default Route to a Neighboring AS
将默认路由通告到邻居AS 196
Advertising Aggregate Routes with BGP 使用BGP通告聚合路由 198
Case Study: Aggregation Using Static Routes 案例学习:
使用静态路由进行聚合 199
Aggregation Using the aggregate-address Statement
使用aggregate-address语句进行聚合 201
ATOMIC_AGGREGATE and AGGREGATOR Attributes
ATOMIC_AGGREGATE和AGGREGATOR属性 207
Using AS_SET with Aggregates 使用带有聚合的AS_SET 210
Looking Ahead 展望 218
Review Questions 复习题 218
Configuration Exercises 配置练习 219
Troubleshooting Exercises 排错练习 223
Chapter 4 BGP and Routing Policies 237
第4章 BGP和路由策略
Policy and the BGP Database 策略和BGP数据库 238
IOS BGP Implementation IOS BGP实施 249
InQ and OutQ InQ和OutQ 249
IOS BGP Processes IOS BGP过程 251
NHT, Event, and the Open Processes NHT、事件和打开(Open)进程 256
Table Versions 表版本 258
Managing Policy Changes 管理路由变更 267
Clearing BGP Sessions 清除路由会话 268
Soft Reconfiguraton 软重配置 269
Route Refresh 路由刷新 274
Route Filtering Techniques 路由过滤技术 279
Filtering Routes by NLRI 使用NLRI过滤路由 280
Case Study: Using Distribute Lists 案例学习:使用分发列表 280
Route Filtering with Extended ACLs 使用扩展ACL进行路由过滤 292
Case Study: Using Prefix Lists 案例学习:使用前缀列表 293
Filtering Routes by AS_PATH 使用AS_PATH过滤路由 304
Regular Expressions 正则表达式 304
Literals and Metacharacters 字面量和元字符 305
Delineation: Matching the Start and End of Lines
划界:匹配行的开头和结尾 306
Bracketing: Matching a Set of Characters 括号:匹配一组字符 306
Negating: Matching Everything Except a Set of Characters
取反:匹配一组字符之外的内容 306
Wildcard: Matching Any Single Character
通配符:匹配任意单个字符 307
Alternation: Matching One of a Set of Characters
交替:匹配一组字符中的一个 307
Optional Characters: Matching a Character That May or
May Not Be There 可选字符:匹配可能存在也可能
存在的一个字符 307
Repetition: Matching a Number of Repeating Characters
重复:匹配多个重复的字符 307
Boundaries: Delineating Literals 边界:对字面量划界 308
Putting It All Together: A Complex Example 汇总:
一个复杂的例子 308
Case Study: Using AS-Path Filters 案例学习:使用AS_Path过滤器 309
Case Study: Setting Policy with Route Maps
案例学习:使用route map设置策略 314
Filter Processing 过滤处理 322
Influencing the BGP Decision Process 影响BGP决策过程 323
Case Study: Administrative Weights 案例学习:管理性权重 325
Case Study: Using the LOCAL_PREF Attribute
使用LOCAL_PREF属性 334
Case Study: Using the MULTI_EXIT_DISC Attribute
案例学习:使用MULTI_EXIT_DISC属性 343
Case Study: Prepending the AS_PATH 案例学习:
在前面加上AS_PATH 366
Case Study: Administrative Distances and Backdoor Routes
案例学习:管理性距离和后门路由 372
Controlling Complex Route Maps 控制复杂的route map 379
Continue Clauses 继续语句 380
Policy Lists 策略表 383
Looking Ahead 展望 386
Review Questions 复习题 386
Configuration Exercises 配置练习 388
Troubleshooting Exercises 排错练习 392
Chapter 5 Scaling BGP 401
第5章 扩展BGP
Scaling the Configuration 扩展配置 402
Peer Groups 对等体组 403
Peer Templates 对等体模板 413
Session Templates 会话模板 414
Policy Templates 策略模板 419
Communities  团体 425
Well-Known Communities 周知的团体 426
Arbitrary Communities 任意的团体 434
Using the AA:NN Format 使用AA:NN格式 443
Expanded Community Lists 膨胀的团体列表 445
Adding and Deleting Communities 添加和删除团体 460
Extended Community Lists 扩展的团体列表 472
Scaling BGP Functions 扩展BGP功能 478
Route Flap Dampening 路由抖动抑制 479
Outbound Route Filters (ORF) 带外路由过滤(ORF)486
Next-Hop Tracking 下一跳跟踪 496
Fast External Fallover 快速外部故障转移 509
Bidirectional Forwarding Detection (BFD) 双向转发检测(BFD) 512
BGP Prefix Independent Convergence (PIC) BGP前缀独立聚合(PIC) 523
ADD-PATHS Capability ADD-PATHS能力 528
Graceful Restart 优雅重启 538
Maximum Prefixes 最大前缀 540
Tuning BGP CPU 调整BGP CPU 552
Tuning BGP Memory 调整BGP内存 556
BGP Transport Optimization BGP传输优化 563
Optimizing TCP 优化TCP 563
Optimizing BGP Update Generation 优化BGP更新的生成 568
Optimizing TCP ACK Message Receipt 优化TCP ACK消息的接收 568
Scaling the BGP Network 扩展BGP网络 569
Private AS Numbers 首选AS号 569
4-Byte AS Numbers 四字节AS号 574
IBGP and the N-Squared Problem IBGP和N-Squared问题 575
Confederations  联盟 576
Route Reflectors 路由反射器 592
Looking Ahead 展望 606
Review Questions 复习题 607
Configuration Exercises 配置练习 608
Troubleshooting Exercises 排错练习 612
Chapter 6 Multiprotocol BGP 615
第6章 多协议BGP
Multiprotocol Extensions to BGP BGP的多协议扩展 616
MBGP Support for the IPv6 Address Family MBGP对IPv6地址族的支持 618
Configuring MBGP for IPv6 针对IPv6配置MBGP 619
IPv4 and IPv6 Prefixes over an IPv4 TCP Session
在IPv4 TCP会话上的IPv4和IPv6前缀 620
Upgrading IPv4 BGP Configurations to the Address Family Format
将IPv4BGP配置升级为地址族格式 629
IPv4 and IPv6 over an IPv6 TCP Connection
在IPv6 TCP连接上的IPv4和IPv6 631
Dual Stack MBGP Connection 双栈MBGP连接 642
Multihop Dual Stack MBGP Connection 多跳双栈MBGP连接 647
Mixed IPv4 and IPv6 Sessions 混合的IPv4和IPv6会话 650
Multiprotocol IBGP 多协议IBGP 654
Case Study: Multiprotocol Policy Configuration
案例学习:多协议策略的配置 666
Looking Ahead 展望 705
Review Questions 复习题 705
Configuration Exercises 配置练习 706
Question 1 问题1: 707
Troubleshooting Exercises 排错练习 709
Chapter 7 Introduction to IP Multicast Routing 713
第7章 IP组播路由简介
Requirements for IP Multicast IP组播的需求 716
IPv4 Multicast Addresses IPv4组播地址 717
IPv6 Multicast Addresses IPv6组播地址 721
Group Membership Concepts 组成员协议概念 724
Joining and Leaving a Group 加入和离开组 726
Join Latency 加入延迟 726
Leave Latency 离开延迟 727
Group Maintenance 组的维护 728
Multiple Routers on a Network 网络上的多台路由器 728
Internet Group Management Protocol (IGMP)
Internet组管理协议(IGMP) 729
IGMPv2 Host Functions IGMPv2主机功能 730
IGMPv2 Router Functions IGMPv2路由器功能 731
IGMPv1  IGMPv1 733
IGMPv3  IGMPv3 735
IGMP Message Format IGMP消息格式 736
Multicast Listener Discovery (MLD) 组播侦听发现(MLD) 742
IGMP  MLD Snooping IPGM MLD嗅探 745
Cisco Group Management Protocol (CGMP) Cisco组管理协议(CGMP) 749
Multicast Routing Issues 组播路由的问题 753
Multicast Forwarding 组播转发 754
Multicast Routing 组播路由 756
Sparse Versus Dense Topologies 稀疏技术与密集技术的对比 757
Implicit Joins Versus Explicit Joins 隐式加入和显式加入的对比 758
Source-Based Trees Versus Shared Trees 基于源的树和共享树的对比 760
Source-Specific Multicast (SSM) 特定源组播(SSM) 761
Multicast Scoping 组播范围 763
TTL Scoping TTL范围 763
Administrative Scoping 管理性范围 765
Looking Ahead 展望 766
Recommended Reading 推荐阅读 766
Review Questions 复习题 766
Configuration Exercises 配置练习 768
Chapter 8 Protocol Independent Multicast 771
第8章 协议无关组播
Introduction to Protocol Independent Multicast (PIM)
协议无关组播(PIM)简介 771
Operation of Protocol Independent Multicast-Dense Mode (PIM-DM)
协议无关组播-密集模式(PIM-DM)的运行 773
PIM-DM Basics PIM-DM基础 773
Prune Overrides 剪枝覆盖 779
Unicast Route Changes 单播路由变更 782
PIM-DM Designated Routers PIM-DM指定路由器 782
PIM Forwarder Election PIM转发器选举 782
Operation of Protocol Independent Multicast-Sparse Mode (PIM-SM)
协议无关组播-稀疏模式(PIM-SM)的运行 785
PIM-SM Basics PIM-SM基础 786
Finding the Rendezvous Point 查找汇聚点 787
Bootstrap Protocol 自举协议 787
Auto-RP Protocol Auto-RP协议 789
Embedded RP Addresses 嵌入式RP地址 790
PIM-SM and Shared Trees PIM-SM和共享树 793
Source Registration 源注册 796
PIM-SM and Shortest Path Trees PIM-SM和最短路径树 803
PIMv2 Message Formats PIMv2消息格式 808
PIMv2 Message Header Format PIMv2消息头格式 809
PIMv2 Hello Message Format PIMv2 Hello消息格式 810
PIMv2 Register Message Format PIMv2注册消息格式 811
PIMv2 Register Stop Message Format PIMv2注册停止消息格式 812
PIMv2 Join Prune Message Format PIMv2加入
剪枝消息格式 812
PIMv2 Bootstrap Message Format PIMv2自举消息格式 814
PIMv2 Assert Message Format PIMv2断言消息格式 815
PIMv2 Graft Message Format PIMv2嫁接消息格式 816
PIMv2 Graft-Ack Message Format PIMv2嫁接确认消息格式 816
Candidate-RP-Advertisement Message Format
候选RP通告消息格式 817
Configuring IP Multicast Routing 配置IP组播路由 817
Case Study: Configuring Protocol Independent Multicast-Dense
Mode (PIM-DM) 案例学习:配置PIM-DM 819
Configuring Protocol Independent Multicast-Sparse Mode (PIM-SM)
配置PIM-SM 828
Case Study: Statically Configuring the RP
案例学习:静态配置RP 829
Case Study: Configuring Auto-RP  837
案例学习:配置Auto-RP
Case Study: Configuring Sparse-Dense Mode
案例学习:配置稀疏模式 845
Case Study: Configuring the Bootstrap Protocol
案例学习:配置自举协议 849
Case Study: Multicast Load Sharing 案例学习:组播负载分担 856
Troubleshooting IP Multicast Routing 排错IP组播路由 863
Using mrinfo 使用mrinfo 865
Using mtrace and mstat 使用mtrace和mstat 867
Looking Ahead 展望 872
Recommended Reading 推荐阅读 872
Review Questions 复习题 873
Configuration Exercises 配置练习 873
Troubleshooting Exercises 排错练习 876
Chapter 9 Scaling IP Multicast Routing 881
第9章 扩展IP组播路由
Multicast Scoping 组播范围 881
Case Study: Multicasting Across Non-Multicast Domains
案例学习:在非组播域上的组播 885
Connecting to DVMRP Networks 连接到DVMRP网络 888
Inter-AS Multicasting AS间组播 891
Multiprotocol Extensions for BGP (MBGP) BGP组播扩展(MBGP) 894
Operation of Multicast Source Discovery Protocol (MSDP)
组播源发现协议(MSDP)的运行 896
MSDP Message Formats MSDP消息格式 898
Source Active TLV 源活跃TLV 898
Source Active Request TLV 源活跃请求TLV 899
Source Active Response TLV 源活跃响应TLV 900
Keepalive TLV 保活TLV 900
Notification TLV 通知TLV 900
Case Study: Configuring MBGP 案例学习:配置MBGP 902
Case Study: Configuring MSDP 案例学习:配置MSDP 908
Case Study: MSDP Mesh Groups 案例学习:MSDP互连组 913
Case Study: Anycast RP 案例学习:任播RP 917
Case Study: MSDP Default Peers 案例学习:MSDP默认对等体 923
Looking Ahead 展望 926
Review Questions 复习题 926
Configuration Exercise 配置练习 927
Chapter 10 IPv4 to IPv4 Network Address Translation (NAT44) 931
第10章 IPv4到IPv4的网络地址转换(NAT44)
Operation of NAT44 NAT44的运行 932
Basic NAT Concepts 基本的NAT概念 932
NAT and IP Address Conservation NAT和IP地址保护 934
NAT and ISP Migration NAT和ISP迁移 937
NAT and Multihomed Autonomous Systems NAT和多宿主自治系统 938
Port Address Translation (PAT) 端口地址转换(PAT)940
NAT and TCP Load Distribution NAT和TCP负载分布 942
NAT and Virtual Servers NAT和虚拟服务器 944
NAT Issues NAT的问题 944
Header Checksums 头部校验和 945
Fragmentation  分片 945
Encryption  加密 945
Security  安全 946
Protocol-Specific Issues 协议特定的问题 946
ICMP  ICMP 947
DNS  DNS 948
FTP  FTP 951
SMTP  SMTP 953
SNMP  SNMP 953
Routing Protocols 路由协议 953
Traceroute  traceroute 953
Configuring NAT44 配置NAT44 955
Case Study: Static NAT 案例学习:静态NAT 955
NAT44 and DNS NAT44和DNS 962
Case Study: Dynamic NAT 案例学习:动态NAT 964
Case Study: A Network Merger 案例学习:网络合并 969
Case Study: ISP Multihoming with NAT
案例学习:使用NAT的ISP多宿主 975
Port Address Translation 端口地址转换 980
Case Study: TCP Load Balancing 案例学习:TCP负载分担 982
Case Study: Service Distribution 案例学习:服务分布 984
Troubleshooting NAT44 排错NAT44 986
Looking Ahead 展望 988
Review Questions 复习题 989
Configuration Exercises 配置练习 989
Troubleshooting Exercises 排错练习 991
Chapter 11 IPv6 to IPv4 Network Address Translation (NAT64) 995
第11章 IPv6到IPv4的网络地址转换(NAT64)
Stateless IP ICMP Translation (SIIT) 无状态IP ICMP转换(SIIT) 997
IPv4  IPv6 Header Translation IPv4 IPv6头部转换 999
ICMP  ICMPv6 Translation ICMP ICMPv6转换 1002
Fragmentation and PMTU 分片和PMTU 1005
Upper-Layer Header Translation 顶层头部转换 1006
Network Address Translation with Port Translation (NAT-PT)
带有端口转换的网络地址转换(NAT-PT) 1007
Operation of NAT-PT NAT-PT的运行 1008
Configuring NAT-PT 配置NAT-PT 1010
Why Is NAT-PT Obsolete 为什么NAT-PT过时了? 1029
Stateless NAT64 无状态NAT64 1031
Operation of Stateless NAT64 无状态NAT64的运行 1031
Configuration of Stateless NAT64 无状态NAT64的配置 1036
Limitations of NAT64 NAT64的限制 1038
Stateful NAT64 有状态NAT64 1038
Operation of Stateful NAT64 有状态NAT64的运行 1038
Configuration of Stateful NAT64 有状态NAT64的配置 1041
Limitations of Stateful NAT64 有状态NAT64的限制 1043
Looking Ahead 展望 1043
Review Questions 复习题 1044
Configuration Exercise 配置练习 1044
Configuration Exercise Premise 大配置练习 1045
Appendix A Answers to Review Questions 1047
附录A 复习题答案
Index 1079
索引
Appendix B (online) Answers to Configuration Exercises
附录B (在线)配置练习答案
Appendix C (online) Answers to Troubleshooting Exercises
附录C (在线)排错练习答案

本目录推荐