wireshark

抓包原理

本机环境      直接抓包本机网卡进出量

集线器环境  流量防洪,同一冲突域

交换机环境  端口镜像  ARP欺骗  MAC泛洪 

ARP攻击软件Cain&Abel


GTK1/2 图像处理工具

Core 核心引擎  Epan 包分析引擎  

Wiretap 格式支持

Capture 捕包引擎

Win-/libpcap 库文件


标题栏

菜单栏

工具栏

数据包过滤栏

数据包列表栏

数据包详细区

数据包字节区

数据包统计区


传输名字解析

网络名字解析

MAC地址解析


抓包过滤器设置

类型Type:host net port

方向Dir:src、dst

协议Proto:ether、ip、tcp、udp、http、ftp

逻辑运算符&& || !


过滤MAC地址 ether src/host

过滤IP地址 src/dst host

过滤端口 src/dst port

过滤协议  arp icmp


显示过滤器(使用等于号)

逻辑操作符 and or not xor(有且仅有一个条件被满足)

IP地址 ip.addr ip.src ip.dst

端口过滤 tcp.port tcp.srcport tcp.dstport

过滤协议 arp icmp


数据流追踪

功能 TCP、UDP、SSL流重组并呈现

红色部分发起端信息

蓝色部分接收端信息

专家信息

对数据包特定状态进行警告说明

错误 警告 注意 对话

协议分层统计

包,字节,速率

IO图表

对网络中的吞吐流量进行实时图形显示

数据流图

将会话通信过程图形可视化出来


流追踪

专家信息

捕获文件属性

协议分级

对话、端点

分组长度

I/O图表

流量图


TCP/IP协议栈

路由协议

交换协议


DOD模型(链路层 网络层 传输层 应用层)


BASE前的数字表示网络的数据传输率
BASE指基带传输,即未经过调制,不能复用的传输,与其对应的BROAD指宽带传输(多用于有线电视网)
BASE后的字母或数字指的是传输介质,反应介质特点


以太网目的地址 以太网源地址 帧类型 硬件类型 协议类型 硬件地址长度 协议地址长度 操作代码 发送端以太网地址 发送端IP地址 目的以太网地址 目的IP地址


代理ARP(当局域网内部主机发起跨网段ARP请求时,出口路由器/网关将自身MAC地址回复该请求)

场景 没有路由功能的主机/有路由功能目的地指向本地出口

免费ARP(实现局域网内部地址冲突检测)

场景 IP地址修改 DHCP刚获取地址


ip dhcp pool 

network 192.168.1.0 /24

default-router 192.168.1.254

dns-server 8.8.8.8

lease 7


no ip add

ip add dhcp


逆向ARP

帧中继环境下,用于实现ip和DLCI地址的映射

show frame-relay map


反转ARP

无盘工作站通过RARP协议来获取IP地址(有ip地址后通过TFTP引导加载系统)


IP协议(面向无连接、不可靠传输,ip地址唯一性)

版本号  头部长度  服务类型(QoS有关)  16位总长度(最大65535)

16位标识(分片的重组)   3位标志(是否还有分片)    13位片偏移(分片的位置)

8位生存时间   8位协议   16位首部校验和

32位源ip

32位目的ip

选项

数据


show ip route ospf

show ip ospf nei

show run int f0/0


MAC地址每段链路改变 TTL改变 IP地址不变 检验和改变


接受者根据分片信息的ID值将不同分片信息分类除了最后一个分片MF位为0,其余分片MF1,看到MF为0的时候结束分片收集过程

fragment offset 偏移位

DF位不允许分片

ip mtu 1500

ping 3.3.3.3 size 200 repeat 1

ping 3.3.3.3 size 200 df-bit repeat 1  大小是200 而且不进行分片  只发一个包


ICMP 互联网控制信息协议,用于实现ip网络层及上层协议的连通性测试和差错报告

源发送者或者上层程序根据返回ICMP错误信息,执行下一步动作

8位类型 8为代码 16位检验和


类型值为三,就是不可达


ping 

回显请求 echo request

回显应答 echo reply



traceroute  (UDP包)

ICMP生存时间超时  11|0

端口不可达  3|3




traceroute 3.3.3.3 probes 1 每一跳探测一个包


ICMP不可达

主机不可达  3|1



端口不可达 3|3

UDP:ICMP端口不可达

copy tftp: flash:


TCP:RST 重置服务

telnet 3.3.3.3 80



禁止不可达  3|13

防火墙或者访问控制列表

access-list 1 deny any

int f0/0

ip access-group 1 in



分片不可达

端口的 ip mtu 100

ping 3.3.3.3 size 200

