在 Windows 10 中,TCP/IP 协议栈(包括 IPv4 和 IPv6)是作为操作系统的一部分预先安装的,并不需要额外的安装步骤。相关的协议文件和配置通常保存在系统的以下位置
Windows TCP/IP 协议栈 完整拆解解构
对象:Windows 内核实现的 TCP/IP 协议栈(IPv4+IPv6),包含驱动、服务、用户态 API;分析框架:底层原理|依赖文件|依赖关系|配套链|逻辑链路|边界
一、底层原理
Windows TCP/IP 是内核态为主、用户态辅助的分层实现,遵循 OSI 模型,由 NDIS 网络驱动框架承接网卡硬件,内核协议栈完成 IP、ICMP、ARP、TCP、UDP 处理,再向用户态导出 Winsock 接口。
分层自上而下:
- 用户态层:Winsock2 (
ws2_32.dll),应用程序 socket 编程入口 - 传输层内核:
tcpip.sys实现 TCP、UDP - 网络层内核:
tcpip.sys实现 IPv4/IPv6、ICMP、ARP、路由、分片重组 - 接口层:NDIS 框架,网卡小端口驱动,数据包收发,链路层帧封装解封装
核心关键机制:
- TCP:滑动窗口 (rwnd 接收窗口、cwnd 拥塞窗口)、三次握手、四次挥手、重传计时器、SACK、延迟 ACK、Nagle 算法、keep‑alive 保活。
- UDP:无连接,不可靠,仅校验和,无重传,数据包尽力交付。
- IP 层:路由表、源 IP 选择、数据包分片与重组、ARP 地址解析、ICMP 错误反馈。
- 套接字 Socket:内核维护 socket 对象,保存五元组(源 IP、源端口、目的 IP、目的端口、协议),所有 socket 状态存于内核内存。
- 筛选:WFP (Windows Filtering Platform),在内核协议栈不同层挂载过滤回调,实现防火墙、QoS、NAT。
注意:
tcpip.sys是 Windows TCP/IP 协议栈核心单一内核驱动,IP/TCP/UDP/ICMP 全部实现在该驱动内。
二、依赖文件
| 组件 | 文件名 | 类型 | 作用 |
|---|---|---|---|
| TCP/IP 主协议栈驱动 | tcpip.sys |
内核驱动 | 实现 IPv4/IPv6、ARP、ICMP、TCP、UDP、路由,协议栈核心 |
| NDIS 网络驱动框架 | ndis.sys |
内核驱动 | 网卡驱动与 tcpip.sys 之间的中间层,管理数据包收发、适配器绑定 |
| Winsock2 用户态 | ws2_32.dll |
用户态 DLL | 应用程序 socket API,把调用转发到内核 |
| Winsock 内核支持 | afd.sys |
内核驱动 | AFD(Ancillary Function Driver),套接字内核支撑,管理 socket 对象,IO 完成端口,socket 读写 |
| Winsock 提供者 | mswsock.dll |
用户态 DLL | Winsock 扩展,实现高性能 API(AcceptEx、ConnectEx 等) |
| WFP 过滤平台 | fwpkclnt.sys |
内核驱动 | WFP,协议栈各层钩子,防火墙、NAT、QoS、数据包过滤 |
| 网络配置存储 | netiohlp.dll |
用户态 DLL | 操作路由表、IP 接口配置,读取写入注册表网络参数 |
| 网络相关服务可执行 | svchost.exe |
宿主进程 | 承载 Dhcp、DNS、NLA 等网络服务 |
注册表关键存储路径
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
HKLM\SYSTEM\CurrentControlSet\Services\AFD\Parameters
保存:TCP 窗口、重传、keepalive、MTU、路由缓存、ARP 缓存等可调参数。
三、依赖关系
- 启动加载顺序依赖
ndis.sys→tcpip.sys→afd.sys;网卡小端口驱动依赖 ndis.sys;tcpip.sys 依赖 ndis.sys 接收链路层帧;afd.sys 依赖 tcpip.sys 提供传输层能力。 - Afd.sys 与 Tcpip.sys 分工
tcpip.sys:纯粹协议逻辑,处理包、序号、握手、重传;不处理应用 IO 读写。afd.sys:套接字抽象层;维护 socket 句柄、用户态与内核态数据拷贝、IO 完成、异步 IO;调用 tcpip.sys 接口收发报文。
应用调用
socket() / connect() / send() / recv()链路:ws2_32.dll→afd.sys→tcpip.sys。
- WFP 依赖 防火墙、第三方 VPN 过滤驱动,依赖
fwpkclnt.sys,在 tcpip.sys 数据包处理各个插入点注册回调,可丢弃、修改、重定向数据包。关闭 WFP 会直接破坏防火墙、NAT 功能。 - 配置服务依赖(svchost 承载)
- Dhcp:获取 IP 地址
- Dnscache:DNS 解析缓存
- NlaSvc:网络位置感知,判断网络连通状态
- WinHttp、WinInet:上层 HTTP 库,底层调用 Winsock
- 网卡硬件依赖 网卡小端口驱动把硬件帧上交 NDIS,再交给 tcpip.sys;没有正常网卡驱动,协议栈虽然加载,但没有收发通路。
- 版本依赖 不同 Windows 版本
tcpip.sys行为差异:TCP 初始拥塞窗口、ECN、RACK 重传算法、IPv6 默认行为、MQ 扩展等随系统版本变化;注册表部分参数在新版本已经废弃不再生效。
四、配套链
4.1 用户态工具(查看 / 调试协议栈)
ipconfig # 查看接口IP配置
route print # 查看内核路由表
arp -a # ARP缓存
netstat -ano # 查看socket五元组、连接状态
netsh int ip # 修改IP、重置协议栈
netsh int tcp # 调整TCP全局参数
powershell Get‑NetTCPConnection
tracert / pathping
4.2 重置修复配套
# 重置TCP/IP协议栈注册表配置
netsh int ip reset
netsh int tcp reset
4.3 上层 API 链条
- 原生 Socket:
ws2_32.dll+mswsock.dll→afd.sys→tcpip.sys - HTTP 库:
winhttp.dll/wininet.dll内部封装 Winsock - .NET:
System.Net.Sockets,托管层封装 Win32 Winsock API
4.4 过滤与安全配套
- Windows Defender 防火墙:基于 WFP 平台,在内核 tcpip.sys 各层拦截数据包
- 第三方杀毒、VPN、代理软件:大多注册 WFP 过滤器或者 NDIS 中间层驱动介入协议栈。
五、逻辑链路(TCP 连接完整时序:客户端主动 connect)
- 应用程序调用
socket(AF_INET,SOCK_STREAM,0),ws2_32.dll 进入内核调用afd.sys创建 socket 内核对象。 - 应用调用
connect()传入目标 IP 端口;afd.sys 将连接请求下发tcpip.sys。 - tcpip.sys 传输层处理:分配 TCB (Transmission Control Block,TCP 控制块),填充五元组,发起SYN 报文。
- IP 层做路由查找,选择源 IP、出网卡接口;报文交给 NDIS;网卡驱动封装以太网帧发送至硬件。
- 网卡收到对端 SYN‑ACK,硬件中断上交 NDIS,递交
tcpip.sys。 - tcpip.sys 完成三次握手,TCB 状态变为 ESTABLISHED;通知 afd.sys,通知用户态 connect 调用返回成功。
- 应用
send()发送数据:afd.sys 拷贝用户缓冲区到内核;tcpip.sys 做 TCP 分段、滑动窗口、拥塞控制,交给 IP 层分片,网卡发出。 - 对端数据包到达:网卡→NDIS→tcpip.sys,校验序列号、rwnd/cwnd;重组完成上交 afd.sys;用户态
recv()读取数据。 - 应用调用
closesocket(),触发四次挥手;tcpip.sys 完成 FIN 交互;TCB 进入 TIME‑WAIT,超时后释放内核资源。
UDP 链路简化:无握手;sendto 直接封装 UDP 报文发出;recvfrom 接收到达的 UDP 数据报;内核不维护连接状态。
入站数据包总路径:网卡硬件中断 → 网卡小端口驱动 → NDIS.sys → tcpip.sys(IP→TCP/UDP 处理) → afd.sys → 用户态应用。
六、边界(约束、限制、失效条件、坑点)
6.1 内核资源边界
- TCB(TCP 控制块)内核内存有限;大量短连接会耗尽 TCB,出现无法新建连接,大量 TIME_WAIT 堆积。
- Socket 句柄总数受系统非分页池内存限制;高并发场景非分页池泄露会导致协议栈异常。
6.2 TCP 算法边界
- rwnd(接收窗口):由接收方应用缓冲区大小决定;应用读取慢会通告 0 窗口,发送方停止发送。
- cwnd 拥塞窗口:由本地 tcpip.sys 拥塞控制算法决定,和对端无关。
- TIME‑WAIT 状态:默认保持 2*MSL,端口占用;不能立刻复用该五元组;注册表参数可调,但不建议随意修改。
- Nagle 算法、延迟 ACK,会造成小包延迟,是很多低时延业务的性能瓶颈。
6.3 IPv4 / IPv6 边界
- tcpip.sys 同时支持双栈;应用可以分别创建 AF_INET/AF_INET6 socket;
- IPv6 不会自动 ARP,使用 NDV 邻居发现;IPv4 使用 ARP;两套缓存独立。
6.4 WFP 过滤边界
- WFP 过滤器可以在 IP 入、IP 出、传输层等各个点丢弃、篡改数据包;第三方软件错误 WFP 过滤器会直接断网,ping 不通、但是网卡显示正常。
- WFP 驱动异常会导致
tcpip.sys数据包被静默丢弃,上层应用无明确报错。
6.5 AFD.Sys 边界
- afd.sys 负责用户‑内核缓冲区拷贝;大吞吐量场景存在拷贝开销;支持 IOCP 完成端口做高性能异步 socket。
- 旧版本 Windows 存在 afd.sys 内存泄露漏洞,大量 socket 不彻底关闭消耗非分页内存。
6.6 配置边界
- 注册表 Tcpip 参数,部分参数仅重启生效,部分热生效;部分参数新版本 Windows 已经废弃,修改不产生效果。
- MTU 不匹配会造成数据包分片,过大分片会丢包,出现 “小包通、大包不通” 典型现象。
6.7 失效条件清单
- ndis.sys、tcpip.sys、afd.sys 驱动损坏或者版本不匹配 → 网络完全不可用。
- 第三方 VPN / 安全软件的 WFP/NDIS 中间层驱动故障 → 断网。
- 非分页池耗尽,大量 TCP 连接,系统无法新建 socket。
- 网卡驱动异常,NDIS 收发包失败,协议栈本身完好但是没有硬件通路。
- 防火墙 WFP 规则拦截,协议栈收到包,直接在内核丢弃,应用收不到。
6.8 重要误区
- Winsock(ws2_32.dll)只是用户态 API,不实现 TCP 协议;真正协议全部在内核
tcpip.sys。 - netstat 看到连接状态全部来自内核 tcpip.sys 的 TCB,不是应用内存。
- netsh int ip reset 只是重置注册表参数,不会替换 tcpip.sys 驱动文件。
Windows TCP/IP 协议栈演进历程
核心对象:
tcpip.sys协议栈驱动、NDIS 框架、AFD、Winsock、WFP;从早期 Windows 到 Win11/Server2025 的架构、算法、特性、底层变更;区分用户态 Winsock 与内核 tcpip.sys 演进。
底层总背景
- Windows NT3.1‑NT4:TCP/IP 为第三方引入实现,并非原生内核内置;
- Windows 2000:TCP/IP 栈完全重写,移入内核
tcpip.sys,奠定现代 Windows 协议栈基础; - Vista/Server2008:引入 WFP 过滤平台、双栈 IPv4+IPv6 原生、全新 TCP 拥塞控制;
- Win8‑Win8.1:RACK 重传算法、TCP 快速打开 TFO;
- Win10 多版本:持续迭代拥塞算法、ECN、MQ、UDP 性能增强;
- Win11:CUBIC 默认、BBR 支持、增强 UDP/GRO/GSO、IPv6 强化、QUIC 内核支持。
重要:自 Windows2000 之后,内核协议栈主体始终是
tcpip.sys,没有更换主体驱动,是迭代升级,不是推倒重来。
完整时间线演进
1. Windows NT 3.1 / NT 3.51(1993‑1995)
- 协议栈来源:来自 BSD4.3‑Lite 移植版本,用户态 + 内核混合实现,不是 tcpip.sys;
- Winsock 1.1,只支持 IPv4;
- 无原生 IPv6;拥塞控制为 Reno 早期版本;
- NDIS 3.x;
- 缺陷:性能差,高并发连接稳定性弱,TCP 参数调优项少,企业场景容易出现连接耗尽。
2. Windows NT 4.0(1996)
- Winsock 升级到 Winsock2,支持多协议提供者架构;
- TCP/IP 仍然是 BSD 移植实现,尚未重构为现代
tcpip.sys; - NDIS 4.0;
- 开始支持大 TCP 窗口,支持 SACK 选择性确认;
- 依然存在大量 BSD 移植遗留问题;IPv6 需要额外第三方组件。
3. Windows 2000(NT5.0,2000)【里程碑重构】
现代 Windows TCP/IP 的奠基版本
- 完全重写内核协议栈,诞生
tcpip.sys,IP/TCP/UDP 移入内核态; - AFD.Sys 正式定型,作为套接字内核驱动,分离协议处理与应用 IO;
- NDIS5;支持 802.1Q VLAN;
- 原生支持 SACK、窗口缩放 RFC1323;
- Winsock2 成熟;
- IPv6 作为可选预览组件,非系统自带;
- 引入大量可注册表调优参数:TcpMaxSynBacklog、TcpNumConnections、KeepAlive 等。
自此架构定型:
ws2_32.dll → afd.sys → tcpip.sys → ndis.sys,这套架构一直延续到 Win11。
4. Windows XP / Server2003(NT5.1/5.2,2001‑2003)
- 延续 Win2000 的
tcpip.sys架构,内核主体不变; - NDIS5.1;
- IPv6 为可选安装组件,默认关闭;
- TCP 拥塞控制:Reno;
- 大量运维熟知的注册表调优项;
- 限制:默认 TCP 并发连接数、半连接队列存在硬性限制;高并发服务容易 TIME‑WAIT 堆积;
- 无 WFP,防火墙是独立驱动,没有统一内核过滤框架。
XP 时代常见优化教程大多针对该版本 tcpip.sys 参数。
5. Windows Vista / Server2008(NT6.0,2006)【第二大里程碑】
- WFP Windows Filtering Platform 正式引入
fwpkclnt.sys- 替代老旧过滤钩子;防火墙、VPN、QoS 全部基于 WFP;协议栈各个分层提供过滤回调点。
- IPv4+IPv6 双栈原生内置,默认安装启用,不再需要单独安装组件;邻居发现 NDIS 完善。
- TCP 拥塞算法升级为 Compound TCP (CTCP),面向宽带高速长肥网络优化。
- NDIS6.0:全新 NDIS 驱动模型,废弃 NDIS5,支持接收端缩放 RSS,多核网卡多队列,大幅提升吞吐性能。
- 废弃大量 XP 时代旧注册表参数;很多旧调优参数不再生效。
- 支持 ECN 显式拥塞通知。
重大变化:很多 XP 网上流传 TCP 优化注册表,在 Vista 及以后版本无效。
6. Windows 7 / Server2008 R2(NT6.1,2009)
- 延续 Vista 架构;
tcpip.sys迭代维护; - NDIS6.20;RSS 接收缩放增强;支持 TCP Chimney Offload 网卡硬件卸载;
- CTCP 继续作为默认拥塞控制;
- IPv6 稳定性完善;
- WFP 能力增强;
- 修复大量 TCP 重传、零窗口、TIME‑WAIT 相关 Bug。
7. Windows 8 / Windows Server 2012(NT6.2,2012)
- 引入 RACK TCP 重传算法,解决乱序环境错误重传问题,提升高抖动网络表现。
- 支持 TCP Fast Open (TFO) TCP 快速打开,减少握手 RTT。
- NDIS 6.30;支持 VMMQ 虚拟机多队列;
- UDP 性能优化;增加 UDP 校验和卸载;
- WFP 增加更多层过滤点;支持数据包流跟踪。
8. Windows 8.1 / Server2012R2(NT6.3,2013)
- RACK 算法完善;TFO 默认关闭,需要注册表开启;
- 增强 TCP 时间戳处理;改进拥塞响应;
- 改进 IPv6 临时地址、隐私扩展逻辑。
9. Windows10 系列(NT10.0,2015 起,多版本迭代)
Win10 不是一次大重构,是持续小步迭代
tcpip.sys
- 1507‑1709:CTCP 仍然默认;持续优化 RACK;完善 TFO;
- 1709:支持 CUBIC 拥塞控制算法,可配置切换 CUBIC / CTCP;
- 1903:CUBIC 正式成为 Windows 默认 TCP 拥塞控制算法;CTCP 保留兼容;
- 支持 ECN 增强;TCP 选择性 SACK 性能优化;
- NDIS 持续升级,GSO/GRO 通用分段 / 接收合并;
- UDP 性能大幅提升,适合 QUIC;
- 内核态开始孵化 MsQuic,为 QUIC 协议做准备;
- 大量老旧注册表参数彻底移除,不再读取。
重点:网上大量 XP 时代 “TCP 优化” 文档,对 Win10 基本无效,甚至有害。
10. Windows 11 / Server 2022 / Server2025(NT10.0,2021‑至今)
- 默认拥塞控制 CUBIC;支持 BBR 拥塞控制模式可配置;
- 内核集成 MsQuic,QUIC 协议在内核层面支持(HTTP/3 底层);
- NDIS 6.8x;增强 GRO/GSO,UDP 大段卸载;
- IPv6 强化:更完善的 RA 处理、SRV6 支持;
- TCP Fast Open 默认启用;RACK 重传逻辑持续优化;
- WFP 扩展,支持更多的数据包元数据;
- 改进 TIME‑WAIT 回收逻辑;优化高短连接并发场景;
- 增强对高带宽、高延迟、5G 网络环境适配。
关键组件演进简表 Markdown
| 时期版本 | tcpip.sys | 拥塞算法 | IPv6 | NDIS | 核心新特性 |
|---|---|---|---|---|---|
| NT3.51‑NT4 | 无(BSD 移植栈) | Reno | 需要第三方 | NDIS3‑4 | Winsock1.1→Winsock2 |
| Windows2000 | 初代 tcpip.sys | Reno | 可选组件 | NDIS5 | 内核协议栈重构、AFD 定型 |
| XP/2003 | 迭代版 tcpip.sys | Reno | 可选组件 | NDIS5.1 | SACK、窗口缩放,大量注册表调优项 |
| Vista/2008 | 重构迭代 tcpip.sys | CTCP | 原生双栈 | NDIS6.0 | WFP 过滤平台、RSS 接收缩放 |
| Win7/2008R2 | tcpip.sys 维护迭代 | CTCP | 原生双栈 | NDIS6.20 | 网卡硬件卸载,性能调优 |
| Win8/8.1 | tcpip.sys 迭代 | CTCP+RACK 重传 | 原生双栈 | NDIS6.30 | RACK 重传、TCP Fast Open |
| Win10 | tcpip.sys 持续迭代 | CTCP→CUBIC | 原生双栈 | NDIS6.x | CUBIC 默认,UDP 性能提升 |
| Win11/Server2025 | 现代 tcpip.sys | CUBIC,支持 BBR | 原生增强 IPv6 | NDIS6.8x | 内核 MsQuic QUIC、GRO/GSO 增强 |
重要演进研判(工程运维要点)
- 架构不变原则:自 Windows2000 之后整体分层架构不变:
ws2_32.dll → afd.sys → tcpip.sys → ndis.sys;没有推倒重写,是模块内部算法与能力迭代。 - 旧调优参数大量失效:Vista 开始,XP 时代流传的海量注册表 Tcpip 参数很多已经废弃,修改无效果,很多故障来源于照搬老旧互联网教程。
- 拥塞算法演进路径:
Reno → CTCP → CUBIC(Win10 1903之后默认)。 - IPv6 演进:从额外安装组件,到 Vista 默认双栈,Win11 持续增强 SRV6、隐私地址、RA 处理。
- 过滤体系演进:旧版 SPI 钩子 → Vista 引入 WFP,现在所有防火墙、VPN、流量管控依赖 WFP。
- 性能演进关键点:RSS 多队列、TCP Chimney 卸载、RACK 乱序重传、CUBIC、内核 MsQuic QUIC。
边界与坑点(演进带来的兼容性问题)
- 同一个注册表项,在 XP、Win7、Win11 行为完全不一样,甚至直接忽略;
- 旧软件基于 XP 协议栈行为开发,在新版本 Windows 上出现网络异常;
- 网卡硬件卸载(Chimney、RSS)不同系统版本行为不同,部分网卡固件与 tcpip.sys 存在兼容性 Bug;
- TFO、ECN 这类新特性,新旧网络设备中间设备可能不兼容,开启反而丢包;
- MsQuic/QUIC 仅 Win11 及新 Server 具备内核支持,Win10 需要用户态库实现。

