计算机网络 | 网络诊断双刃剑:Tracert路由追踪实战与Windows防火墙端口配置指南

发布时间:2026/7/18 5:01:32

计算机网络 | 网络诊断双刃剑:Tracert路由追踪实战与Windows防火墙端口配置指南 我们先深入路由追踪的实战读图技巧再手把手教你Windows 防火墙手动开端口。这两者其实是“找堵点”和“拆路障”的关系路由追踪帮你定位网络在哪一层卡住了防火墙则是那个可能被你本地“误杀”的路障。第一部分路由追踪Tracert / Traceroute—— 读图诊断当你访问一个网站很慢但ping只是显示“超时”时路由追踪能告诉你到底是在家门口堵了还是跨省高速上堵了。1. 命令怎么敲Windows (CMD)tracert -d www.baidu.com-d强烈建议加上。它禁止将 IP 解析为域名速度会快 10 倍且输出更清爽。Linux/macOS (Bash)traceroute -n www.baidu.com-n同样禁止域名解析。2. 输出解读核心实战假设输出如下模拟数据1 1 ms 1 ms 1 ms 192.168.1.1 2 5 ms 4 ms 5 ms 100.64.0.1 3 * * * 请求超时。 4 12 ms 11 ms 13 ms 172.16.1.22 5 * * * 请求超时。 6 35 ms 34 ms 36 ms 110.242.68.66 [目标到达]看这 6 行我们该怎么分析第 1 跳1ms这是你的家用路由器/网关。延迟极低是正常的。如果这一跳都超时或几百毫秒说明你家的网线松了或路由器快挂了。第 2 跳5ms这是运营商接入层光猫或小区交换机。延迟从 1ms 跳到 5ms这是光电转换的正常损耗。第 3 跳全是*星号这里敲黑板很多新手看到星号就以为断网了。错这只是代表这一跳的路由器设置了“不回应 ICMP 超时消息”出于安全考虑。数据包其实已经过去了看第 4 跳还在继续说明路由是通的不用管它。第 4 跳12ms进入运营商城域网骨干。延迟 12ms 很不错。第 5 跳又是*同上被防火墙屏蔽忽略。第 6 跳35ms到达百度服务器。35ms 对于跨省访问是极好的质量。 真正的故障标志重点关注如果从第 3 跳开始后面的所有跳数全部显示*且超时这才说明路由在第 2 跳和第 3 跳之间断了丢包黑洞。此时直接联系宽带运营商报修即可。补充利器进阶如果你觉得tracert每次只测一次不够准确请在 Windows 上下载WinMTR开源小工具。它将ping和tracert结合会持续向每一跳发包并计算实时丢包率能帮你精准判断是“瞬间波动”还是“持续性断流”。第二部分Windows 防火墙手动开放端口图文实操假设你写了一个 Python Web 服务跑在127.0.0.1:8000局域网同事访问不了。别急大概率是 Windows 防火墙拦住了入站请求。下面教你图形界面和命令行两种开门方式。☑ 方案 A图形界面最直观适合新手❶ 打开高级防火墙按Win R输入wf.msc并回车。注意不是firewall.cpl那个太简单了调不出端口规则。❷ 新建入站规则点击左侧“入站规则”再点右侧“新建规则...”。❸ 选择端口选中“端口”点击“下一步”。❹ 填写端口协议选TCP大多数服务。特定本地端口填8000如果你要开 RDP 远程桌面就填3389。点击“下一步”。❺ 允许连接默认选中“允许连接”点“下一步”。❻ 选择配置文件⚠️ 最大陷阱域公司域环境才用。专用家庭或工作网络建议勾选。公用餐厅、星巴克等公共 WiFi极度危险建议不要勾选除非你清楚风险。如果你当前网络状态是“公用网络”但只勾选了“专用”规则不会生效请确认你右下角网络图标对应的配置文件。❼ 取名随意输入名称如My_Web_8000点击“完成”。☑ 方案 B命令行CMD / PowerShell 极速版如果你喜欢敲命令以下两条任选其一管理员权限运行CMDnetsh 传统写法netsh advfirewall firewall add rule nameOpen_Port_8000 dirin actionallow protocolTCP localport8000PowerShell新式面向对象写法推荐New-NetFirewallRule -DisplayName Open_Port_8000 -Direction Inbound -LocalPort 8000 -Protocol TCP -Action Allow✔ 删除规则清理门户如果测试完毕要关掉这个口子图形在wf.msc的入站规则列表里找到你取的名字右键“禁用”或“删除”。CMDnetsh advfirewall firewall delete rule nameOpen_Port_8000PSRemove-NetFirewallRule -DisplayName Open_Port_8000 给你一个“验证闭环”的流程当你开完端口后如何确认真的生效了不用找同事自己在 CMD 里测先把刚才开的端口规则启用。在 CMD 里执行netstat -ano | findstr :8000确认你的服务确实在监听0.0.0.0:8000而不是127.0.0.1——后者代表只能本机自己访问。在另一台电脑上浏览器输入http://你的电脑IP:8000能打开即成功。附深入 Wireshark 抓包看 TCP 握手细节我们接着从路由追踪和防火墙深入到更底层的Wireshark 抓包分析。这将是把之前所有的理论知识变成肉眼可见的“电信号”的过程。Wireshark 就像网络世界的“显微镜”和“心电图机”能让你亲眼看到 TCP 三次握手的每一个数据包。 ☛ | 下载WiresharkWireshark • Go Deep下面我会手把手带你操作一遍并教你如何解读抓到的包。☀ 准备工作开始抓包下载与安装从 Wireshark 官网下载并安装。选择网卡打开软件后会看到一张网卡列表。选择你正在上网的那块网卡如“WLAN”或“以太网”然后点击左上角的蓝色鲨鱼鳍图标开始抓包。触发流量打开浏览器访问一个网站如www.baidu.com。为了只分析握手过程访问一次就够了。停止抓包等网页加载完点击红色方块按钮停止抓包。☀ 核心技能使用过滤器抓到的包可能成千上万我们需要用过滤器把目光聚焦在 TCP 三次握手上。Wireshark 的过滤器分两种捕获过滤器抓包之前设置只抓符合条件的包比较“粗糙”。显示过滤器抓包之后设置从已抓到的包中筛选显示非常“精细”。我们主要用这种。在软件顶部的“显示过滤器”输入框输入下面任一过滤条件过滤出完整的TCP握手会话强烈推荐tcp.completeness 7原理完整的 TCP 三次握手由SYN(值1) SYN-ACK(值2) ACK(值4) 组成总和为 7。这个过滤器能直接帮你找出所有完整的握手过程。只显示握手相关的包tcp.flags.syn 1输入后回车列表里应该就只剩下几个包了。☀ 实战分析解码三次握手现在让我们在过滤后的列表里按顺序分析这三个核心数据包。1. 第一次握手客户端 → 服务器 (SYN)这是客户端你的电脑发出的“请求建立连接”的信号。怎么看在列表里找到Info列显示为SYN的包点击它。关键信息在下方详细栏展开Transmission Control Protocol你会看到Source Port (源端口)一个随机的高位端口号如 49152是你的电脑用来通信的“出口”。Destination Port (目标端口)80(HTTP) 或443(HTTPS)是服务器上提供服务的“入口”。Flags (标志位)SYN标志位被置为 1其他为 0。Sequence Number (序列号, seq)一个初始值图中常显示为0。这是客户端发送数据的“起始编号”。通俗理解你客户端对百度服务器喊了一声“喂SYN我要建立连接这是我的初始编号 0。”2. 第二次握手服务器 → 客户端 (SYN-ACK)这是服务器回复的“确认并同意建立连接”的信号。怎么看找到Info列显示为SYN, ACK的包。关键信息展开后你会看到FlagsSYN和ACK两个标志位都被置 1。Acknowledgment Number (确认号, ack)值为1。这个数字 客户端的初始序列号(0) 1意思是“我已收到你的 SYN 包下一个包我期望的编号是 1”。Sequence Number (seq)服务器自己的初始序列号图中也常显示为0。通俗理解百度服务器听到了你的喊话并回复“收到ACK我同意连接SYN这是我的初始编号 0下次请发编号 1 的包给我。”3. 第三次握手客户端 → 服务器 (ACK)这是客户端向服务器发出的最终“确认收到你的确认”的信号。怎么看找到Info列显示为ACK的包。关键信息Flags只有ACK标志位被置 1SYN为 0。Sequence Number (seq)值为1。因为服务器期望的下一个序列号是 1所以客户端这次发送的包序号就是 1。Acknowledgment Number (ack)值为1。 服务器的初始序列号(0) 1表示收到服务器的 SYN 包。通俗理解你最后回复百度“收到你的确认ACK” 到此连接正式建立。完成三次握手后双方状态变为ESTABLISHED。紧接着你就会看到第四个包通常是真正的应用数据比如HTTP请求。☞ 相关参考TCP硬核剖析 | 近 40 张图解被问千百遍的 TCP 三次握手和四次挥手面试题☞ 相关参考☀ 进阶分析异常情况速查掌握正常流程后也要能识别异常[TCP Retransmission]重传。表示一个包没收到确认被重新发送了。少量的重传正常大量出现则说明网络有丢包或延迟。[TCP Dup ACK]重复确认。接收方反复确认同一个序列号通常意味着有包丢失触发了快速重传。[TCP RST]重置。连接被突然终止。可能因为端口未开放、服务崩溃或防火墙拦截。掌握了 Wireshark你就拥有了网络排障的“终极武器”。它把抽象的网络协议变成了可见的数据包让问题无处遁形。☀ 相关参考资料cmd 与 bash 基础命令入门 | DOS命令大全及用法一文读懂从入门到实战的终极指南计算机网络 | 网络端口连通性检测与本地端口占用进程排查指南实战 | 我用“大白鲨”让你看见 TCP_大白鲨抓包-CSDN博客TCP硬核剖析 | 近 40 张图解被问千百遍的 TCP 三次握手和四次挥手面试题-CSDN博客

相关新闻