HCIP笔记(第一、二章)
第一章:HCIA复习
一、OSI七层参考模型
OSI模型(Open Systems Interconnection,开放系统互连)是国际标准化组织(ISO)提出的网络通信概念模型,将网络通信划分为7个层次:
(1)物理层(Physical Layer)
功能:传输原始比特流,定义电气、机械特性
协议/标准:RS-232、V.35、IEEE 802.3(以太网物理层)
设备:网卡、中继器、集线器
数据单位:比特(bit)
(2)数据链路层(Data Link Layer)
功能:
帧同步
差错控制(CRC)
流量控制
MAC地址寻址
协议:PPP、HDLC、以太网(Ethernet II)、802.11(Wi-Fi)
设备:交换机、网桥
数据单位:帧(Frame)
(3)网络层(Network Layer)
功能:
逻辑寻址(IP地址)
路由选择
拥塞控制
协议:IP、ICMP、ARP、RIP、OSPF
设备:路由器
数据单位:数据包(Packet)
(4)传输层(Transport Layer)
功能:
端到端通信
可靠传输(TCP)
不可靠但高效传输(UDP)
流量控制
协议:TCP、UDP
数据单位:段(Segment)
(5)会话层(Session Layer)
功能:
建立、管理和终止会话
同步控制
协议:NetBIOS、RPC
示例:SQL会话、HTTP会话
(6)表示层(Presentation Layer)
功能:
数据格式转换
加密/解密
压缩/解压缩
协议:SSL/TLS、JPEG、MPEG
(7)应用层(Application Layer)
功能:为用户应用程序提供网络服务接口
协议:HTTP、FTP、SMTP、DNS、Telnet
通信过程(封装与解封装)
封装:在原始数据的基础上加入一些额外信息形成新的格式。
解封装:拆掉封装的额外信息,还原成原始数据。
补充:
端口号:0-65535,0和65535不能用,系统保留
知名端口号:1-1023
HTTP---80---TCP
HTTPS---443---TCP
FTP---20/21---TCP
TFTP------UDP
DNS---53---TCP/UDP
SMTP:邮件的发送端---25---tcp
POP3:邮件的接收端---110---tcp
telnet---23---tcp
DHCP---67(服务器端)68(客户端)
动态端口号:1024以上的随机端口号
信号的三种传输模式:
单工模式:通信的一方具备收或发两个功能。收音机
半双工模式:通信的双方具备收和发两个功能,但不是同时具备。对讲机
双工模式:通信的双方同时具备收和发两个功能。
二、TCP/IP四层模型
TCP/IP模型是实际互联网使用的协议栈,由美国国防部开发,分为4层:
(1)网络接口层(Network Access Layer)
对应OSI:物理层+数据链路层
功能:物理传输和本地网络访问
协议:以太网、Wi-Fi、PPP
(2)网络层(Internet Layer)
对应OSI:网络层
核心协议:
IP(Internet Protocol)
ICMP(Ping工具使用)
ARP(地址解析)
IGMP(组播管理)
(3)传输层(Transport Layer)
对应OSI:传输层
主要协议:
TCP(可靠传输)
UDP(高效传输)
(4)应用层(Application Layer)
对应OSI:会话层+表示层+应用层
常见协议:
HTTP/HTTPS
FTP/SFTP
SMTP/POP3/IMAP
DNS
SSH/Telnet
TCP/IP跨层封装
跨层封装 --- 取消某些层面的封装结构。目的是为了减少设备的资源消耗。
OSI与TCP/IP模型对比
对比维度 | OSI模型 | TCP/IP模型 |
---|---|---|
提出组织 | ISO(国际标准化组织) | 美国国防部(DoD) |
分层结构 | 7层(理论模型) | 4层(实用模型) |
标准化程度 | 严格分层,理论性强 | 更灵活,实用性强 |
协议支持 | 不绑定特定协议 | 与TCP/IP协议簇紧密绑定 |
通用性 | 通用网络概念框架 | 实际互联网标准 |
层次对应 | 完整的分层结构 | 应用层合并了OSI上三层功能 |
三、DHCP协议(动态主机配置协议)
1. DHCP概述
DHCP是一种网络管理协议,用于自动分配IP地址及其他相关网络配置参数(如子网掩码、默认网关、DNS服务器等)。它基于UDP协议,客户端使用68端口,服务器使用67端
1.1 DHCP的主要功能
自动分配IP地址:避免手动配置,减少错误。
IP地址租约管理:动态回收和重新分配IP地址。
提供其他网络参数:
子网掩码(Subnet Mask)
默认网关(Default Gateway)
DNS服务器地址
域名(Domain Name)
WINS服务器(可选)
NTP服务器(时间同步)
1.2 DHCP的优缺点
优点 | 缺点 |
---|---|
✔ 减少手动配置错误 | ✖ 依赖DHCP服务器,单点故障可能影响网络 |
✔ 提高IP地址利用率 | ✖ 安全性较低(可能遭受DHCP欺骗攻击) |
✔ 支持大规模网络 | ✖ 需要额外服务器资源 |
2.DHCP工作原理(DORA过程)
DHCP的工作过程通常称为DORA(Discover, Offer, Request, Acknowledgement),分为4个阶段:
2.1 DHCP Discover(发现阶段)
客户端(无IP地址)发送DHCP Discover广播(目标IP:
255.255.255.255
,目标MAC:FF:FF:FF:FF:FF:FF
)。用于寻找可用的DHCP服务器。
2.2 DHCP Offer(提供阶段)
DHCP服务器收到Discover后,从地址池中选择一个可用IP,发送DHCP Offer(仍为广播或单播,取决于客户端支持)。
包含:
提供的IP地址
租期(Lease Time)
子网掩码、网关、DNS等
2.3 DHCP Request(请求阶段)
客户端选择一个Offer(通常第一个收到的),发送DHCP Request广播(告知所有DHCP服务器它选择了哪个Offer)。
其他DHCP服务器收到后,会收回未被选中的IP。
2.4 DHCP Acknowledgement(确认阶段)
被选中的DHCP服务器发送DHCP ACK,确认IP分配成功。
客户端正式使用该IP地址。
特殊情况:
如果服务器返回DHCP NAK,表示IP分配失败(可能已被占用)。
客户端收到NAK后,会重新发起Discover。
3. DHCP租约管理
3.1 租期(Lease Time)
DHCP分配的IP地址是临时的,有租期(默认通常为24小时)。
T1(50%租期):客户端尝试续租(发送DHCP Request单播给原服务器)。
T2(87.5%租期):如果续租失败,客户端广播请求其他服务器。
3.2 IP地址释放
客户端可以主动发送DHCP Release,提前归还IP。
如果租期到期且未续约,服务器会回收IP。
4. DHCP报文格式
DHCP基于BOOTP协议扩展,报文结构如下:
字段 | 长度(字节) | 说明 |
---|---|---|
op | 1 | 消息类型(1=请求,2=回复) |
htype | 1 | 硬件类型(1=以太网) |
hlen | 1 | 硬件地址长度(6=MAC地址长度) |
hops | 1 | 经过的DHCP中继数 |
xid | 4 | 事务ID(客户端随机生成,用于匹配请求/响应) |
secs | 2 | 客户端启动后的秒数 |
flags | 2 | 广播/单播标志 |
ciaddr | 4 | 客户端当前IP(如果已有) |
yiaddr | 4 | 服务器分配的IP |
siaddr | 4 | 引导服务器IP(如TFTP服务器) |
giaddr | 4 | 中继代理IP(跨网段时使用) |
chaddr | 16 | 客户端MAC地址 |
sname | 64 | 服务器主机名(可选) |
file | 128 | 引导文件名(可选) |
options | 可变 | DHCP选项(如子网掩码、DNS等) |
5. DHCP中继(Relay Agent)
问题:DHCP Discover是广播,无法跨网段。
解决方案:使用DHCP中继(如路由器或专用中继代理)。
工作原理:
客户端发送Discover广播。
中继代理(如路由器)收到后,单播转发给指定的DHCP服务器(修改
giaddr
字段)。DHCP服务器根据
giaddr
判断客户端所在网段,分配对应IP。
6. DHCP安全与攻击防护
6.1 DHCP欺骗攻击(Rogue DHCP Server)
攻击方式:黑客搭建恶意DHCP服务器,分配错误的网关/DNS(如指向钓鱼网站)。
防护措施:
DHCP Snooping(交换机安全功能,只允许信任端口提供DHCP服务)。
静态绑定IP-MAC(防止IP冲突)。
6.2 DHCP耗尽攻击(DHCP Starvation)
攻击方式:伪造大量DHCP请求,耗尽IP池。
防护措施:
端口安全(限制每端口的MAC数量)。
DHCP限速(如Cisco的
ip dhcp snooping limit rate
)。
7. 实验:配置DHCP服务器(以华为设备为例)
7.1 基本DHCP配置
[R1] dhcp enable # 启用DHCP服务
[R1] ip pool LAN1 # 创建地址池
[R1-ip-pool-LAN1] network 192.168.1.0 mask 24 # 设置地址范围
[R1-ip-pool-LAN1] gateway-list 192.168.1.1 # 默认网关
[R1-ip-pool-LAN1] dns-list 8.8.8.8 # DNS服务器
[R1-ip-pool-LAN1] lease day 1 hour 0 minute 0 # 租期1天
[R1-ip-pool-LAN1] quit[R1] interface GigabitEthernet0/0/0
[R1-GigabitEthernet0/0/0] dhcp select global # 应用DHCP池
7.2 DHCP中继配置
[R2] dhcp enable
[R2] interface GigabitEthernet0/0/1
[R2-GigabitEthernet0/0/1] dhcp select relay # 启用中继
[R2-GigabitEthernet0/0/1] dhcp relay server-ip 10.1.1.1 # 指向DHCP服务器
DNS协议详解(域名系统)
1. DNS概述
DNS是互联网的"电话簿",负责将域名(如www.baidu.com)转换为IP地址(如180.101.49.12)。它采用分布式数据库架构,基于UDP/TCP 53端口工作。
1.1 DNS的核心功能
功能 | 说明 |
---|---|
域名解析 | 将域名转换为IP(正向解析) |
反向解析 | 将IP转换为域名(PTR记录) |
负载均衡 | 通过轮询返回多个IP(如CDN) |
邮件路由 | 通过MX记录定位邮件服务器 |
1.2 DNS的优势
易记性:比IP地址更友好
灵活性:IP变更不影响域名访问
分布式:无单点故障
2. DNS架构与组成
2.1 域名层次结构
根域(.)
└── 顶级域(TLD):com, net, org, cn...└── 二级域:baidu, google...└── 子域名:www, mail, api...
2.2 DNS服务器类型
类型 | 作用 |
---|---|
根DNS服务器 | 全球13组,管理顶级域(如.com) |
TLD服务器 | 管理特定顶级域(如.com域服务器) |
权威DNS服务器 | 管理具体域名的记录(如baidu.com的NS) |
递归DNS服务器 | 替客户端完成完整查询(如ISP提供的DNS) |
3. DNS查询过程
3.1 递归查询 vs 迭代查询
类型 | 特点 | 示例 |
---|---|---|
递归查询 | 客户端要求DNS服务器必须返回最终结果 | 浏览器 → 本地DNS |
迭代查询 | 服务器只返回已知信息,客户端继续查询 | 本地DNS → 根DNS → TLD DNS |
3.2 完整解析流程(以访问www.baidu.com为例)
浏览器缓存 → 2. 本地hosts文件 → 3. 本地DNS服务器 →
根DNS(返回.com服务器) → 5. .com TLD服务器(返回baidu.com的NS) →
baidu.com权威服务器(返回www的A记录) → 7. 返回客户端
3.3 DNS缓存机制
TTL(Time-To-Live):控制记录缓存时间(如3600秒)
分级缓存:客户端、本地DNS、ISP DNS均会缓存
4. DNS记录类型
记录类型 | 说明 | 示例 |
---|---|---|
A | IPv4地址记录 | www → 192.168.1.1 |
AAAA | IPv6地址记录 | www → 2001:db8::1 |
CNAME | 别名记录 | www → example.com |
MX | 邮件服务器记录 | @ → mail.example.com |
NS | 域名服务器记录 | @ → ns1.example.com |
TXT | 文本信息(如SPF防垃圾邮件) | "v=spf1 mx ~all" |
PTR | 反向解析记录 | 1.1.168.192.in-addr.arpa → www |
5. DNS报文格式
DNS报文由Header + Question + Answer + Authority + Additional组成:
5.1 头部(Header)
字段 | 说明 |
---|---|
Transaction ID | 查询ID(用于匹配请求/响应) |
Flags | 标志位(QR: 0=查询, 1=响应) |
QDCOUNT | 问题部分条目数 |
ANCOUNT | 回答部分资源记录数 |
5.2 查询示例(Wireshark抓包)
DNS Query:Header: Opcode: Standard query (0)Questions: 1Question:Name: www.baidu.comType: A (Host Address)Class: IN (0x0001)
6. 关键协议扩展
6.1 DNSSEC(DNS安全扩展)
功能:防止DNS欺骗(缓存投毒)
原理:使用数字签名验证数据真实性
6.2 DoH(DNS over HTTPS)
特点:通过HTTPS加密DNS查询
端口:TCP 443
应用:Chrome/Firefox支持
6.3 DoT(DNS over TLS)
特点:通过TLS加密DNS
端口:TCP 853
7. DNS攻击与防护
7.1 DNS劫持
手法:篡改DNS响应(如恶意路由器)
防护:使用DoH/DoT,配置可信DNS(如8.8.8.8)
7.2 DDoS攻击
目标:瘫痪DNS服务器
防护:Anycast技术(如Cloudflare)
7.3 缓存投毒
手法:伪造DNS响应
防护:DNSSEC验证
8. 实验:DNS配置示例(以华为设备为例)
[R1] dns resolve # 启用DNS解析
[R1] dns server 8.8.8.8 # 设置上游DNS
[R1] ping www.baidu.com by-domain # 通过域名测试
第二章、网络类型和数据链路层协议
网络类型的分类:
1.多点接入网络(MA):一条网段内上出现多个设备
BMA:广播型多点接入(broadcast):支持广播,所有设备之间能互访,例如:以太网
NBMA(NOn-Broadcas Multi-Access):非广播型多点接入-----不支持广播,如:帧中继网络
spoke之间不能互访
spoke和hub之间能互访
广泛应用在运营商的接入网中,可以用一根线连接多个宽带用户,并且每个用户之间是隔离的,互不影响,节省运营商成本
2、P2MP(点到多点网络)point-to-Multipoint
点到多点网络,由其他网络类型手动更改:如在ospf接口下ospf network-type 网络类型
模拟组播发送协议报文(帧中继建立子接口模拟组播发报文),需要手动指定邻居;
3、点到点网络(P2P)point-to-point
特点:一个网络中只有两台设备,即一根线只能连接两个设备
点到点网络的搭建:使用串线连接设备的串线接口(serial),形成一个P2P网络
串线:VAG视频线、console配置线
数据链路层协议
1.MA网络:
(1)以太网协议
定义:以太网不是一个网络,而是一个协议,传输标准EthernetII 类型帧的网络
特征:多路访问,广播式的网络,使用MAC地址对设备进行区分和标识
所属类型:可细分至BMA----因为其支持多点接入和广播行为
构建方法:使用以太网线连接设备的以太网接口,形成的网络是以太网络,所运行的二层协议是以太网协议
以太网线:同轴电缆、光纤、双绞线
以太网接口:设备一般提供百兆、千兆、万兆接口
以太网特色:可以提供极大的传输速率---频分技术:一根铜丝上其实可以同时发送不同频段的电波而互不干扰,实现数据并行发送,起到叠加带宽的效果。
2.P2P网络
(1)HDLC协议---高级数据链路控制协议,私有协议,厂商之间不兼容
标准HDLC:ISO组织根据SDLC(面向比特的同步数据链路控制协议)发展改进而来
非标准HDLC:各个厂家在ISO标准的HDLC上再进行修改而成
HDLC协议特点:
(1)对于任何一种比特流都可透明传输
(2)较高的数据链路传输效率
(3)所有的帧都有FCS,传输可靠性高
(4)用统一的帧格式来实现传输
(5)不支持验证,缺乏足够的安全性
(6)协议不支持IP地址协商
(7)用于点到点的同步链路
(2)PPP协议---点到点协议
PPP基本概念:
1、ppp协议,公有协议,所有厂商兼容,支持同步和异步线路;
同步、异步本质区别:所有电路是否在同一时钟沿下同步地处理数据。
特点:
直连间配置不同网段IP地址可以正常通信
ppp协议支持验证,具备错误检测能力,但不具备纠错能力;
对网络层地址进行协商,能够远程动态分配IP地址
[Huawei-Serial4/0/0]remote address 12.0.0.2 -----配置在主动给对端分配地址的设备上
[Huawei-Serial4/0/0]ip address ppp-negotiate ----配置在需要主动获取IP地址的设备上
ppp兼容性较好,可同时支持多种网络层协议;
无重传机制,网络开销小;
PPP协议的组成:主要由LCP、NCP以及用于网络安全的可选验证协议族组成
LCP:链路控制协议--主要是完成ppp会话建立第一阶段的协商
NCP:网络控制协议:完成ppp会话建立的第三阶段,针对网络层协议进行协商,IP地址协商。
PPP协议的工作过程:链路建立阶段--LCP建立:通过相互发送LCP协议数据包来商议,如:MTU、是否需要认证,以及使用什么方法认证、链路通信模式、接口速率
认证阶段--ppp认证(可选项)
网络层协议协商阶段--NCP协商---IP地址协商
PPP验证:
1.PAP验证
被验证方首先发起验证请求,两次握手验证;密码以明文传送;支持单、双向认证;
2.CHAP验证
主验证方首先发起验证请求,三次握手验证;不发送密码,安全性比PAP高;支持单、双向认证;
ppp配置命令总结
主验证方:配置用户列表及验证方式
[R2]aaa
[R2-aaa]local-user wangdaye password cipher wdy12345
[R2-aaa]local-user wangdaye service-type ppp
[R2]int Serial 3/0/0
[R2-Serial3/0/0]ppp authentication-mode chap/pap //设置验证类型
[R2-Serial3/0/0]link-protocol ppp //设置接口报文的封装模式被验证方:配置验证用户名
[R1]interface Serial 3/0/0
[R1-Serial3/0/0]ppp chap user wangdaye
[R1-Serial3/0/0]ppp chap password cipher wdy12345
[R1-Serial3/0/0]ppp pap local-user wangdaye password cipher wdy12345
PPP MP:MP(multilink ppp),将多个ppp链路捆绑后,当做一条链路使用;
MP可以实现增加带宽、负载分担、链路备份以及降低报文时延
配置方式:用MP-GROUP配置