网络基础入门:IPv4、IPv6、私网公网、MAC、以太网帧与 DNS 学习笔记

一、IPv4 基础

IPv4 地址一共 32 位,也就是 4 字节,平时写成点分十进制的形式,例如 192.168.1.1。 IP 地址由网络号 + 主机号两部分构成。 网络号用来标识网段,同一个局域网里所有主机的网络号都一样;主机号用来区分同一个网段内不同的设备。 子网掩码的作用,就是区分哪些比特属于网络号,哪些属于主机号。

网段里有两个特殊 IP 不能分配给主机使用:

  1. 网络地址:主机号全部为 0,代表整个网段本身。例子:192.168.1.0/24
  2. 广播地址:主机号全部为 1,发给这个地址的数据包,网段内所有主机都会接收。例子:192.168.1.255/24

二、公网 IP、私网 IP 与 NAT

IPv4 的地址总量有限,全世界设备数量远远多于 IPv4 能提供的独立地址,于是就有了私网地址方案。 公网 IP(外网 IP):全球唯一,可以直接在互联网路由访问,由运营商分配。 私网 IP(内网 IP):IANA 预留的专用地址段,只在局域网内部生效,互联网不能直接路由。不同局域网可以重复使用同一套私网地址。

私网的三段地址: 10.0.0.0 ~ 10.255.255.255 172.16.0.0 ~ 172.31.255.255 192.168.0.0 ~ 192.168.255.255

依靠 NAT(网络地址转换),路由器会把内网设备的 IP 加端口,映射成路由器的公网 IP 加端口,实现多台内网设备共用一个公网 IP 上网。

三、IP 地址动态分配 DHCP

局域网主机获取 IP 有两种方式:

  1. 动态分配(DHCP):主机开机后向 DHCP 服务器(一般就是路由器)申请 IP,服务器临时分配地址并设置租期,租期到期需要续租。家用网络默认都是 DHCP 动态获取。
  2. 静态 IP:手动在设备上填写固定 IP,地址不会自动变化,一般用于服务器。

四、IPv6

IPv6 是 IPv4 的下一代 IP 协议,用来解决 IPv4 地址不够用的问题。 地址长度是 128 位,16 字节,地址数量极其庞大,可以给每台设备分配独立公网 IP,基本不需要 NAT。 写法是冒分十六进制,支持用::压缩连续的 0,示例:2001:db8::1

关键特点:

  1. 没有广播地址,一对多通信改用组播;
  2. 支持 SLAAC 自动配置,设备可以自己生成 IP,不一定需要 DHCP;
  3. 自带安全特性,头部结构更简单,路由器转发速度更快。

简单分类: 单播:一对一通信 组播:一对多通信 链路本地地址(fe80 开头):仅在局域网内可用

五、DNS 域名解析系统

电脑通信只识别 IP 地址,但人类很难记住一长串数字 IP,DNS 就是用来解决这个问题的。

DNS(域名系统)核心作用:完成域名和 IP 地址之间的翻译。 比如访问www.baidu.com,DNS 会把这个域名翻译成对应的 IP 地址,主机拿到 IP 之后,才可以发起网络请求。

DNS 缓存

DNS 缓存就是把已经查询过的「域名 - IP」映射关系临时保存起来,避免每次访问都重新查询 DNS 服务器,加快访问速度。 缓存存在多个层级:

  1. 浏览器缓存:浏览器内部保存解析记录;
  2. 操作系统缓存:Windows、Linux 等系统本地缓存;
  3. DNS 服务器缓存:DNS 服务器自己也会缓存查询结果。 每条缓存记录都有 TTL(生存时间),时间到期就会自动失效,需要重新查询。

DNS 镜像服务器

镜像服务器,也叫 DNS 副本服务器。它会定时同步主 DNS 服务器上全部域名解析数据。 作用:分担主服务器的查询压力,实现负载均衡;同时起到备份作用,如果主 DNS 故障,镜像服务器可以继续提供解析服务。很多公共 DNS、运营商 DNS 都会部署大量镜像节点。

简要解析流程:

  1. 浏览器或者操作系统先查询本地 DNS 缓存,看之前有没有保存这个域名对应的 IP;
  2. 缓存找不到,就向配置好的 DNS 服务器发送查询请求;
  3. DNS 服务器先查自身缓存,没有则逐级查询(向根、顶级域、权威服务器查询);
  4. 查询到结果后,DNS 服务器返回 IP,同时把这条记录存入自己的缓存;
  5. 本机拿到 IP,开始和目标服务器通信。

