首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >从 ipconfig 到 TCPIP:你敲下网络命令时,电脑到底在做什么

从 ipconfig 到 TCPIP:你敲下网络命令时,电脑到底在做什么

作者头像
Lihua奏
发布2026-06-23 20:28:19
发布2026-06-23 20:28:19
110
举报

网络命令,就是你给电脑输入的文字指令。只不过这里说的,是专门拿来看网络、查网络、测网络的命令。

常见命令包含

  1. ipconfig:查看网络配置 就像查看自己的身份证和住址
  2. ping:要求对方的设备做出应答 敲别人家的门,看对方在不在
  3. tracert:查询到对方设备大致经过了哪些路由 看经过了哪些中转站
  4. nslookup:向 DNS 服务器询问域名对应的 IP 地址 就像查通讯录,把网站名翻译成门牌号
  5. netstat:查看网络中计算机之间的通信状态 看当前正在通话中的名单

它能检查的流程,大致就是

你(电脑) -> 路由器 -> 互联网 -> 网站服务器

所以这些命令看起来只是几行字,但真想看懂它们,还是得先知道网络本身是怎么回事。

先从网络是怎么来的说起

在早期,电脑并不是像今天这样天然互联的。很多机器要么彼此独立,要么只能在很小范围内通信。

后来,公司想让同一栋楼里的电脑共享文件、共享打印机,所以局域网出现了。再后来,城市和城市之间也想互通,于是更大范围的网络也就出来了。

  • 局域网(LAN):小范围内的网,像家里、办公室、一层楼
  • 广域网(WAN):跨楼、跨区域,甚至跨城市的网

简单来说:

  • 局域网速度通常更快,但范围小
  • 广域网范围更大,但中间环节更多,也更复杂

那它们是怎么通信的呢

主要靠这几个东西:路由器、交换机、Wi-Fi。

先看一个常见流程:

互联网 -> 路由器 -> 交换机 -> Wi-Fi/网线 -> 你的设备

  1. 路由器:负责把你家的内网连到互联网 它常做的事包括给设备分地址(DHCP),以及在需要时把内网地址转换成公网地址(NAT)
  2. 交换机:让局域网里的有线设备互通 像电脑连打印机、电脑连服务器,它会尽量把数据送到正确端口,而不是乱发
  3. Wi-Fi:不用网线也能进入同一个局域网 本质上是一种无线接入方式

我们家里常说的“路由器”,很多其实是把 路由器 + 小交换机 + Wi-Fi AP 做在一起了。

所以当手机连不上网的时候,并不一定是“整个路由器都坏了”,也可能只是无线部分、拨号部分,或者上游网络出了问题。

再补充一下:内网和外网

  • 内网:你自己这个小范围的网络 设备之间通常可以互相看到 地址通常是“私有地址”
  • 外网:你这个小范围之外,更大的公共网络,通常就是互联网 由运营商、云服务商等共同参与 需要“尽量全球不重复”的地址体系

那为什么需要区分内网和外网呢?

因为并不是所有设备,都应该直接暴露在公网中。像公司内部系统、数据库之类的东西,一般不会希望任何人都能直接访问。

另外,公网 IP 数量有限,而内网可以让很多设备共享较少的公网地址。

这么一看,局域网和内网很像,广域网和外网也很像,但它们说的不是一回事:

  • 局域网、广域网:说的是范围大小
  • 内网、外网:说的是归属和边界

举个例子:

深圳办公室内网,通过专线连接广州办公室内网

  • 从范围来说,它跨城市了,这是广域网场景
  • 从归属来说,它还是公司内部使用,所以依然是内网

查看 MAC 地址

在命令行窗口里,输入 ,会输出大量信息,这里一般关注“物理地址”。ipconfig /all

例如:

00-1A-2B-3C-4D-5E

MAC 地址本质上是一个 48 比特的地址,8 比特一组,一共 6 组,通常写成 6 组十六进制数。

大致可以这样理解:

  • 前 24 比特,通常用来标识厂商
  • 后 24 比特,由厂商分配给具体设备接口

它更适合在局域网里识别“这一跳该把数据交给谁”。

但如果把 MAC 地址放到广域网里直接拿来定位设备,就不合适了。因为它更像是在回答“这块网卡是谁”,而不是“这台设备现在在哪”。

所以 IP 地址出现了

