# 计网基础

# 参考文档

// TODO

# OSI 七层模型

OSI 7层架构

这里以从底到顶的流程解释,实际上每一层的处理都是双向的,每一层都会添加当前层的头尾部分,也会去除头尾部分(根据传输方向不同)。

  1. 物理层:负责传输比特流 0 1 二进制数据,网线/网卡,单位比特;
  2. 数据链路层比特流 --> 数据帧,本层通过 MAC 识别目的地,交换机通过 MAC 地址表转发帧,网桥/交换机;单位数据帧;
    • 添加帧头(包含源 MAC 地址、目的 MAC 地址等)
    • 添加帧尾(如 CRC 校验码,用于错误检测),数据帧中有容错处理,抗干扰
    • 将原始二进制数据嵌入帧的数据部分
  3. 网络层数据帧 --> 数据包,本层根据 IP 识别目的地,路由器;单位数据包;
    • 剥离 MAC 地址信息,从数据部分取出并解析出 IP 地址,然后将按照 IP 将剩余数据发送到指定位置
  4. 传输层数据包 --> 数据段,本层根据端口识别目的地,服务器,单位数据段;
    • 移除 IP 头,根据协议类型(TCP/UDP)分配源端口和目的端口(如 HTTP 使用 80 端口)
    • TCP 会将数据分成一段段的,UDP 不会分段处理
  5. 会话层会话方式保持连接,每次重新连接浪费资源,所以产生了会话方式。
  6. 表示层:解密数据并进行格式转换,统一字符集、压缩、加解密、SSL/TLS 加密
  7. 应用层提供 HTTP 接口服务等,最终处理HTTP请求,生成响应并发送回客户端。

# 本地IP限制

netstat 命令显示的结果中,Local Address 中有两个 IPv4 特殊地址:0.0.0.0127.0.0.1,为什么有些端口前面是 0.0.0.0,有些却是 127.0.0.1 呢?

netstat result

  • 127.0.0.1 是一个特殊的IP地址,被称为 回环地址(Loopback Address)。它用于指向本机地址(即计算机自身),不依赖硬件上是否有接网卡,相当于用根看不见的网线将网卡的发送和接收相连接起来。当服务绑定到 127.0.0.1 时,它只能接受来自当前计算机上的连接请求。 这意味着,如果你尝试从另一台计算机连接到这个服务,连接将不会成功,因为服务只监听来自本机(即127.0.0.1)的连接。使用 127.0.0.1 进行监听通常用于测试和开发目的,因为它可以确保服务不会意外地暴露给网络上的其他计算机。

  • 0.0.0.0任意地址,若某以太网设备存在多块物理网卡,表示只要本地开放对应的端口服务,无论从哪个网卡发起连接请求都是允许的。若想限制某服务只允许外部设备从指定网卡入口发起访问,则配置成具体网卡的 IP 地址,就如上图箭头那行,50748端口只允许从IP地址为 10.10.30.9 的网卡入口发起,可以在 ipconfig 中看到这块网卡。

# 讨论区

由于评论过多会影响页面最下方的导航,故将评论区做默认折叠处理。

点击查看评论区内容,渴望您的宝贵建议~
Last Updated: 5/23/2025, 11:55:45 AM