两种查询方式: 递归查询:客户端只发一次请求,DNS 服务器帮你查到最终结果并返回。 迭代查询:DNS 服务器返回下一级域名服务器地址,客户端继续向下查询。

常用记录类型: A 记录:域名映射到 IPv4 地址 AAAA 记录:域名映射到 IPv6 地址 CNAME:域名别名,将一个域名指向另一个域名

六、IP 地址(三层)与 MAC 物理地址(二层)

这是网络里很容易混淆的知识点,二者处在不同层级,负责的工作不一样。 IP 地址属于网络层(三层),负责端到端通信。标记通信两端的主机,数据包跨路由器转发时,源 IP、目的 IP 全程保持不变,IPv4 和 IPv6 都遵守这个规则。 MAC 地址属于数据链路层(二层),负责一跳一跳的链路转发。48 位,固化在网卡硬件中,只在同一个局域网内生效。数据包每经过一台路由器,以太网帧里面的源 MAC、目的 MAC 都会重新改写。

一句话记忆:IP 负责从起点主机找到终点主机;MAC 负责在当前网段找到下一跳设备。

七、以太网数据帧与MTU

以太网是局域网最常用的数据链路层协议,上层的 IP 数据包(IPv4 或者 IPv6)会被封装进以太网帧。

以太网帧核心头部结构:目的 MAC 地址 | 源 MAC 地址 | 类型字段 | 数据 (IP 包) | FCS 校验 目的 MAC:当前链路下一跳网卡地址 源 MAC:当前发送方网卡地址 类型字段:标识上层协议,0x0800 代表 IPv4,0x86DD 代表 IPv6 FCS:帧校验序列,接收方用来检测帧在传输过程中有没有出错

MTU,最大传输单元,指一条链路单次能够传输的最大数据部分长度(不包含以太网帧头)。以太网默认 MTU 为 1500 字节。 当 IP 包大小超过链路 MTU 时,IPv4 会对数据包进行分片,拆成多个小包传输,到达目的地之后再重组。 IPv6 不允许路由器分片,只能由源主机提前检测路径 MTU,自行拆分数据包。 如果不分片又超过 MTU,数据包会被丢弃,返回错误。

小结

IPv4 地址短缺催生了私网 IP 加 NAT 技术;IPv6 拥有超大地址空间,不再依赖 NAT,没有广播,支持 IP 自动配置。 DNS 负责域名和 IP 的翻译。DNS 缓存用来加速解析,TTL 控制缓存有效期;DNS 镜像服务器同步主服务器数据,分担压力并做灾备。 IP 在网络层负责端到端寻址,MAC 在链路层负责局域网单跳转发。数据包传输过程中,IP 包头全程不变,二层以太网帧头部在每经过一台路由器时更新。 IPv4 依靠网络号主机号划分网段,网络地址与广播地址是网段内两个不能分配的特殊地址;DHCP 实现 IPv4 内网 IP 动态分配,IPv6 支持 SLAAC 自动配置。

相关推荐
是个西兰花1 小时前
http讲解
网络·网络协议·http
HEJOO91 小时前
iOS 高效绘图:从 Core Graphics 到 Metal 的实践指南
macos·ios·cocoa
tianbin9111 小时前
中小团队大模型训练落地实战:如何借助API网关降低工程负担
网络·后端
我命由我123451 小时前
LRU 缓存淘汰策略
数据结构·redis·学习·mysql·算法·缓存·学习方法
Hello_Pyhx1 小时前
RetainPDF v4.2.6:Windows、macOS、Linux PDF 翻译的 API 配置与任务排查
linux·macos·pdf
一木 之林2 小时前
微信小程序开发全攻略·文章版|01 入门与环境搭建
人工智能·学习·计算机视觉·微信小程序·notepad++
Xudde.2 小时前
Quaoar 靶机渗透测试(Vulnhub Writeup)
笔记·学习·安全·web安全
2401_868534782 小时前
VXLAN虚拟可扩展局域网
服务器·网络
烟雨醉沉浮2 小时前
VLAN 网络划分与安全管控
网络·安全·智能路由器