|
1. 链路层
2. 网络层
3. 传输层
4. 应用层
总结TCP/IP协议栈中的每一层相互依赖,各自处理不同的网络传输任务。链路层负责将数据传输到相邻设备,网络层负责数据包在不同网络之间的路由,传输层提供端到端的数据传输服务,而应用层负责为应用程序提供特定的网络服务。这种分层架构确保了网络通信的效率和可靠性。 |
|
1. 物理层
2. 数据链路层
3. 网络层
4. 传输层
5. 应用层
总结TCP/IP协议栈中的每个层次都有其独特的功能和协议,它们共同协作以实现网络通信的目标。物理层定义了物理传输介质和接口标准;数据链路层负责相邻节点之间的数据传输;网络层负责不同网络之间的数据路由;传输层提供端到端的数据传输服务;应用层则为特定的应用程序提供网络服务。这种分层架构使得网络通信更加模块化和灵活,同时也提供了一种通用的网络通信模型。 |
|
在操作系统上实现 1. DLL
2. SYS 驱动程序
3. API 接口
4. 注册表
5. 文件
总结操作系统提供了一整套支持TCP/IP协议栈运行的组件,包括DLL、SYS驱动程序、API接口、注册表和文件等。这些组件为应用程序和网络设备提供了丰富的接口和配置选项,以确保网络通信的正常运行。 |
|
1. 应用层(Application Layer)
2. 传输层(Transport Layer)
3. 网络层(Network Layer)
4. 数据链路层(Data Link Layer)
5. 物理层(Physical Layer)
TCP/IP 协议栈模型的特点
总结TCP/IP 协议栈模型由四个主要层次组成,每个层次都负责特定的网络功能。该模型为网络通信提供了结构化的框架,使得网络通信能够在全球范围内顺利进行。 |
|
在网络管理、诊断和故障排除过程中,与 1. 应用层(Application Layer)相关命令
2. 传输层(Transport Layer)相关命令
3. 网络层(Network Layer)相关命令
4. 数据链路层(Data Link Layer)相关命令
5. 物理层(Physical Layer)相关命令
其他常用命令
以上命令在网络诊断、配置和故障排除中非常有用。根据需求不同,这些命令可以在 Linux、Windows 或 macOS 系统上使用。 |
|
1. 应用层(Application Layer)
2. 传输层(Transport Layer)
3. 网络层(Network Layer)
4. 数据链路层(Data Link Layer)
5. 物理层(Physical Layer)
功能分类总结
TCP/IP 协议栈的这些功能层次相互配合,构成了网络通信的基础架构,使得不同设备和应用程序能够在网络上进行通信和数据交换。 |
在 Windows 10 中,TCP/IP 协议栈(包括 IPv4 和 IPv6)是作为操作系统的一部分预先安装的,并不需要额外的安装步骤。相关的协议文件和配置通常保存在系统的以下位置:
-
驱动文件:
- TCP/IP 协议的驱动文件通常保存在系统目录下,例如
C:\Windows\System32\drivers目录中。具体包括处理 TCP/IP 数据包传输的网络驱动程序。
- TCP/IP 协议的驱动文件通常保存在系统目录下,例如
-
配置信息:
- TCP/IP 协议的配置信息包括 IPv4 和 IPv6 的设置、路由表、套接字设置等,通常保存在注册表中。具体的注册表路径包括
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip和HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6。对于 IPv4 和 IPv6 的设置、路由表、套接字设置,它们的具体详细信息是存储在 Windows 操作系统的注册表中。以下是它们在注册表中的路径:
-
IPv4 的设置、路由表、套接字设置:
- 设置:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
- 路由表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces
- 套接字设置:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
-
IPv6 的设置、路由表、套接字设置:
- 设置:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters
- 路由表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\Interfaces
- 套接字设置:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters
在这些注册表路径下,你可以找到各种 TCP/IP 相关的配置信息,包括地址分配、路由信息、套接字参数等。
-
- TCP/IP 协议的配置信息包括 IPv4 和 IPv6 的设置、路由表、套接字设置等,通常保存在注册表中。具体的注册表路径包括
-
系统设置界面:
- 可以通过系统的网络设置界面来查看和管理 TCP/IP 协议的相关配置,包括 IP 地址、子网掩码、默认网关等。
-
命令行工具:
- 通过命令行工具(如 ipconfig、netsh 等),可以查看和管理 TCP/IP 协议的相关信息和配置。这些工具通常保存在系统的执行路径中,可以直接在命令提示符或 PowerShell 中调用。
使用
netsh命令查看和管理 TCP/IP 协议相关信息和配置的实例:- 查看网络适配器信息:
bashCopy Codenetsh interface ipv4 show interfaces netsh interface ipv6 show interfaces这将显示所有网络适配器的详细信息,包括名称、索引、状态等。
- 查看 IP 地址信息:
bashCopy Codenetsh interface ipv4 show addresses netsh interface ipv6 show addresses这将显示每个网络适配器的 IP 地址和子网掩码信息。
- 查看路由表:
bashCopy Codenetsh interface ipv4 show route netsh interface ipv6 show route这将显示系统的路由表信息,包括目的地、下一跳、接口等。
- 配置静态 IP 地址:
bashCopy Codenetsh interface ipv4 set address name="本地连接" static 192.168.1.100 255.255.255.0 192.168.1.1这将为名为“本地连接”的网络适配器配置静态 IPv4 地址、子网掩码和默认网关。
- 启用/禁用网络适配器:
bashCopy Codenetsh interface set interface name="本地连接" admin=enable netsh interface set interface name="本地连接" admin=disable这将分别启用或禁用名为“本地连接”的网络适配器。
- 设置 DNS 服务器:
bashCopy Codenetsh interface ipv4 set dns "本地连接" static 8.8.8.8这将为名为“本地连接”的网络适配器配置静态的 IPv4 DNS 服务器。
- 清除 DNS 缓存:
bashCopy Codeipconfig /flushdns这将清除本地计算机的 DNS 缓存,有时候用于刷新 DNS 解析记录。
- 查看 TCP 连接状态:
bashCopy Codenetstat -a这将显示当前计算机上的所有 TCP 连接状态。
- 设置 TCP 端口:
bashCopy Codenetsh int ipv4 set dynamicport tcp start=10000 num=1000这将设置 TCP 端口动态范围的起始端口号和端口数量。
- 重置 TCP/IP 栈:
bashCopy Codenetsh int ip reset这将重置 TCP/IP 栈到默认状态,通常用于解决网络连接问题。
使用
netsh命令为 IPv4 配置静态 IP 地址,你可以执行以下命令:bashCopy Codenetsh interface ipv4 set address name="本地连接" static 192.168.1.100 255.255.255.0 192.168.1.1这将为名为“本地连接”的网络适配器配置静态的 IPv4 地址、子网掩码和默认网关。你可以将
192.168.1.100、255.255.255.0和192.168.1.1替换为你希望使用的实际 IPv4 地址、子网掩码和默认网关。使用
netsh命令为 IPv6 配置静态 IP 地址,你可以执行类似的操作,但是需要使用ipv6命令前缀。以下是一个示例:bashCopy Codenetsh interface ipv6 set address "本地连接" static 2001:0db8:85a3:0000:0000:8a2e:0370:7334这将为名为“本地连接”的网络适配器配置静态的 IPv6 地址。你可以将
2001:0db8:85a3:0000:0000:8a2e:0370:7334替换为你希望使用的实际 IPv6 地址。使用
netsh命令为名为“本地连接”的网络适配器配置 3 个静态的 IPv4 DNS 服务器,你可以按照以下步骤来配置:-
设置主要 DNS 服务器:
bashCopy Codenetsh interface ip set dns name="本地连接" static 119.29.29.29 -
添加第二个 DNS 服务器:
bashCopy Codenetsh interface ip add dns name="本地连接" 223.6.6.6 index=2 -
添加第三个 DNS 服务器:
bashCopy Codenetsh interface ip add dns name="本地连接" 114.114.114.114 index=3
通过这些命令,你可以配置名为“本地连接”的网络适配器的 3 个静态 IPv4 DNS 服务器。请确保使用正确的接口名称,并根据需要修改 DNS 地址。
使用
netsh命令为名为“本地连接”的网络适配器配置 5 个静态的 IPv6 DNS 服务器,你可以按照以下步骤来配置:-
设置第一个 IPv6 DNS 服务器:
bashCopy Codenetsh interface ipv6 add dns name="本地连接" address=2402:4e00:: -
添加第二个 IPv6 DNS 服务器:
bashCopy Codenetsh interface ipv6 add dns name="本地连接" address=2400:3200:baba::1 index=2 -
添加第三个 IPv6 DNS 服务器:
bashCopy Codenetsh interface ipv6 add dns name="本地连接" address=2400:3200::1 index=3 -
添加第四个 IPv6 DNS 服务器:
bashCopy Codenetsh interface ipv6 add dns name="本地连接" address=240C::6644 index=4 -
添加第五个 IPv6 DNS 服务器:
bashCopy Codenetsh interface ipv6 add dns name="本地连接" address=240C::6666 index=5
通过这些命令,你可以配置名为“本地连接”的网络适配器的 5 个静态 IPv6 DNS 服务器。请确保使用正确的接口名称,并根据需要修改 DNS 地址。
- 通过命令行工具(如 ipconfig、netsh 等),可以查看和管理 TCP/IP 协议的相关信息和配置。这些工具通常保存在系统的执行路径中,可以直接在命令提示符或 PowerShell 中调用。

浙公网安备 33010602011771号