wireshark 笔记
ip.src_host == 192.168.131.1 ip.dst_host == 192.165.13.1
筛选源ip地址 筛选目的ip
ip.src_host == 192.168.131.1 and ip.dst_host == 192.165.13.1
两个都要有 直接中间加个or
ip.src_host == 192.168.131.1 or ip.dst_host == 192.165.13.1
要么dst 要么src 直接中间加个or
ip.addr == 138.4.0.1
只要是这个ip地址的不管是dst 或者src都显示
ARP 协议
地址解析协议 是一个通过解析网络层地址来寻找数据链路层地址的网络传输协议
它在ipv4中及其重要 arp是通过mac网络地址来定位mac地址
将ip解析为mac
打开流量图
最上方的统计>流量图
ICMP协议
· 8 请求
0 响应
TCP协议
建立连接 会有三次握手包
[SYN] 确认 src
[SYN] 交换 dst
[ACK] ok src
ACK 请求确认
FIN 断开
断开连接 会有四次挥手包
第一次挥手包 [FIN , ACK] 服务端发送一个fin ack 表示自己没有数据要发送了 要断开连接 进入FIN_WAIT_1状态
第二次挥手包 [ACK] 客户端收到fin知道不会再有数据从服务端来了 发送ack进行确认 确认序号为 +1 客户端进入close_wait 状态
第三次挥手包 [FIN , ACK] 客户端发送fin+ack给对方 表示自己没有数据要发送回来了 进入last_ack状态 然后直接断开会话
第四次挥手包 [ACK] 服务端接受到客户端的fin信令后 进入timed_wait 状态 并发送 ack确认消息 等待一段时间 没有数据到来 就会认为对方收到了自法ack 然后 断开
HTTP协议 4个包
curl 一个用来请求的命令
curl -I www.baidu.com 请求百度的头部信息
head /http/1.1 发送head请求
ack ack确认
http/1.1 200 ok 返回刚刚请求的头部信息 200表示页面正常
ack 确认收到
fin 断开
什么是ttl值
ttl:数据报文的生存周期
默认的linux是 64 没经过一个路由器节点 ttl值减1 ttl为0时,说明目标地址不可达并返回 time to live exceeded
ttl的作用是为了防止ttl在公网中无限的转发
echo "1" > /proc/sys/net/ipv4/ip_default_ttl
设置ttl转发的值
ping 外网返回一个 time to live 表示你上不了网
判断目标和我们之间经过了多少个网络设备是根据返回我们的ttl值来判断的 因为我么发送的数据包是看不到的、
抓包icmp分析
通过修改ttl值再ping wireshark 抓包分析 src(返回的源IP) 是否变化 变化就证明到达了下一个节点
恢到 ttl 64
ping 通后根据返回的ttl值判断中间的节点
例如返回的ttl值为58 用给定的ttl 64-58=12也就是说有中间有12 个节点
Mtr 检测我们到达目标网络之间的所有网络设备的网络质量
检测到达xuegod.cn的所有 节点的通信质量
mtr xuegod.cn
抓包过滤器
Capture > option > enter a caputer fillter
过滤
dst 172.16.0.2 目的地址为172.16.0.2的
ether host 12:12:45:44:12:12 mac地址为 这个的
ether src host 12:12:45:44:12:12 过滤mac源地址为这个的
ether dst host 12:12:45:44:12:12 过滤mac目的地址为这个的
port 80 只抓取80端口的包
显示过滤器
ip.addr ==123.15.13.4
ip.src == ip
ip.dst == ip
ip.src == ip and ip.dst == ip
tcp.port == 80
tcp.srcport == 80
tcp.dstport == 80
tcp.flag.syn == 1
ip.src == ip and tcp.dstport == 80
ip.addr == ip and udp.port ==4000