【计算机网络】IPv4地址 & 子网掩码 & MAC地址 & 网关 & DNS解析
【计算机网络】IPv4地址 & 子网掩码&MAC地址&网关& DNS解析1. 什么是IP地1.1IP地址的作用1.2 IP地址的表示方式2. IP地址的组成2.1 IP地址的分类3. 子网掩码与子网划分3.1子网掩码的作用1.子网掩码定义2.常见默认子网掩码3.子网掩码的功能3.2子网划分的原因和原理3.3 子网划分实例解析4. MAC地址与网关4.1 MAC地址4.2 网关4.3MAC地址与网关
【计算机网络】IPv4地址 & 子网掩码 & MAC地址 & 网关 & DNS解析
文章目录
1. 什么是IP地址
1.1 IP地址的作用
IP地址(Internet Protocol Address)是网络通信中用于标识网络中一个节点的重要标识符。它有以下主要作用:
- 唯一标识网络中的一台设备,确保设备间正常通信。
- 是一种逻辑地址,用于定义设备在网络中的位置。
- 支持数据包在网络层的寻址与转发。
IP地址分为两大版本:
- IPv4:32位二进制表示,总共可提供约 2 32 2^{32} 232(42亿多)个地址。
- IPv6:128位二进制表示,可提供约 2 128 2^{128} 2128 个地址。
此外,MAC地址(硬件地址)是由48位二进制组成的,用于标识设备的物理接口,配合IP地址完成通信。
IP地址是逻辑地址,与硬件地址(如MAC地址)不同。它可以根据网络的需求动态分配和更改,便于网络管理。例如,设备连接到不同Wi-Fi网络时,其IP地址可能会发生变化。
IP地址是网络层通信的基础,用于实现数据包的寻址与转发。每一个数据包都有源IP和目标IP,通过这些地址,路由器能够确定数据包的传输路径,并确保数据正确地传递到目标设备。
在全球范围内,公共IP地址通过互联网分配机构(IANA和各地区的RIRs)进行分配,确保每一个地址在公网中具有唯一性。对于私有网络,则通过NAT(网络地址转换)技术实现与公网的交互。
1.2 IP地址的表示方式
IPv4 的表示方法通常采用“点分十进制”的方式,这是我们最常见的表示格式。例如,某台机器的 IP 地址可能是 192.168.10.5
。
实际上,对于 IPv4(IP 版本 4)来说,IP 地址是由一个 32 位的二进制数构成。但这样一串数字序列十分冗长且难以阅读和记忆。为了方便人们记忆和使用,这串数字被分成 4 组,每组 8 位,并用十进制表示,最后用小数点隔开,从而演变为“点分十进制表示格式”。
以下是 IP 地址 192.168.10.5
的具体转化过程:
IP 实际地址 | 11000000101010000000101000000101 |
---|---|
分成 4 组后 | 11000000 10101000 00001010 00000101 |
十进制表示 | 192 168 10 5 |
点分十进制表示 | 192.168.10.5 |
2. IP地址的组成
IP地址是网络层通信的重要标识符,用于标记网络中的节点。它由以下两部分组成:
- 网络部分(Network ID):标识设备所在的网络。网络部分的长度由子网掩码确定,不同网络具有不同的网络ID。
- 主机部分(Host ID):标识特定网络中的设备。主机部分在同一网络中的每台设备都是唯一的。
2.1 IP地址的分类
根据地址的用途和范围,IPv4地址被划分为五种类型:A类、B类、C类、D类和E类,每类地址具有特定的网络位和主机位比例。以下是分类的详细说明:
1. A类地址
- 网络位:8位
- 主机位:24位
- 网络数量: 2 7 = 128 2^7=128 27=128(1到126,第一个比特固定为0)
- 每个网络的主机数: 2 24 − 2 = 16 , 777 , 214 2^{24}-2=16,777,214 224−2=16,777,214
- 地址范围:
1.0.0.0
至126.0.0.0
- 用途:用于大型网络,例如政府部门、大型企业等。
注意:127.x.x.x
被保留作为环回地址(用于测试本机网络栈),不属于A类地址的实际可用范围。
2. B类地址
- 网络位:16位
- 主机位:16位
- 网络数量: 2 14 = 16 , 384 2^{14}=16,384 214=16,384(前两位固定为10)
- 每个网络的主机数: 2 16 − 2 = 65 , 534 2^{16}-2=65,534 216−2=65,534
- 地址范围:
128.0.0.0
至191.255.0.0
- 用途:用于中型网络,例如高校和中型企业。
3. C类地址
- 网络位:24位
- 主机位:8位
- 网络数量: 2 21 = 2 , 097 , 152 2^{21}=2,097,152 221=2,097,152(前三位固定为110)
- 每个网络的主机数: 2 8 − 2 = 254 2^8-2=254 28−2=254
- 地址范围:
192.0.0.0
至223.255.255.0
- 用途:用于小型网络,例如家庭或小型办公室。
4. D类地址
- 用途:用于组播通信(多播),即将数据同时发送到一组接收方。
- 地址范围:
224.0.0.0
至239.255.255.255
- 特点:没有子网掩码,因为不区分网络和主机。
5. E类地址
- 用途:保留地址,主要用于实验和研究。
- 地址范围:
240.0.0.0
至255.255.255.255
- 特点:不适用于实际通信。
2.2 A、B、C三类IP地址详解
以下是A、B、C三类IP地址的详细对比:
地址类别 | 网络位数 | 主机位数 | 网络数量 | 每个网络的主机数 | 地址范围 |
---|---|---|---|---|---|
A类 | 8 | 24 | 2 7 = 128 2^7=128 27=128 | 2 24 − 2 2^{24}-2 224−2 | 1.0.0.0 ~ 126.0.0.0 |
B类 | 16 | 16 | 2 14 = 16 , 384 2^{14}=16,384 214=16,384 | 2 16 − 2 2^{16}-2 216−2 | 128.0.0.0 ~ 191.255.0.0 |
C类 | 24 | 8 | 2 21 = 2 , 097 , 152 2^{21}=2,097,152 221=2,097,152 | 2 8 − 2 2^8-2 28−2 | 192.0.0.0 ~ 223.255.255.0 |
重要概念:
- 广播地址:主机部分全为1。例如,
192.168.1.255
是网络192.168.1.0
的广播地址。 - 网络地址:主机部分全为0。例如,
192.168.1.0
是一个网络的网络地址。 - 回环地址:
127.x.x.x
,用于测试本机网络协议栈。
2.3 私有地址与公网地址
1. 私有地址
为解决IPv4地址资源短缺的问题,IANA(互联网号码分配局)划分了一部分地址作为私有地址,这些地址只能用于局域网中,不能直接连接互联网。私有地址范围如下:
地址类别 | 私有地址范围 | 可用主机数 |
---|---|---|
A类 | 10.0.0.0 ~ 10.255.255.255 |
2 24 − 2 = 16 , 777 , 214 2^{24}-2=16,777,214 224−2=16,777,214 |
B类 | 172.16.0.0 ~ 172.31.255.255 |
2 20 − 2 = 1 , 048 , 574 2^{20}-2=1,048,574 220−2=1,048,574 |
C类 | 192.168.0.0 ~ 192.168.255.255 |
2 16 − 2 = 65 , 534 2^{16}-2=65,534 216−2=65,534 |
私有地址通过NAT(网络地址转换)技术映射为公网地址,从而与互联网通信。
2. 公网地址
公网地址是分配给互联网上设备的唯一地址,用于在互联网中标识设备。公网地址由IANA统一分配,确保全球范围内的唯一性。
2.4 特殊保留的IP地址
某些IP地址具有特殊用途或被保留,不用于普通网络通信:
-
广播地址
- 主机部分全为1。
- 用于向网络中的所有设备广播数据。
- 示例:
192.168.1.255
是192.168.1.0/24
网络的广播地址。
-
网络地址
- 主机部分全为0。
- 用于标识网络本身,而非某个设备。
- 示例:
192.168.1.0
表示网络192.168.1.0/24
。
-
环回地址
127.x.x.x
,通常为127.0.0.1
。- 用于测试本机网络协议栈是否正常工作。
- 示例:运行命令
ping 127.0.0.1
可检测设备是否正常响应。
-
本地链路地址
169.254.x.x
范围。- 当设备无法通过DHCP获取IP地址时,会自动分配本地链路地址。
- 通常表示网络配置有问题。
-
多播地址
- 范围:
224.0.0.0 ~ 239.255.255.255
。 - 用于组播通信,例如视频会议或流媒体传输。
- 范围:
-
实验地址
- 范围:
240.0.0.0 ~ 255.255.255.255
。 - 保留供实验和研究使用,不在实际通信中分配。
- 范围:
3. 子网掩码与子网划分
子网掩码是用于区分IP地址的网络部分和主机部分的重要工具,它在网络划分和管理中发挥着重要作用。
3.1 子网掩码的作用
1. 子网掩码定义
子网掩码也是一个32位的二进制数,与IP地址一样由点分十进制表示。它用来标识IP地址的网络部分和主机部分:
- 网络部分:用子网掩码的连续1表示。
- 主机部分:用子网掩码的连续0表示。
2. 常见默认子网掩码
根据A、B、C类地址的网络和主机位的默认划分,常见的子网掩码如下:
地址类别 | 子网掩码(十进制) | 子网掩码(二进制) | 位数表示 |
---|---|---|---|
A类 | 255.0.0.0 | 11111111.00000000.00000000.00000000 | /8 |
B类 | 255.255.0.0 | 11111111.11111111.00000000.00000000 | /16 |
C类 | 255.255.255.0 | 11111111.11111111.11111111.00000000 | /24 |
上图表示的子网掩码是一个C类IP地址的子网掩码
3. 子网掩码的功能
-
确定网络地址
网络地址可以通过将IP地址和子网掩码进行逐位“与”运算(AND)获得。例如:- IP地址:
192.168.1.10
→11000000.10101000.00000001.00001010
- 子网掩码:
255.255.255.0
→11111111.11111111.11111111.00000000
- 网络地址:
192.168.1.0
→11000000.10101000.00000001.00000000
结果:网络地址为192.168.1.0
- IP地址:
-
确定广播地址
广播地址是同一子网中用于广播通信的特殊地址,通过将主机部分全置为1计算得出。例如:- 网络地址:
192.168.1.0
→11000000.10101000.00000001.00000000
- 广播地址:
192.168.1.255
→11000000.10101000.00000001.11111111
- 网络地址:
-
划分子网
通过借用主机位的若干位作为子网位,划分出多个子网。
3.2 子网划分的原因和原理
1. 为什么划分子网?
- 优化地址利用 : 将一个较大的网络划分为多个小网络,避免地址浪费。例如,A类地址提供约1600万主机,但实际应用中一个部门可能只需要几百个主机。
- 提高网络效率 : 子网划分能减少广播流量范围,降低网络拥堵。
- 增强网络安全性 : 通过划分子网,可以将不同的部门或功能隔离,限制广播和非法访问。
2. 子网划分的原理
- 借用主机位作为子网位
在子网掩码的基础上,增加若干位用于区分子网。例如,原默认掩码为/24
,借用3位后变为/27
,此时子网位长度为3。 - 计算子网数量
子网数量为 2 n 2^n 2n,其中 n n n 是子网位数。 - 计算每个子网的主机数
每个子网的可用主机数为 2 m − 2 2^m - 2 2m−2,其中 m m m 是剩余的主机位数,减去2是因为全0为网络地址,全1为广播地址。
3.3 子网划分实例解析
示例1:将 192.168.1.0/24
划分为4个子网
分析
- 默认子网掩码为
/24
,即255.255.255.0
。 - 需要划分为4个子网,因此子网位数需满足 2 n ≥ 4 2^n \geq 4 2n≥4,取 n = 2 n = 2 n=2。
- 划分后子网掩码为
/26
,即255.255.255.192
。 - 每个子网可用主机数为 2 8 − 2 − 2 = 62 2^{8-2}-2 = 62 28−2−2=62。
划分结果
每个子网的网络地址、可用IP地址范围和广播地址如下:
子网编号 | 网络地址 | 可用IP地址范围 | 广播地址 |
---|---|---|---|
子网1 | 192.168.1.0 |
192.168.1.1 ~ 192.168.1.62 |
192.168.1.63 |
子网2 | 192.168.1.64 |
192.168.1.65 ~ 192.168.1.126 |
192.168.1.127 |
子网3 | 192.168.1.128 |
192.168.1.129 ~ 192.168.1.190 |
192.168.1.191 |
子网4 | 192.168.1.192 |
192.168.1.193 ~ 192.168.1.254 |
192.168.1.255 |
示例2:计算 167.77.88.99/26
的子网号和广播地址
分析
- IP地址:
167.77.88.99
→10100111.01001101.01011000.01100011
- 子网掩码:
/26
→255.255.255.192
→11111111.11111111.11111111.11000000
- 子网位数为2,主机位数为6。
/26
表示子网掩码占用 前26位是网络部分,剩下 6位是主机部分。
计算
-
计算子网号
子网号通过IP地址与子网掩码逐位“与”运算获得:- IP地址:
10100111.01001101.01011000.01100011
- 子网掩码:
11111111.11111111.11111111.11000000
- 子网号:
10100111.01001101.01011000.01000000
→167.77.88.64
- IP地址:
-
计算广播地址
广播地址是主机部分全为1:- 广播地址:
10100111.01001101.01011000.01111111
→167.77.88.127
- 广播地址:
-
可用IP地址范围
从子网号加1开始,到广播地址减1结束:- 可用IP范围:
167.77.88.65 ~ 167.77.88.126
- 可用IP范围:
结果
- 子网号:
167.77.88.64
- 广播地址:
167.77.88.127
- 可用IP地址范围:
167.77.88.65 ~ 167.77.88.126
为什么全0和全1不可用?
- 全0的主机部分表示子网地址,标识整个子网范围。
- 全1的主机部分表示广播地址,用于向该子网中的所有设备发送数据。
子网的划分依据是什么? 子网大小和主机数取决于主机位的长度。这里主机部分是6位,所以每个子网可以容纳 2 6 = 64 2^6 = 64 26=64 个地址,其中:
- 1个地址用于子网号。
- 1个地址用于广播。
- 可用主机数 = 2 6 − 2 = 62 2^6 - 2 = 62 26−2=62。
可通过子网掩码计算网络号,来判断不同的IP是否在同一网络中
4. MAC地址与网关
4.1 MAC地址
MAC地址(Media Access Control
Address,介质访问控制地址)是一个硬件地址,用于唯一标识网络设备的物理接口。每个网络适配器(网卡)在出厂时都会分配一个全球唯一的MAC地址。
MAC地址的特点
- 全球唯一性:每块网卡的MAC地址都是唯一的,由网络硬件制造商分配。
- 固定性:MAC地址嵌入硬件(如网卡)中,一般无法修改,除非手动伪装。
- 链路层通信:MAC地址工作在OSI模型的第2层(数据链路层),负责本地网络通信。
MAC地址的格式
MAC地址由6组16进制数表示,每组由两个字符组成,通常用冒号或短横连接。例如:
- 标准格式:
00:1A:2B:3C:4D:5E
- 16进制数范围:
00
到FF
MAC地址的组成
- 前24位(前三组16进制):厂商识别码(OUI,Organizationally Unique Identifier),由IEEE分配给制造商。
- 后24位(后三组16进制):设备序列号,由厂商自行分配,确保同一厂商的每块网卡唯一。
MAC地址的作用
- 本地通信:在同一局域网内,设备通过MAC地址标识通信双方。
- 数据帧转发:交换机根据MAC地址表,将数据帧转发到目标设备所在的端口。
- 网络安全与管理:MAC地址可用于网络设备识别、权限管理和追踪设备。
4.2 网关
网关(Gateway)是用于连接两个不同网络的桥梁设备或软件。它充当通信的“出入口”,使设备能够与外部网络通信。
在家庭或企业网络中,网关通常是路由器的IP地址。设备将目的地址不属于本地网络的数据包发送到网关,由网关转发到目标网络。
网关的特点
- 跨网络通信:网关负责将本地网络的数据包发送到其他子网或互联网。
- 默认网关:在设备网络配置中,默认网关的IP地址通常指向路由器,用于数据包的转发。
- 协议转换:某些高级网关还可以执行协议转换(如IPv4与IPv6之间)。
网关的作用
- 数据转发:当设备访问非本地网络(如互联网)时,数据包会先发送到网关,网关根据目标地址选择路径并转发。
- 网络隔离:网关可以隔离不同的网络,提高安全性。
- 地址翻译:在NAT(网络地址转换)环境中,网关将本地私有IP地址转换为公网IP地址。
4.3 MAC地址与网关的协作
在局域网通信中
- 当设备向同一网络内的另一台设备发送数据时:
- 源设备通过ARP协议解析目标设备的MAC地址。
- 数据帧通过交换机直接转发到目标设备的网卡。
- MAC地址是局域网内设备通信的关键。
在跨网络通信中
- 当设备需要访问非本地网络(如互联网):
- 数据包会被发送到默认网关(通常是路由器)。
- 路由器负责查找目标网络的最佳路径,将数据转发出去。
- 路由器的MAC地址在本地网络内用于标识默认网关。
4.4 MAC地址解析
假设你连接到一个局域网,运行以下命令可以查看MAC地址:
-
在Windows中:
ipconfig /all
输出中会显示“物理地址”,即网卡的MAC地址,如:
00-1A-2B-3C-4D-5E
。 -
在Linux/Unix中:
ifconfig
或
ip addr
输出中会列出“ether”字段下的MAC地址。
网关配置
假设你的网络配置如下:
- IP地址:
192.168.1.100
- 子网掩码:
255.255.255.0
- 默认网关:
192.168.1.1
当你访问一个公网地址(如 8.8.8.8
):
- 数据包先被发送到默认网关(路由器)的MAC地址。
- 路由器将你的请求通过NAT映射为公网IP地址,并转发到目标地址。
- 路由器接收到目标服务器的响应后,再将数据返回给本地设备。
5. IP寻址与DNS解析
5.1 IP寻址
IP寻址是通过IP地址在网络中定位设备的过程,主要用于确定通信双方是否处于同一网络。如果设备位于同一网络内,数据包可以直接传输;如果位于不同网络,则需要通过网关或路由器转发。
IP寻址的原理
设备通过计算自身IP地址和目标IP地址的网络号,判断两者是否在同一网络内:
- 如果网络号相同,设备可以直接通信。
- 如果网络号不同,数据包被发送到默认网关,路由器根据目标地址选择路径,将数据转发到目标网络。
IP寻址示例
-
场景:设备A(
192.168.1.10
)尝试访问设备B(192.168.1.20
),两者的子网掩码为255.255.255.0
。 -
步骤:
- 提取网络号:
- 设备A的网络号:
192.168.1.0
(192.168.1.10 AND 255.255.255.0
) - 设备B的网络号:
192.168.1.0
(192.168.1.20 AND 255.255.255.0
)
- 设备A的网络号:
- 比较网络号:
- 设备A和设备B的网络号相同。
- 结果:
- 数据包直接传输,设备A将目标MAC地址解析为设备B的MAC地址,通过交换机发送数据。
- 提取网络号:
-
跨网络场景:
如果设备A访问10.0.0.5
,网络号不同,则数据包会发送到默认网关(如192.168.1.1
),由路由器转发到目标网络。
5.2 DNS解析
DNS(Domain NameSystem)解析是将人类易记的域名(如
www.example.com
)转换为IP地址(如192.168.1.1
)的过程。它是互联网通信的基础,因为计算机只能通过IP地址定位目标设备,而人类更习惯使用域名。
DNS的作用
-
域名到IP地址的转换
每个网站都有唯一的IP地址,DNS解析将域名解析为对应的IP地址,以便浏览器或应用程序与目标服务器通信。 -
反向解析
DNS还支持将IP地址解析为域名,用于网络调试或溯源。 -
分布式管理
DNS是一个分布式数据库系统,避免了将所有解析请求集中到单一服务器上的问题。
DNS解析过程
当用户在浏览器中输入域名(如www.google.com
)时,DNS解析过程如下:
-
检查本地缓存
- 浏览器会首先检查本地缓存,查看是否有对应的域名解析记录。
- 如果缓存中找到IP地址,则直接使用。
-
查询本地DNS服务器
- 如果本地缓存中没有记录,操作系统会向配置的本地DNS服务器发送解析请求。
-
递归查询
- 如果本地DNS服务器没有解析记录,会向更高级别的DNS服务器发起递归查询:
- 向根DNS服务器请求(顶级节点)。
- 根DNS服务器返回目标域名所属的顶级域DNS服务器(如
.com
)。 - 顶级域DNS服务器返回权威DNS服务器地址(如
google.com
的DNS服务器)。
- 如果本地DNS服务器没有解析记录,会向更高级别的DNS服务器发起递归查询:
-
返回IP地址
- 权威DNS服务器返回域名对应的IP地址。
- 本地DNS服务器将结果缓存并返回给客户端。
-
完成通信
- 浏览器通过获取的IP地址与目标服务器建立连接,完成请求。
5.3 补充:DNS记录类型
DNS解析依赖不同类型的记录,常见的包括:
记录类型 | 作用 | 示例 |
---|---|---|
A | 将域名解析为IPv4地址 | example.com → 93.184.216.34 |
AAAA | 将域名解析为IPv6地址 | example.com → 2606:2800:220:1:248:1893:25c8:1946 |
CNAME | 将域名解析为另一个域名(别名) | www.example.com → example.com |
MX | 邮件交换记录,用于邮件服务器的地址解析 | mail.example.com |
PTR | 反向解析,将IP地址解析为域名 | 93.184.216.34 → example.com |
NS | 指定域名的权威DNS服务器 | ns1.example.com |
阿里云DNS云解析控制台的部分记录类型
其他

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)