IP 地址,你可以先把它理解成网络层面上的“位置标识”。

最常见的是 IPv4。它本质上是一个 32 比特的数字,8 比特一组,分成 4 组,中间用 分开。.

例如:

192.168.1.10

8 比特的十进制范围是 ,所以 IPv4 理论上的地址总数大约是 42 亿个。0~255

那 IPv6 呢?

你可以先记住一点:IPv6 是 128 比特地址,它出现的一个重要原因,就是 IPv4 地址不太够用了。

子网掩码和默认网关

光知道 IP 地址还不够,电脑还得判断:对方是在本地网段里,还是在别的网络里。

这时候就有两个东西:

1. 子网掩码

子网掩码的作用,就是帮助设备判断一个 IP 地址里,哪些部分表示网络,哪些部分表示主机。

比如最常见的一种情况:

  • IP 地址:192.168.1.10
  • 子网掩码:255.255.255.0

在这种常见写法下,通常可以理解成前 24 位是网络部分,后 8 位是主机部分。

所以:

  • 192.168.1.10
  • 192.168.1.20

在这个掩码下,通常会被认为是在同一个本地网段里。

2. 默认网关

如果目标地址不在本地网段里,那就别直接找它了,先把东西交给默认网关。

默认网关通常就是离你最近、负责带你“出本地网络”的那台路由器。

代码语言:javascript
复制
IPv4 地址  . . . . . . . . . . . . : 192.168.1.10
子网掩码  . . . . . . . . . . . . : 255.255.255.0
默认网关  . . . . . . . . . . . . : 192.168.1.1

那么把它们放在一起看:

我的 IP 地址: 对方 IP 地址:192.168.1.10192.168.1.20

如果按 这个子网掩码来看,前面网络部分一样,通常就当本地处理。255.255.255.0

我的 IP 地址: 对方 IP 地址:192.168.1.108.8.8.8

这时候就不是本地网段了,通常先交给默认网关。

DHCP 是干什么的

如果每台电脑、每部手机都手动去填 IP 地址、子网掩码、默认网关、DNS,那太容易出错了。

所以一般会让 DHCP 服务器通过 DHCP 协议,自动给主机分配这些配置。

简单说,它就像一个自动登记员:你一接入网络,它就把该给你的网络参数发给你。

接下来看 ping 命令

输入:

代码语言:javascript
复制
ping 192.168.2.1

正常情况下,可能会返回:

代码语言:javascript
复制
来自 192.168.2.1 的回复: 字节=32 时间<1ms TTL=64
  • 字节=32 表示这次应答里携带的数据量
  • 时间<1ms 表示大致的往返时间
  • TTL=64 表示当前报文剩余的生存计数

这里有个地方要说准一点:

TTL 不是“固定经过 64 台路由器就一定没了”这么死板的规则。

更准确地说,它是一个生存计数。数据每经过一跳,TTL 通常就减 1。如果减到 0 了,这个数据包就会被丢弃,防止它在网络里一直绕圈子。

DNS 是干什么的

DNS(Domain Name System,域名系统)

DNS 的核心作用,就是把网站名翻译成 IP 地址。

为什么会出现 DNS 呢?

早期网络规模小的时候,设备少,大家还勉强能记住一些 IP 地址。但随着网站越来越多,你不可能每次都去记一串数字,太容易混淆了。

所以人们就发明了“域名”这种更好记的名字。

你也可以把 DNS 当做一个电话本:

  • 你记名字
  • 它帮你查号码

它的大致流程是:

第一步:先看本地有没有缓存 第二步:没有的话,去问 DNS 服务器 第三步:拿到对应的 IP 地址,再去正式访问

也就是:

网站名 -> DNS 查询 -> IP 地址 -> 正式访问

域名转换成 IP 地址的过程,就叫“域名解析”。

如果想自己查某个域名对应哪个 IP,可以用:

代码语言:javascript
复制
nslookup example.com

那为什么还要有 MAC 地址

IP 地址和 MAC 地址看起来都像识别码,但它们分工不同。

简单来说:

  • MAC 地址说明“这一跳要交给谁”
  • IP 地址说明“最终要送到哪”

这也是为什么互联网通信不能只靠 MAC 地址。

因为互联网是跨网络、跨地区、跨运营商的。光知道设备接口是谁,并不足以完成远距离转发,还得靠 IP 地址来做更大范围的寻址。

