计算机网络基础知识

471 阅读11分钟

1 mac地址与ip地址的区别

MAC地址和IP地址是网络通信中两种不同类型的地址,它们在网络的不同层次中发挥作用,具有不同的特点和用途。以下是它们的主要区别:

一、定义

  • MAC地址(Media Access Control Address)
    • 定义:MAC地址是物理地址,也称为硬件地址或链路层地址。它是固化在网卡(网络接口卡)上的唯一标识符,用于在局域网(LAN)中标识设备。
    • 格式:MAC地址通常是一个48位的二进制数,通常以12位十六进制数表示,例如:00:1A:2B:3C:4D:5E。前24位是厂商识别码(OUI),由IEEE分配给网卡制造商;后24位是厂商分配的唯一序列号。
  • IP地址(Internet Protocol Address)
    • 定义:IP地址是逻辑地址,用于在互联网或局域网中标识设备。它是网络层的地址,用于实现设备之间的通信。
    • 格式:IP地址分为IPv4和IPv6两种。IPv4地址是32位的二进制数,通常以点分十进制表示,例如:192.168.1.1。IPv6地址是128位的二进制数,通常以8组4位十六进制数表示,例如:2001:0db8:85a3:0000:0000:8a2e:0370:7334

二、工作层次

  • MAC地址
    • 工作层次:MAC地址工作在OSI模型的数据链路层(第二层)。它主要用于局域网内的设备识别和数据帧的转发。
    • 作用范围:MAC地址的作用范围仅限于同一局域网内的设备。当数据帧在局域网内传输时,交换机会根据MAC地址进行转发。
  • IP地址
    • 工作层次:IP地址工作在OSI模型的网络层(第三层)。它用于实现不同网络之间的通信,支持跨局域网、广域网甚至互联网的设备通信。
    • 作用范围:IP地址的作用范围可以跨越多个网络。路由器通过IP地址进行数据包的转发,实现不同网络之间的通信。

三、地址分配方式

  • MAC地址
    • 分配方式:MAC地址是硬件地址,由网卡制造商在生产时固化在网卡中。每个网卡的MAC地址是唯一的,不会重复。
    • 不可更改:MAC地址通常不可更改,除非通过特定的软件工具进行修改(但这种修改通常是临时的,重启设备后会恢复)。
  • IP地址
    • 分配方式:IP地址可以是静态分配或动态分配。
      • 静态IP地址:由网络管理员手动分配,通常用于服务器和固定设备。
      • 动态IP地址:通过DHCP(动态主机配置协议)服务器自动分配,通常用于客户端设备。
    • 可更改:IP地址可以根据需要进行更改,例如在动态分配的情况下,设备每次重启或重新连接网络时可能会获得不同的IP地址。

image.png

2 DHCP协议

DHCP 协议介绍

一、什么是 DHCP 协议?

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种用于动态分配IP地址及其他网络配置参数的网络协议。它允许网络管理员通过集中管理的方式为网络中的设备自动分配IP地址,从而简化网络配置和管理。

二、DHCP 的主要功能
  1. 动态分配 IP 地址

    • DHCP 服务器可以为客户端设备动态分配IP地址,避免手动配置IP地址的繁琐过程。
    • 分配的IP地址可以是临时的(租用),也可以是永久的。
  2. 集中管理网络配置

    • DHCP 服务器可以为客户端设备提供其他网络配置参数,如子网掩码、默认网关、DNS 服务器地址等。
    • 网络管理员可以通过DHCP服务器集中管理网络配置,提高管理效率。
  3. 避免 IP 地址冲突

    • DHCP 服务器会检查IP地址的使用情况,确保分配的IP地址是唯一的,避免IP地址冲突。
  4. 支持多种网络环境

    • DHCP 协议支持多种网络环境,包括局域网(LAN)、广域网(WAN)和互联网。
三、DHCP 的工作过程

