计算机网络基础知识详解:MAC地址、IP地址、交换机、路由器、DNS与CDN
计算机网络是互联网运行的基础,也是IT学习的重要内容。
在日常使用网络时,我们经常会接触到一些核心概念,例如MAC地址、IP地址、交换机、路由器、DNS、CDN 等。
本文将系统讲解计算机网络基础知识,帮助你快速理解网络通信的基本原理。
一、什么是MAC地址
1 MAC地址的定义
MAC地址(Media Access Control Address)是网络设备的物理地址,用于在局域网中唯一标识一台设备。
常见设备包括:
电脑网卡
手机无线网卡
路由器
交换机端口
MAC地址通常由设备厂商写入硬件中,因此具有全球唯一性。
2 MAC地址格式
MAC地址长度为48位(6字节),通常以十六进制表示,例如:
00:1B:44:11:3A:B7
结构组成:
| 部分 | 含义 |
|---|---|
| 前24位 | 厂商标识(OUI) |
| 后24位 | 设备编号 |
3 MAC地址的作用
MAC地址主要用于:
局域网设备识别
数据链路层通信
网络设备身份标识
简单理解:
MAC地址 = 局域网里的设备身份证
二、交换机的工作原理
1 什么是交换机
交换机是一种数据链路层(二层)设备,主要用于局域网内部通信。
它的核心作用是:
根据MAC地址转发数据
2 交换机如何转发数据
交换机通过MAC地址表(MAC Address Table)工作。
流程如下:
1 接收数据帧
2 读取目标MAC地址
3 查询MAC地址表
4 将数据转发到对应端口
如果地址未知,则进行广播发送。
3 交换机特点
交换机具有以下特点:
数据转发速度快
每个端口独立冲突域
不隔离广播域
支持高速局域网通信
三、什么是IP地址
1 IP地址定义
IP地址(Internet Protocol Address)是网络设备的逻辑地址。
IP地址用于:
标识网络中的设备
实现跨网络通信
支持互联网数据传输
简单理解:
IP地址 = 网络中的设备地址
2 IPv4地址结构
IPv4地址为32位,通常写成:
192.168.1.100
IP地址由两部分组成:
| 组成 | 作用 |
|---|---|
| 网络位 | 标识网络 |
| 主机位 | 标识设备 |
通过子网掩码区分,例如:
255.255.255.0
3 IP地址特点
IP地址具有以下特征:
可以手动配置
可以通过DHCP自动分配
可以修改
可以跨网络通信
四、路由器的作用
1 什么是路由器
路由器是网络层(三层设备),主要作用是连接不同网络。
例如:
家庭网络连接互联网
公司网络连接运营商
2 路由器工作原理
路由器通过路由表(Routing Table)转发数据。
基本流程:
1 接收数据
2 查看目标IP地址
3 查询路由表
4 选择最佳路径转发数据
3 路由器与交换机区别
| 设备 | 作用 |
|---|---|
| 交换机 | 局域网通信 |
| 路由器 | 跨网络通信 |
简单记忆:
交换机找设备,路由器找网络
五、网络类型分类
计算机网络按照覆盖范围分为三种类型。
1 局域网(LAN)
LAN(Local Area Network)
特点:
覆盖范围小
速度快
延迟低
典型场景:
家庭网络
公司网络
学校网络
2 城域网(MAN)
MAN(Metropolitan Area Network)
特点:
城市级网络
连接多个局域网
例如:
城市政务网络
校园跨校区网络
3 广域网(WAN)
WAN(Wide Area Network)
特点:
覆盖范围广
跨城市或国家
最典型例子:
互联网(Internet)
六、IPv4地址分类
IPv4地址根据第一段数值分为五类。
| 类别 | IP范围 | 默认掩码 |
|---|---|---|
| A类 | 1–126 | 255.0.0.0 |
| B类 | 128–191 | 255.255.0.0 |
| C类 | 192–223 | 255.255.255.0 |
| D类 | 224–239 | 组播 |
| E类 | 240–255 | 实验 |
七、公有IP和私有IP
公有IP
公有IP具有以下特点:
全球唯一
可访问互联网
由ISP分配
私有IP
私有IP仅在局域网中使用。
常见私有地址段:
10.0.0.0 - 10.255.255.255 172.16.0.0 - 172.31.255.255 192.168.0.0 - 192.168.255.255
家庭路由器常见:
192.168.1.1
八、端口号是什么
端口号用于标识设备中的应用程序。
端口范围:
0 – 65535
例如:
192.168.1.100:80
含义:
IP地址 → 设备
端口号 → 应用程序
常见端口:
| 端口 | 服务 |
|---|---|
| 80 | HTTP |
| 443 | HTTPS |
| 21 | FTP |
| 25 | SMTP |
九、ARP协议
ARP(Address Resolution Protocol)用于:
将IP地址转换为MAC地址
工作流程:
1 查询ARP缓存
2 如果没有记录
3 发送ARP广播
4 目标设备回复MAC地址
十、ICMP协议
ICMP用于网络检测。
常见用途:
ping命令
检测网络是否连通
ping 192.168.1.1
traceroute命令
用于检测网络路径。
十一、DNS域名系统
DNS(Domain Name System)用于:
将域名转换为IP地址
例如:
www.baidu.com → 180.101.49.12
DNS系统是互联网访问的重要基础设施。
十二、CDN内容分发网络
CDN(Content Delivery Network)是一种加速网络访问的技术。
它通过全球服务器节点实现:
就近访问
网络加速
提高稳定性
例如:
北京用户访问网站
可以直接从北京CDN节点获取资源。
十三、完整网络访问流程
用户访问网站时的完整过程:
1 输入域名
2 DNS解析IP
3 ARP获取网关MAC
4 路由器转发数据
5 服务器接收请求
6 CDN返回资源
常见问题(FAQ)
什么是MAC地址?
MAC地址是网络设备的物理地址,用于在局域网中唯一标识设备。
IP地址和MAC地址有什么区别?
MAC地址用于局域网识别设备,
IP地址用于网络通信和跨网络访问。
DNS的作用是什么?
DNS用于将域名解析为IP地址,使用户可以通过域名访问网站。
CDN有什么作用?
CDN通过全球节点加速网站访问速度,提高网站稳定性
核心网络协议详解:ARP协议与ICMP协议
在计算机网络通信中,有两个非常重要的基础协议:
ARP协议(Address Resolution Protocol)
ICMP协议(Internet Control Message Protocol)
这两个协议虽然不直接传输用户数据,但在网络通信过程中承担着非常关键的作用,例如:
IP地址解析
网络连通检测
网络故障诊断
下面详细介绍这两个核心协议。
一、ARP协议(地址解析协议)
1 什么是ARP协议
ARP(Address Resolution Protocol)即地址解析协议。
ARP的主要作用是:
将IP地址转换为MAC地址
在局域网通信中,数据帧传输依赖的是MAC地址,而应用层通常只知道IP地址。
因此需要ARP协议完成地址解析。
简单理解:
IP地址 → ARP解析 → MAC地址
2 为什么需要ARP协议
在网络通信中:
IP地址用于定位网络设备
MAC地址用于局域网数据传输
当一台电脑想给另一台设备发送数据时:
知道对方IP
但不知道对方MAC
就需要ARP协议进行解析
3 ARP协议工作流程
假设设备A要向设备B发送数据。
设备信息:
| 设备 | IP地址 | MAC地址 |
|---|---|---|
| 设备A | 192.168.1.10 | AA-AA-AA-AA |
| 设备B | 192.168.1.20 | BB-BB-BB-BB |
ARP解析流程如下:
第一步:查询ARP缓存表
设备A先检查本地ARP缓存表:
IP → MAC
如果已有记录,则直接通信。
第二步:发送ARP广播
如果缓存中没有对应MAC地址:
设备A会发送ARP请求广播:
谁是 192.168.1.20 请告诉我你的MAC地址
广播MAC地址:
FF:FF:FF:FF:FF:FF
这表示局域网所有设备都会收到该请求。
第三步:目标设备回应
设备B检测到:
请求IP = 自己的IP
于是发送ARP响应包:
192.168.1.20 的 MAC 是 BB-BB-BB-BB
该响应为单播发送给设备A。
第四步:更新ARP缓存
设备A收到响应后:
更新ARP缓存表:
192.168.1.20 → BB-BB-BB-BB
之后通信就可以直接使用该MAC地址。
4 ARP缓存表
ARP解析结果会被缓存。
查看ARP表命令:
Windows:
arp -a
Linux:
arp -n
示例:
Internet Address Physical Address 192.168.1.1 00-14-22-01-23-45 192.168.1.20 BB-BB-BB-BB-BB-BB
5 ARP攻击(ARP欺骗)
ARP协议存在安全漏洞。
攻击方式:
ARP欺骗(ARP Spoofing)
攻击者伪造ARP响应:
网关IP → 攻击者MAC
结果:
网络流量被劫持。
常见攻击目的:
中间人攻击
数据窃听
网络劫持
二、ICMP协议(互联网控制消息协议)
1 什么是ICMP协议
ICMP(Internet Control Message Protocol)
即互联网控制消息协议。
ICMP属于网络层协议。
它主要用于:
网络状态检测
网络错误报告
网络诊断
ICMP不传输用户数据,只用于网络控制信息。
2 ICMP协议主要功能
ICMP主要用于以下几个方面:
| 功能 | 说明 |
|---|---|
| 网络连通检测 | ping命令 |
| 路径追踪 | traceroute |
| 错误报告 | 网络不可达 |
| TTL超时 | 路由检测 |
3 ping命令原理
最常见的ICMP应用就是ping命令。
示例:
ping 192.168.1.1
ping的工作过程:
发送 ICMP Echo Request
目标设备返回 Echo Reply
计算往返时间
通信流程:
主机A → Echo Request → 主机B 主机B → Echo Reply → 主机A
示例输出:
Reply from 192.168.1.1 time=3ms TTL=64
含义:
| 字段 | 说明 |
|---|---|
| time | 延迟 |
| TTL | 生存时间 |
| bytes | 数据大小 |
4 traceroute原理
traceroute(Windows为 tracert)用于:
查看数据包经过的路由路径
示例:
Windows:
tracert www.baidu.com
Linux:
traceroute www.baidu.com
原理:
利用TTL递减机制。
流程:
1 设置TTL=1
2 第一个路由器TTL减为0
3 返回ICMP超时信息
逐步增加TTL:
TTL=1 → 第一跳 TTL=2 → 第二跳 TTL=3 → 第三跳
最终得到完整路径。
5 常见ICMP错误类型
ICMP会返回各种错误消息。
常见类型:
| 类型 | 说明 |
|---|---|
| Destination Unreachable | 目标不可达 |
| Time Exceeded | TTL超时 |
| Redirect | 路由重定向 |
| Echo Request | ping请求 |
| Echo Reply | ping回应 |
6 ICMP安全策略
由于ICMP可能被用于攻击:
例如:
Ping Flood
网络扫描
因此很多服务器会:
禁用ICMP响应(注意:部分防火墙会禁用ICMP报文,导致ping命令失败,但不代表设备无法正常通
信(如部分服务器禁用ping以提高安全性))
结果:
ping失败
但服务器仍然可以正常访问。
三、ARP与ICMP对比
| 协议 | 作用 | 层级 |
|---|---|---|
| ARP | IP解析MAC | 数据链路层 / 网络层 |
| ICMP | 网络状态检测 | 网络层 |
简单理解:
ARP解决地址问题 ICMP解决网络问题
四、网络通信中的作用
在一次完整网络通信中:
流程如下:
1 用户输入域名 2 DNS解析IP 3 ARP解析MAC 4 路由器转发 5 ICMP检测网络状态 6 建立TCP连接 7 传输数据
1.访问流程串联:用户输入域名(www.baidu.com)→DNS解析为IP
(180.101.49.12)→设备通过ARP获取网关MAC→路由器转发数据到目标IP所
在网络→目标服务器通过端口80(HTTP)接收请求→若开启CDN,静态资源从
从“最近的服务器”获取;
2.协议/工具定位:ARP解决“IP转MAC”,ICMP解决“连通性检测”,DNS解决“域
名转IP”,CDN解决“访问加速”,端口号解决“应用区分”;
3.网络类型适配:局域网内依赖ARP、交换机,跨网络依赖路由器、IP,互联网访
问依赖DNS、CDN。
对于这arp这一层在kali里面可以使用的工具有arpspoof,具体可以直接-h之后查看参数,在靶场中实验。