看到分片包


进行不可分片的设置

ping 3.3.3.3 df-bit 



ICMP重定向 分组 5|1

当本地收到IP数据包目的地的下一跳IP地址与源发送者处于同一网段时,则告知源发送者将路哟偶重定向到邻居设备



IP记录路由

通过IP路由选项,可以将沿途设备的出接口IP地址都记录下来,最多支持九个IP地址(因为option内长度为40个字节,IP地址为4个字节,所以最多9个)

ping 拓展ping


IP源站路由 通过IP源站选项,可以在源发送者指定特定路径(将路径放入IP 头部选项)来进行数据转发

严格源站路由

严格的源路由选择,发送端指明ip数据包所必须采用的确切路由,如果一个路由器发现源路由所指定的下一个路由器不在其直接连接的网络上,那么它就返回一个“源站路由失败”的ICMP差错报文

宽松源站路由

宽松的源站路由,发送端指明了一个数据报经过的IP地址清单,但是数据报在清单上指明的任意两个地址之间可以通过其他路由器


UDP 用户数据包协议,提供面向无连接的不可靠服务,在传输层

特征 不可靠,无连接(无协商),不分片,速度快,实时性(语音流视频流)

DHCP DNS TFTP QICQ

UDP数据包,首部8字节


DHCP 为网络设备提供动态IP地址信息,包括IP地址 网关 DNS

67端口服务端

68端口客户端

 discover  offer  request   ack   release decline nak inform

首先广播发送分组,在接受到发现分组的服务器会从地址池拿出一个IP返回DHCP分组提供给客户端,并告知服务器能提供地址

若同时有几个DHCP服务器时,优先选择最快到达本地的提供OFFER分组并发起请求


DHCP地址请求


ip dhcp pool PINGINGLAB

network 12.1.1.0 /24

default-router 12.1.1.2

dns-server 114.114.114.114

lease 7


request (option 50 54)

offer 与 ack 几乎没有区别 强调作用

全网地址 0.0.0.0 广播包解决地址冲突(四个包完成之前是未必拿到这个地址的,有可能是缓存的过程,结合免费ARP的内容)


地址续约(更新)使用request报文续约

通过发送DHCP Request向DHCP服务器重新续约IP地址

renewal 在50%租用期

rebinding 在87.5%租用期



地址释放

客户端通过DHCP Release 向DHCP服务器释放其所用的地址

三个单播释放包

在用户模式下面

release dhcp f0/0

renew dhcp f0/0


地址冲突

dhcp decline 拒绝包


ICMP是服务器防冲突机制,免费ARP是客户端防止冲突机制


loopback 口同网段的状况下


DHCP中继代理

当跨网段执行DHCP请求时通过中继代理,将请求信息以单播方式转发给DHCP服务器

int f0/0

ip helper-address 23.1.1.3


DNS 域名系统 用于互联网上提供域名到IP的解析服务

端口号53 DNS服务器通信采用TCP 用户到服务器采用UDP


域名结构(13个根)

域名查询(正向查询,反向查询)单播请求,单播回复


查看域名


DNS 客户端

ip domain-lookup 开启域名查询如果本地没有,则向其他DNS服务器查询

ip name-server 192.168.1.2 定义DNS服务器,有定义为单播,无定义为广播

ping www.baidu.com 访问域名


DNS服务器

ip dns server 开启DNS服务

ip host www,baidu,com 5.5.5.5 绑定域名和IP映射




多服务器环境(采用主备服务器)


递归查询 告诉我最终答案的

迭代查询 给出另一个地址来再次查找

电脑到服务器 递归  服务器之间 迭代

在服务器那里在弄一个ip dns-server 192.168.2.4 和 ip domain lookup


区域传送

主备服务器同步DNS域名映射库

封装(头部 查询 回答 授权 额外)

基于三次握手  SOA


TFTP 简单文件传送协议,用于实现无盘系统引导,小文件传输,系统镜像升级引导

基于UDP(69端口)停止等待方式进行数据传输,超时重传机制切割成每块512字节方式传输

操作码  TFTP数据报

1=RRQ  文件名字段说明读写位于服务器上的文件,这个文件字段以0字节作为结束

模式字段是以ASCII码或者OCTET组合,以0字节结束

2=WRQ

3=DATA 块编码 + 数据 被读取时TFTP服务器返回一个块编号为1的数据分组,TFTP客户发送块编号为1的ACK,TFTP服务器随后发送块编号为2的数据

4=ACK

5=error 差错码,差错信息

为了实现多线程并发  传输过程服务器的端口会变大,不会再用69号端口

copy flash: tftp:


TCP 传输控制协议,面向连接的可靠传输服务,OSI七层模型

面向字节流的传输服务,通过MSS字段对数据进行分段传输

通过确认机制i,重传机制保证数据可靠传输

通过滑动窗口,拥塞比面等机制实现流量控制


MSS+头部数据=MTU

数据最大值          最大报文包

有TCP的情况下,不需要IP分片,IP分片是在UDP的情况下


SYN(SEQ Number 初始序列号ISN)-->SYN/ACK(SEQ ACK确认号==SEQ+1)-->ACK(ACK=SEQ+1)

初始序列号计算方式RFC 793 RFC 1948  序号每4毫秒加一,到了2的32次方之后回滚,根据哈希算法以源目IP,源目端口生成一个随机数值,ISN=M+F


后续数据交互过程序列号以初始序列列号为基础进行增加

防止网络中延迟的分组在以后又被传送,导致某个连接的一方对它作错误的解释

防止黑客进行TCP会话劫持,重放攻击等


TCP FIN--> TCP ACK -->TCP FIN-->TCP ACK

TCP是双向传输机制,一方的FIN只代表单方向的,不代表另一方的数据结束,另一方可能还需要发送数据


username admin privilege 15 password admin

line vty 0 15

login local



结合流量图进行观察分析


TCP状态机(从初始建立到后期关闭,需要状态机进行维持)

主动打开SYN_SENT主动打开   SYN_RCVD被动打开

ESTABLISHED

FIN_WAIT_1  CLOSE_WAIT

FIN_WAIT_2  LAST_ACK

TIME_WAIT  CLOSED


连接建立超时(SYN重传  SYN/ACK重传)

连接建立关闭

ip access-list extended TCP

deny tcp any any ack

permit ip any any

exit

int f0/0

ip access-group TCP in


超时重传机制

no ip unreachable


半关闭(TCP一方发送FIN位进行单方向会话关闭,另一方依然可以发数据给对方)

半打开(如果一方已经关闭或异常终止连接而另一方不知道)

同时打开

同时关闭


可靠传输机制(确认机制,重传机制)

通过序列号,确认号,分组长度等字段,接收方对发送放的数据进行实时的反馈

在不丢包的情况下,ACK(n+1)=Seq(n)+Len(n)

若返回ACK比数值要小则丢失,需要进行数据重传

发送方看seq和len,接受方看ack

真实环境发很多次,总有一次会匹配到,匹配到以上的都正常传输


重传机制

底层协议编程

1.发送方没有收到接收方的确认信息,发送方启动超时重传机制 (被动式)

windows重传5次,linux重传15次

RTT(round trip time)往返时间,记录数据从发出到收到确认所使用的时间

RTO(restransmission timeout)重传超时时间,数据丢失后一局RTO值来进行重传,一般RTO根据RTT来计算出来的

RFC 793   RFC6298/Jacobson 1988  Karn算法


R<--aR+(1-a)M RTO=Rb

M为当前测试出来的往返时间 b推荐为2

R为以前测试出来的往返时间 RTO=2RTT

a为一个值为0.9的平滑因子

当RTT全局变得很大,比较难得到网络较好的RTO值


Err=M-A A<--A+gErr(g=0.125)RTO=A+4D

M为当前测试出来的往返间隔 D<--D+h(|Err|-D)(h=0.25)超时重传时间由平滑的RTT和RTT的方差来决定

A为平滑的RTT(均值的估计器) A为平滑的RTT,D为平滑的均值偏差

Err是刚得到的测量结果与当前的RTT估计器的差

往返时间变化起伏较大的情况下,能提供更好的网络状况描述


GNS搭建SSH  暂停服务器即可

ip domain-name cisco.com

crypto key gernate rsa

username admin privilege 15 password admin

line vty 0 15

login local


ssh -l admin 12.1.1.2

tcp.analysis.rto  指数退避  


经典重传,当接受方检测到有数据包没有收到时候,则会向发送方返回ACK    (telnet ssh)

发送方从丢失序号开始重新发送所有的数据包

tcp dup-ack TCP重复ACK    tcp retransmission TCP重传包


2.接收方本身检测到数据包丢失了,接收方主动返回ACK信息告知接收方,要求重传,快速重传/选择性重传机制 (主动式)  (http  https)

快速重传:当接收方检测到有数据包没收到,则会向发送方返回三个重复的ACK 告知某个序号的数据包需要重传

发送方从丢失序号开始重新发送之后的所有的数据包

快速选择重传:发送方仅仅需要重新发送丢失序号的数据包,提高数据恢复的效率

选择性ACK SACK

有SLE与SRE 的选项,表示缓存的窗口选项


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值