那 IP 地址怎么变成 MAC 地址

当电脑已经知道“目标 IP 在本地网段里”之后,它还得知道这个 IP 对应的 MAC 地址,这样才能在局域网里真正把数据送过去。

这时候就有 ARP。

ARP(Address Resolution Protocol,地址解析协议)

你可以把它理解成在局域网里发起一次提问:

192.168.1.101 是你吗? 是的话把你的 MAC 地址告诉我。

目标设备收到后,就会回复自己的 MAC 地址。

为了避免每次都重新问一遍,系统里通常会有一张 ARP 缓存表。

可以用:

代码语言:javascript
复制
arp -a

来查看。

接下来是 TCP/IP

TCP(Transmission Control Protocol):传输控制协议 IP(Internet Protocol):网际协议

TCP/IP 是一套通信约定。只有大家都按这套规则来,不同厂商、不同系统、不同硬件的设备之间,才有办法互相对话。

先来看它为什么会出现。

  • 早期很多网络各玩各的,规则并不统一
  • 后来网络越来越大,还出现了去中心化、分组交换这种思路
  • 再后来,设备和系统越来越多样,那它们之间到底怎么通信?于是就需要一套大家都遵守的协议体系

TCP/IP 的核心思想:分层

你可以这样想:

  1. 你买书
  2. 商家发货
  3. 快递员送货
  4. 你签收

你不关心快递车发动机怎么工作,快递员也不关心你买的是书还是别的什么。

这就是分层。

好处就在于:每一层只管自己那一层的事情,互相协作,但不用把所有问题全混在一起。

TCP/IP 常见的四层可以这样记:

  • 应用层:DNS、HTTP
  • 传输层:TCP、UDP
  • 网络层:IP、路由
  • 网络接口层:MAC 地址、网卡、Wi-Fi

那么 TCP 是怎么通信的

正式传数据之前,TCP 通常会先建立连接。

这里最常见的说法就是:三次握手。

它不是简单地“边发数据边等确认”就完了,而是要先确认双方都能收、都能发,并且把一些初始状态先对齐好,然后再正式开始传输。

建立连接之后,TCP 在传输过程中还会做确认、重传、排序这些事,尽量保证数据可靠到达。

还有数据封装和数据解封

数据封装,简单来说,就是你发送请求之后,数据会往下一层一层传:

  • 到传输层,包一层
  • 到网络层,再包一层
  • 到网络接口层,再包一层
  • 然后才真正发出去

对方收到之后,再反过来一层层拆开,这就是数据解封。

最后再说一个容易混的点

在传输途中,MAC 地址通常是不断变化的。因为每经过一跳,数据帧都会重新封装,这一跳要交给谁,MAC 就跟着变。

而 IP 地址一般来说更稳定,它表示的是通信双方的网络位置。不过如果中间经过了 NAT,源 IP 地址也可能会被改写。

所以你可以先这样记:

  • MAC 地址更像“这一跳交给谁”
  • IP 地址更像“最终送到哪”

小结

回过头来看,网络命令并不是孤立的。

  • ipconfig让你看本机网络配置
  • ping让你测试连通性和时延
  • tracert让你看路径
  • nslookup让你看域名解析
  • netstat让你看当前连接状态

而它们背后真正对应的,是一整套网络通信逻辑:

  • 局域网、广域网
  • 路由器、交换机、Wi-Fi
  • 内网、外网
  • IP、MAC、子网掩码、默认网关
  • DNS、ARP
  • TCP/IP、分层、封装与解封

所以你敲下网络命令的时候,表面上是在查一条信息,实际上是在顺着这条线,一点点看到整个网络是怎么跑起来的。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Lihua奏 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 先从网络是怎么来的说起
  • 那它们是怎么通信的呢
  • 再补充一下:内网和外网
  • 查看 MAC 地址
  • 所以 IP 地址出现了
  • 子网掩码和默认网关
    • 1. 子网掩码
    • 2. 默认网关
  • DHCP 是干什么的
  • 接下来看 ping 命令
  • DNS 是干什么的
  • 那为什么还要有 MAC 地址
  • 那 IP 地址怎么变成 MAC 地址
  • 接下来是 TCP/IP
  • TCP/IP 的核心思想:分层
  • 那么 TCP 是怎么通信的
  • 还有数据封装和数据解封
  • 最后再说一个容易混的点
  • 小结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档