作 者:林沛满 著 定 价:45 出 版 社:人民邮电出版社 出版日期:2016年02月01日 页 数:198 装 帧:平装 ISBN:9787115410214 作为网络工程师的你,想摆脱给别人留下的木讷、沉闷、呆板、不善言谈……的印象么?作为高校伟大人民教师的你,想在枯燥乏味的课堂中添加一些乐趣,换回学生的注意力么?作为公司IT部门的老好人,想在给美女同事露一手的同时,并通过渊博的学识来征服她们么?
如果以上答案都为Yes,那么《Wireshark网络分析的艺术》是你的读物,这本诙谐幽默轻松易读……的IT技术图书可以解决上述的所有问题。《Wireshark网络分析的艺术》广度与深度齐备,诙谐幽默的文笔背后是作者多年以来的技术积淀的厚积薄发。
●答读者问/1
●Linux为什么卡住了?/3
●像福尔摩斯一样思考/7
●一篇关于VMware的文章/12
●来点有深度的/18
●三次握手的小知识/22
●被误解的TCP/27
●*经典的网络问题/30
●为什么丢了单子?/36
●受损的帧/42
●虚惊一场/45
●NTLM协议分析/49
●Wireshark的提示/54
●工作中的Wireshark/61
●书上错了吗?/63
●计算“在途字节数”/68
●估算网络拥塞点/71
●顺便说说LSO/74
●熟读RFC/77
●一个你本该能解决的问题/82
●部分目录
内容简介
Wireshark是当前流行的网络包分析工具。它上手简单,无需培训就可入门。很多棘手的网络问题遇到Wireshark都能迎刃而解。
《Wireshark网络分析的艺术》挑选的网络包来自真实场景,经典且接地气。讲解时采用了生活化的语言,力求通俗易懂,以使读者在轻松阅读的过程中,既可以学到实用的网络知识,又能形成解决问题的思路。
与大多网络图书的课堂式体验不同,阅读《Wireshark网络分析的艺术》的感觉更像在听技术圈的朋友分享经验,除了知识,还有心情和想法。本书的覆盖范围从日常使用的手机App,到企业级的数据中心;从对付运营商的网络劫持,到开发自己的分析工具,不一而足。无论你是系统管理员、实施工程师、技术支持、网管、培训教师,还是开发和测试人员,都适合阅读本书。 林沛满 著 林沛满,2005年毕业于上海交通大学,现任EMC网络存储部门的主任工程师。多年来为多个产品团队提供过技术咨询,范围包括网络、操作系统、文件系统和域等,这就是本书所涵盖的协议如此五花八门的原因。每年临近加薪的日子,他也会组织一些技术培训来提醒上司。本书的部分内容就来自这些培训资料。
平时他也写一些技术博客,你或许还能在IT168或者ChinaUnix技术社区看到它们。本书也有少数内容来自这些博客。
当林先生不在工作时,大部分时间都花在了园艺花卉上,尤其是欧洲月季。
《Wireshark网络分析的艺术》并非一本介绍Wireshark软件本身操作技巧或功能列表的书籍。它更深入地探讨的是网络通信的底层原理、协议的精妙设计以及如何通过细致入微的数据包分析来洞察网络行为的本质。本书旨在帮助读者建立起一套严谨的网络分析思维模型,理解“为什么”数据包会以某种方式传输,而不是仅仅停留在“如何”捕捉和过滤。 网络世界的隐秘语言:深入理解协议栈的每一层 网络通信并非简单的信息传递,而是一个多层次、协作的复杂过程。本书将引导你穿越TCP/IP协议栈的层层迷雾,从物理层、数据链路层、网络层、传输层到应用层,逐一剖析每一层的职责、工作机制以及它们之间是如何协同工作的。 物理层与数据链路层:信号的传递与帧的构建 你将了解到信号如何在电缆或无线介质中传播,以及MAC地址如何在本地网络中充当“门牌号”,实现设备间的直接通信。书中会解析ARP协议的工作原理,它如何在IP地址和MAC地址之间架设桥梁,确保数据包能找到正确的网卡。此外,还会深入探讨以太网帧的结构,包括前导码、目的MAC地址、源MAC地址、类型字段以及最重要的载荷,理解这些字段的意义如何决定了数据帧的生命旅程。 网络层:路由的智慧与IP寻址的奥秘 IP协议是互联网的基石,本书将详细解读IPv4和IPv6地址的分配、划分子网的逻辑以及数据包如何在全球范围内被路由。你将学习到ICMP协议在网络诊断中的关键作用,例如ping命令背后的TTL(生存时间)机制,以及traceroute(tracert)如何揭示数据包的逐跳路径。书中还会触及IP分片与重组的复杂性,以及在遇到网络拥塞时,路由器的决策过程。 传输层:连接的建立、数据的可靠性与性能的权衡 TCP和UDP是传输层的两大支柱。本书将深入剖析TCP的“三次握 हाथ”与“四次挥手”,理解它是如何建立可靠的、面向连接的数据流的。你将学会分析TCP的序列号、确认应答、滑动窗口等机制,洞悉它如何保证数据的按序到达和避免丢包。对于UDP,你将理解它为何适用于实时通信和DNS查询等场景,以及它的“尽力而为”的特性。本书还将探讨TCP的拥塞控制算法,如Tahoe、Reno、Cubic等,以及它们如何动态调整发送速率以适应网络状况,从而影响网络的整体吞吐量和延迟。 应用层:业务逻辑的展现与协议的百态 当数据包抵达应用层时,它们承载着各种各样的服务。本书将精选若干典型应用层协议进行深入分析,例如: HTTP/HTTPS: 理解Web浏览器与服务器之间的通信过程,请求方法(GET, POST等)、状态码的含义,以及HTTPS如何通过SSL/TLS加密保护通信安全。 DNS: 探究域名解析的完整流程,从递归查询到迭代查询,以及DNS记录类型(A, CNAME, MX等)的作用。 FTP/SFTP: 分析文件传输协议的控制连接与数据连接,以及SFTP如何提供更安全的传输方式。 SMTP/POP3/IMAP: 了解电子邮件的发送与接收机制,以及它们之间在功能上的差异。 DHCP: 揭示动态主机配置协议如何为设备自动分配IP地址、子网掩码、网关和DNS服务器等网络配置信息。 数据包分析的艺术:从现象到本质的推理 本书的核心不在于罗列Wireshark的功能,而是教你如何运用Wireshark提供的能力,去“倾听”网络的声音,并从中解读出有价值的信息。 捕捉与过滤:精准定位目标 虽然不侧重软件操作,但本书会简要介绍有效的捕获过滤器和显示过滤器的构建原则,让你能够快速、准确地将注意力集中在关键的数据流上。理解过滤器的逻辑,如使用 `and`、`or`、`not` 以及各种协议字段进行组合,是减少干扰、提高分析效率的第一步。 帧、包、段、消息:理解层级结构与关联 数据在网络中是以不同层级的单位进行传输的。本书将引导你理解物理层的比特流如何被封装成数据链路层的帧,帧又如何被封装成网络层的包,包再被封装成传输层的段(TCP)或数据报(UDP),最终到达应用层成为一个完整的消息。理解这种封装与解封装的过程,是分析数据包的根本。 时间序列分析:洞察行为与异常 网络通信是一个动态的过程,时间是分析的关键维度。本书将教你如何通过观察数据包之间的时间间隔、往返延迟(RTT)等指标,来判断网络的健康状况、是否存在拥塞、以及应用程序的响应速度。例如,分析TCP的往返时间变化,可以判断网络拥塞程度;分析DNS查询的延迟,可以揭示DNS服务器的性能瓶颈。 状态追踪与流分析:还原通信全貌 对于面向连接的协议(如TCP),理解会话(Session)或流(Flow)的概念至关重要。本书将教你如何追踪一个TCP连接的整个生命周期,从三次握 हाथ的开始,到数据传输过程中的各种交互,再到四次挥手的结束。这有助于你理解连接的状态变化,判断连接是否正常建立、数据是否成功传输,以及是否存在连接中断等问题。 协议字段的深入解读:挖掘隐藏的信息 每一个协议字段都蕴含着丰富的信息。本书将引导你逐一解读关键协议字段的含义,例如TCP的标志位(SYN, ACK, FIN, RST等)如何指示连接状态;IP包头中的TTL值如何影响包的生存时间;HTTP请求头中的User-Agent如何标识客户端类型。通过对这些细节的深入分析,你可以推断出更深层次的网络行为和应用特性。 异常与问题定位:诊断网络故障的利器 本书将重点讲解如何识别和分析各种常见的网络异常现象,并将这些异常与具体的协议缺陷或网络配置问题联系起来。例如: 丢包与重传: 分析TCP的重传机制,判断丢包原因(网络拥塞、链路故障、硬件问题等)。 延迟与抖动: 识别高延迟和高抖动的网络,分析其对实时应用的影响。 连接建立失败: 诊断TCP三次握手失败的原因,可能是防火墙阻挡、服务器无响应、或网络层问题。 乱序到达: 理解TCP如何通过序列号来重组乱序的数据包,并分析导致乱序的原因。 安全隐患: 识别不安全的协议使用(如明文HTTP)、潜在的扫描行为或恶意流量。 不仅仅是工具的使用,更是思维的升华 《Wireshark网络分析的艺术》并非一本“傻瓜式”教程,它不会直接告诉你点击哪个按钮能解决什么问题。相反,它致力于培养读者独立思考、分析和解决问题的能力。通过本书的学习,你将能够: 建立严谨的逻辑推理能力: 从零散的数据包中抽丝剥茧,建立起清晰的因果关系。 培养敏锐的洞察力: 发现网络中看似微小却至关重要的细节。 提升故障排除效率: 能够快速定位网络问题的根源,而不是盲目尝试。 深化对网络技术的理解: 不再满足于表面的功能,而是真正理解其工作原理。 提升安全意识: 能够通过网络流量分析,发现潜在的安全风险。 本书的目标是让你成为一名真正的“网络侦探”,能够解读网络世界的隐秘语言,洞悉数据流动的脉络,从而在错综复杂的网络环境中游刃有余。它是一次深入探索网络运行机制的旅程,一次对网络协议精妙设计的赞叹,更是一场关于如何通过细致分析来揭示真相的智慧较量。
这本《Wireshark网络分析的艺术》带给我的,是一种前所未有的视角,去理解我们每天都在使用的网络世界。我一直以为网络就是连接,数据就是信息,但这本书让我看到了更深层次的东西——那些肉眼看不见的,却至关重要的通信细节。它不仅仅是关于Wireshark这个软件本身,更是关于如何“看懂”网络,如何从海量的数据流中提取出有用的信息,甚至是发现潜在的安全隐患。我特别欣赏书中对各种网络协议的拆解分析,那些平日里只是听过名字的术语,在这本书里都变得栩栩如生,我能清楚地看到TCP握手的过程,理解HTTP请求和响应的来龙去脉,甚至能辨别出不同类型的网络攻击痕迹。这种深入骨髓的理解,是我之前通过其他渠道很难获得的。而且,作者在讲解时,并没有直接抛出结论,而是引导读者去思考,去猜测,然后再揭示答案,这种互动式的学习体验,让我感觉自己不是在被动接受信息,而是在主动探索和学习。每次读完一章,都会有一种豁然开朗的感觉,对网络的理解又进了一层。