DHCP 的工作过程主要包括以下几个阶段:

  1. 发现阶段(DHCP Discover)

    • 客户端启动后,会发送一个广播请求(DHCP Discover)消息,寻找可用的DHCP服务器。
    • 该消息包含客户端的MAC地址,但不包含IP地址(因为客户端尚未获得IP地址)。
  2. 提供阶段(DHCP Offer)

    • 网络中的DHCP服务器收到客户端的请求后,会从可用的IP地址池中选择一个IP地址,并向客户端发送一个响应消息(DHCP Offer)。
    • 该消息包含分配的IP地址、子网掩码、默认网关、DNS服务器地址等网络配置参数。
  3. 请求阶段(DHCP Request)

    • 客户端收到一个或多个DHCP服务器的响应后,会选择一个响应,并向所有DHCP服务器发送一个请求消息(DHCP Request)。
    • 该消息表明客户端接受某个DHCP服务器提供的IP地址和配置参数。
  4. 确认阶段(DHCP Acknowledge)

    • DHCP服务器收到客户端的请求后,会发送一个确认消息(DHCP Acknowledge),正式将IP地址和配置参数分配给客户端。
    • 如果DHCP服务器发现客户端请求的IP地址已被占用,会发送一个拒绝消息(DHCP NAK)。

3 ARP协议

ARP协议(地址解析协议)是一种网络协议,用于将IP地址转换为MAC地址。简单来说,它帮助设备在局域网内找到其他设备的物理地址,以便进行通信。

4 子网

子网是将一个较大的网络划分为多个较小的逻辑网络,用于优化网络性能、提高安全性和简化管理。子网划分通过扩展子网掩码实现,将IP地址分为网络部分和主机部分。划分步骤包括确定子网数量、计算子网掩码、确定子网范围和分配主机地址。子网划分需注意子网掩码的连续性、主机数量限制以及广播和网络地址的使用。

5 NAT转换

NAT(Network Address Translation,网络地址转换)是一种网络技术,用于在不同网络之间转换IP地址。让我详细解释一下:

NAT 的基本概念

NAT 是一种将私有IP地址转换为公有IP地址的技术,使得内部网络中的多个设备能够通过单个公有IP地址访问互联网。

NAT 的工作原理
1. 基本转换过程
内部网络 (私有IP)  →  NAT设备  →  外部网络 (公有IP)
192.168.1.100     →   路由器   →   203.0.113.5
192.168.1.101     →     ↑     →       ↑
192.168.1.102     →   转换表   →   同一公有IP
2. NAT 转换表示例
内部地址:端口          外部地址:端口          目标地址:端口
192.168.1.100:3000  →  203.0.113.5:5001  →  8.8.8.8:80
192.168.1.101:3000  →  203.0.113.5:5002  →  1.1.1.1:443
192.168.1.102:8080  →  203.0.113.5:5003  →  172.16.1.1:80
NAT 的优点
1. 节省公有IP地址
  • 缓解IPv4地址短缺问题
  • 多个设备共享少数公有IP
2. 提供安全性
  • 隐藏内部网络结构
  • 外部无法直接访问内部设备
3. 网络管理简化
  • 内部可使用标准私有IP段
  • 减少IP地址管理复杂度
NAT 的缺点
1. 破坏端到端连接
  • 违背互联网端到端原则
  • 影响某些协议的正常工作
2. 增加延迟和复杂性
  • 需要维护转换表
  • 增加数据包处理时间
3. 限制某些应用
  • P2P应用可能无法正常工作
  • 需要额外的穿透技术
常见的私有IP地址段
Class A: 10.0.0.0    - 10.255.255.255   (10.0.0.0/8)
Class B: 172.16.0.0  - 172.31.255.255   (172.16.0.0/12)  
Class C: 192.168.0.0 - 192.168.255.255  (192.168.0.0/16)
NAT 穿透技术
1. UPnP (Universal Plug and Play)
  • 自动配置端口映射
  • 简化设备接入
2. STUN (Session Traversal Utilities for NAT)
  • 发现NAT类型和外部IP
  • 帮助建立P2P连接
3. TURN (Traversal Using Relays around NAT)
  • 通过中继服务器转发数据
  • 解决严格NAT环境下的连接问题

实际应用场景

1. 家庭网络
互联网 ←→ 路由器(NAT) ←→ 内部设备
          203.0.113.5     192.168.1.100 (电脑)
                         192.168.1.101 (手机)  
                         192.168.1.102 (平板)
2. 企业网络
互联网 ←→ 防火墙(NAT) ←→ 内部服务器/工作站
          公有IP池        私有IP网络
3. 云服务
  • 负载均衡器进行NAT转换
  • 容器网络中的地址转换
IPv6 与 NAT

随着IPv6的普及,NAT的需求会减少:

  • IPv6地址充足:每个设备都可以有公有地址
  • 恢复端到端连接:简化网络架构
  • 过渡期共存:NAT64/DNS64 等技术

