网络基础知识
OSI 七层模型
7. 应用层 (Application Layer)
- 功能:为应用程序提供网络服务
- 协议:HTTP、FTP、SMTP、DNS、Telnet
- 数据单位:数据(Data)
6. 表示层 (Presentation Layer)
- 功能:数据格式转换、加密解密、压缩解压缩
- 协议:SSL、TLS
- 数据单位:数据(Data)
5. 会话层 (Session Layer)
- 功能:建立、维护和管理会话连接
- 协议:RPC、NetBIOS
- 数据单位:数据(Data)
4. 传输层 (Transport Layer)
- 功能:端到端的可靠数据传输
- 协议:TCP、UDP
- 数据单位:段(Segment)
3. 网络层 (Network Layer)
- 功能:路由选择、寻址和转发
- 协议:IP、ICMP、IGMP
- 数据单位:包(Packet)
2. 数据链路层 (Data Link Layer)
- 功能:相邻节点之间的数据传输
- 协议:MAC、PPP、ARP
- 数据单位:帧(Frame)
1. 物理层 (Physical Layer)
- 功能:比特流的传输
- 协议:IEEE 802.3(以太网)
- 数据单位:比特(Bit)
常用记忆方法
- 自顶向下:
应、表、会、传、网、链、物 - 英文首字母:
APSTNDP - 通俗记忆:
All People Seem To Need Data Processing(所有人似乎都需要数据处理)
在实际应用中,我们经常使用 TCP/IP 四层模型,它是 OSI 七层模型的简化版:
- 应用层(对应 OSI 的应用层、表示层、会话层)
- 传输层(对应 OSI 的传输层)
- 网络层(对应 OSI 的网络层)
- 网络接口层(对应 OSI 的数据链路层和物理层)
交换机的作用
交换机在计算机网络中扮演着非常重要的角色,主要有以下几个用途:
数据转发
- 根据 MAC 地址表将数据包准确转发到目标设备
- 在同一个局域网内实现设备之间的通信
网络分段
- 将大型网络分割成多个小型网络段
- 减少广播域的范围,提高网络性能
提高网络性能
- 支持全双工通信
- 可以同时处理多个数据包的传输
- 减少网络冲突
MAC地址学习
- 自动学习连接设备的 MAC 地址
- 建立并维护 MAC 地址表
- 实现智能转发
提供网络安全
- 可以配置 VLAN 进行逻辑隔离
- 支持端口安全等功能
- 控制访问权限
网络通信需求
如果没有交换机,不同网段间不能直接进行数据通信。这是因为:
物理连接问题
- 没有交换机,就缺少了连接两个网络的物理媒介
- 设备之间无法建立网络连接通路
网段隔离
- 不同网段之间的通信需要三层设备(如路由器)的支持
通信方式限制
- 即使用网线直接连接两台计算机,也只能实现点对点通信
- 无法实现多台设备之间的网络互联
要实现两个网络之间的通信,通常需要:
- 交换机(二层设备):实现同一网段内的通信
- 路由器(三层设备):实现不同网段之间的通信
二层网络与三层网络
二层网络(数据链路层)
主要特征
- 基于 MAC 地址进行数据转发
- 工作在 OSI 第二层
- 只能在同一广播域内通信
典型设备
- 交换机(Switch)
- 网桥(Bridge)
主要功能
- MAC 地址学习和转发
- 帧的封装和解封装
- 差错检测
- VLAN 划分
三层网络(网络层)
主要特征
- 基于 IP 地址进行数据路由
- 工作在 OSI 第三层
- 可以跨网段通信
典型设备
- 路由器(Router)
- 三层交换机
主要功能
- IP 路由
- 数据包转发
- 网络互联
- 流量控制
区别对比
寻址方式
- 二层:使用 MAC 地址(物理地址)
- 三层:使用 IP 地址(逻辑地址)
通信范围
- 二层:限于同一广播域内
- 三层:可以跨网段、跨广播域
应用场景
- 二层:局域网内部通信
- 三层:跨网段通信、互联网通信
交换机类型对比
普通交换机(二层交换机)
工作原理
- 只工作在数据链路层
- 基于 MAC 地址转发数据
- 只能识别和转发二层数据帧
功能特点
- 维护 MAC 地址表
- 支持 VLAN 划分
- 只能在同一网段内转发数据
应用场景
- 小型局域网
- 同一网段内的设备互联
- 网络接入层使用
三层交换机
工作原理
- 同时工作在数据链路层和网络层
- 可以基于 MAC 地址和 IP 地址转发数据
- 具备路由功能
功能特点
- 具备二层交换机的所有功能
- 支持 IP 路由
- 可以实现 VLAN 间路由
- 支持访问控制列表(ACL)
- 支持 QoS
应用场景
- 大型局域网
- 不同网段间的通信
- 网络核心层和汇聚层使用
主要区别总结
功能范围
- 二层交换机:只能转发同一网段数据
- 三层交换机:可以实现跨网段通信
转发依据
- 二层交换机:只依据 MAC 地址
- 三层交换机:可依据 MAC 地址和 IP 地址
处理能力
- 二层交换机:处理能力相对较弱
- 三层交换机:处理能力更强,可以同时处理二层和三层数据
价格成本
- 二层交换机:价格相对较低
- 三层交换机:价格较高
适用规模
- 二层交换机:适合小型网络
- 三层交换机:适合中大型网络
家用路由器
家用路由器实际上是一个多层设备,主要工作在网络层(第三层),但也集成了其他层的功能:
主要工作层次
网络层(第三层)- 核心功能
- IP 路由功能
- NAT 网络地址转换
- 防火墙功能
- DHCP 服务
数据链路层(第二层)
- 无线接入点(AP)功能
- MAC 地址过滤
- 交换机功能
应用层(第七层)
- Web 管理界面
- DNS 服务
- QoS 服务质量控制
家用路由器的主要功能
网络接入
- 连接互联网(WAN 口)
- 提供无线网络接入
- 提供有线网络接入(LAN 口)
网络管理
- IP 地址分配(DHCP)
- 访问控制
- 端口映射
- 网络安全
地址转换
- NAT 功能
- 内外网络隔离
- 公网 IP 共享
NAT
NAT (Network Address Translation,网络地址转换) 是一种在计算机网络中广泛使用的技术。让我为您详细解释:
NAT的主要功能和用途:
地址转换:将内部网络的私有IP地址转换为外部网络的公网IP地址,使内部网络的设备能够访问互联网。
节省IPv4地址:通过让多台内网设备共用一个公网IP地址,有效缓解了IPv4地址短缺的问题。
提高安全性:由于外部网络无法直接访问内部私有地址,NAT起到了类似防火墙的保护作用。
NAT的工作原理: 当内网设备需要访问互联网时,NAT会:
- 记录内网设备的私有IP地址和端口号
- 将其转换为路由器的公网IP地址和一个新的端口号
- 建立转换表来维护这些对应关系
- 当收到响应时,再根据转换表将数据包发送回正确的内网设备
常见的NAT类型:
- 静态NAT:一个私有IP固定对应一个公网IP
- 动态NAT:从公网IP地址池中动态分配
- PAT(端口地址转换):多个私有IP共用一个公网IP,通过不同端口号区分
这项技术在家用路由器和企业网络中都得到广泛应用,是现代互联网基础设施的重要组成部分。
Linux系统中,以太网接口的命名
在Linux系统中,以太网接口的命名通常遵循以下规则:
- 以太网接口的名称通常以"eth"开头,例如"eth0"、"eth1"等。
- 如果接口是虚拟的,则名称中会包含"veth"前缀,例如"veth0"、"veth1"等。
- 如果接口是桥接接口,则名称中会包含"br"前缀,例如"br0"、"br1"等。
- 如果接口是无线接口,则名称中会包含"wlan"前缀,例如"wlan0"、"wlan1"等。
Note
传统命名方式: eth0, eth1, eth2 等。这是最早期的命名方式,按照网卡被系统检测到的顺序依次编号。
新的可预测命名方式(Predictable Network Interface Names):
- eno1, eno2 等 - 主板板载网卡
- enp0s3, enp2s0 等 - PCI网卡(基于PCI总线位置)
- enx78e7d1ea46da 等 - 基于MAC地址的命名
这种改变始于systemd的引入。新的命名方案主要是为了解决传统eth命名方式的一些问题,比如网卡顺序可能会在重启后发生变化。不过你仍然可以通过修改配置禁用这种新命名方式,回到传统的eth命名。
Note
eno = Ethernet On-board(板载以太网) enp = Ethernet PCI(PCI接口的以太网卡) ens = Ethernet Slot(热插拔槽的以太网) enx = Ethernet + MAC地址(基于MAC地址命名的以太网)