# 计网基础
# 参考文档
// TODO
# OSI 七层模型
这里以从底到顶的流程解释,实际上每一层的处理都是双向的,每一层都会添加当前层的头尾部分,也会去除头尾部分(根据传输方向不同)。
物理层
:负责传输比特流0 1 二进制数据
,网线/网卡,单位比特;数据链路层
:比特流 --> 数据帧
,本层通过 MAC 识别目的地,交换机通过 MAC 地址表转发帧,网桥/交换机;单位数据帧;- 添加帧头(包含源 MAC 地址、目的 MAC 地址等)
- 添加帧尾(如 CRC 校验码,用于错误检测),数据帧中有容错处理,抗干扰
- 将原始二进制数据嵌入帧的数据部分
网络层
:数据帧 --> 数据包
,本层根据 IP 识别目的地,路由器;单位数据包;- 剥离 MAC 地址信息,从数据部分取出并解析出 IP 地址,然后将按照 IP 将剩余数据发送到指定位置
传输层
:数据包 --> 数据段
,本层根据端口识别目的地,服务器,单位数据段;- 移除 IP 头,根据协议类型(TCP/UDP)分配源端口和目的端口(如 HTTP 使用 80 端口)
- TCP 会将数据分成一段段的,UDP 不会分段处理
会话层
:会话方式保持连接
,每次重新连接浪费资源,所以产生了会话方式。表示层
:解密数据并进行格式转换,统一字符集、压缩、加解密、SSL/TLS 加密
;应用层
:提供 HTTP 接口服务等
,最终处理HTTP请求,生成响应并发送回客户端。
# 本地IP限制
netstat
命令显示的结果中,Local Address 中有两个 IPv4 特殊地址:0.0.0.0
、127.0.0.1
,为什么有些端口前面是0.0.0.0
,有些却是127.0.0.1
呢?
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
中看到这块网卡。
# 讨论区
由于评论过多会影响页面最下方的导航,故将评论区做默认折叠处理。