NAT 是现代网络中不可或缺的技术,虽然有一些局限性,但在IPv4环境下有效解决了地址短缺和网络安全问题。理解NAT的工作原理对于网络管理和故障排除非常重要。 DNS(Domain Name System,域名系统)是互联网上一个分布式数据库系统,它将易于记忆的域名(如 www.example.com)转换为计算机可以识别的IP地址(如 192.0.2.1)。DNS 是互联网基础设施的核心组成部分,它使得用户可以通过域名访问网站和服务,而无需记住复杂的IP地址。

6 DNS介绍

DNS 的主要功能

  1. 域名解析

    • 正向解析:将域名转换为IP地址。例如,当你在浏览器中输入 www.example.com 时,DNS 会将这个域名解析为对应的IP地址,使浏览器能够找到并连接到目标服务器。
    • 反向解析:将IP地址转换为域名。虽然不常用,但在某些情况下(如日志分析)会用到。
  2. 负载均衡

    • DNS 可以通过配置多个IP地址来实现负载均衡。当一个域名有多个IP地址时,DNS 会根据配置的策略(如轮询)将请求分发到不同的服务器,从而提高服务的可用性和性能。
  3. 故障转移

    • DNS 可以配置多个备用服务器,当主服务器不可用时,DNS 会自动将请求重定向到备用服务器,从而提高系统的可靠性。
  4. 域名别名

    • DNS 支持 CNAME 记录,允许一个域名指向另一个域名。例如,blog.example.com 可以是一个 CNAME 记录,指向 www.example.com,这样用户可以通过多个域名访问同一个服务。

DNS 的工作原理

  1. 域名请求

    • 当用户在浏览器中输入一个域名时,浏览器会向本地 DNS 服务器发送一个查询请求。
  2. 本地 DNS 服务器

    • 本地 DNS 服务器(通常是 ISP 提供的 DNS 服务器或企业内部的 DNS 服务器)会首先检查其缓存,看是否已经解析过该域名。
    • 如果缓存中有该域名的解析记录,本地 DNS 服务器会直接返回解析结果。
    • 如果缓存中没有该域名的解析记录,本地 DNS 服务器会向根 DNS 服务器发送查询请求。
  3. 根 DNS 服务器

    • 根 DNS 服务器是 DNS 层次结构的顶层,它会根据域名的顶级域(如 .com.org)将请求转发到相应的顶级域 DNS 服务器。
  4. 顶级域 DNS 服务器

    • 顶级域 DNS 服务器会根据域名的二级域(如 example)将请求转发到相应的权威 DNS 服务器。
  5. 权威 DNS 服务器

    • 权威 DNS 服务器是负责特定域名的 DNS 服务器,它会返回域名的实际 IP 地址。
    • 一旦本地 DNS 服务器收到权威 DNS 服务器的解析结果,它会将结果缓存起来,并返回给用户。
  6. 缓存机制

    • 为了提高效率,DNS 服务器会将解析结果缓存一段时间(由 TTL,Time to Live,决定)。在缓存有效期内,后续的相同域名请求可以直接从缓存中获取解析结果,而无需再次查询。

DNS 的记录类型

  • A 记录:将域名映射到一个 IPv4 地址。
  • AAAA 记录:将域名映射到一个 IPv6 地址。
  • CNAME 记录:将一个域名指向另一个域名。
  • MX 记录:指定域名的邮件服务器。
  • NS 记录:指定域名的权威 DNS 服务器。
  • TXT 记录:用于存储任意文本信息,常用于 SPF(Sender Policy Framework)等。
  • PTR 记录:用于反向解析,将 IP 地址映射到域名。

DNS 的安全问题

  • DNS 欺骗:攻击者通过篡改 DNS 查询响应,将用户重定向到恶意网站。
  • DNS 劫持:攻击者通过控制 DNS 服务器或网络路径,篡改 DNS 查询结果。
  • DNS 拒绝服务攻击(DoS/DDoS):攻击者通过发送大量 DNS 查询请求,使 DNS 服务器过载,导致正常用户无法访问服务。

总结

DNS 是互联网的关键基础设施,它通过将域名转换为IP地址,使得用户能够方便地访问网络资源。DNS 的工作原理涉及多个层次的服务器,通过缓存机制提高效率,并支持多种记录类型以满足不同的需求。然而,DNS 也面临多种安全威胁,需要采取相应的安全措施来保护其正常运行。