TCP/IP

============================================================================================
Http:
302响应码表示请使用返回结果的header中有一个Location:http://xxx.com的URL,浏览器使用该URL重定向。
304响应码表示请求的该资源在缓存中还可以使用,请使用缓存。
负载均衡:
http重定向实现
dns域名解析实现
反向代理
IP负载均衡:修改IP,也叫NAT
数据链路层负载均衡:修改MAC地址,也叫直接路由方式(DR)

============================================================================================
wireshark filter
过滤分两种捕捉过滤和显示过滤
捕捉过滤语法格式(BPF-berkeley packet filter):
原语==>表达式(操作符)表达式==>限定词+ ID 操作符 限定词+ ID
限定词:type--指定名字或数据(ID)代表的意义host,net,port
dir--指明传输方向src,dst
proto--限定所要匹配的协议ether,ip,tcp,udp,http,ftp

操作符:&&,||,!
ID:名字或数字,例如192.168.1.10,80
举例:dst host 192.168.1.10 && port 80
显示过滤语法格式:
常用形式
ip.dst==192.168.1.1
ip.src==192.168.1.1
ip.addr==192.168.1.1
tcp.port==80
http.request.uri contains "php"
http.request.uri matches "ht{2}p"
============================================================================================
1、web服务器对于get和post参数都会进行一次且只有一次的url decode
2、tracepath原理是将ttl从1开始依次加1的向目标ip发送ICMP,当ttl为0时没到目标ip,中间路由会返回响应ttl exceeded,通过此可得到通过多少路由数
3、ip由net_id和host_id组成
4、网段分级0(0~127)net_id占一个字节,10(128~191)net_id占二个字节,110(192~223)net_id占三个字节
5、默认A类网段子网掩码255.0.0.0,B类255.255.0.0,C类255.255.255.0
6、子网掩码全为1表示网段部分,全为0表示主机部分
7、host_id全为0表示network,host_id全为1表示broadcast
8、网段表示法:192.168.0.0(network)/255.255.255.0(netmask)或192.168.0.0/24
     路由表主要字段: [Destination]--目标的network, [Netmask]--目标的掩码, [Gateway]--网关  [Interface]--出口
     举例:
目标                        网关                  子网掩码           标志    跃点 引用 使用 接口
0.0.0.0              192.168.3.1              0.0.0.0              UG     0        0     0     eth0
192.168.3.0        0.0.0.0                255.255.255.0       U       1        0     0     eth0
(由目标的network和目标的子网掩码确定目标的网段,0.0.0.0表示任意,标识G表示走网关)如果在192.168.3.0/24的网段直接走eth0,其它任意的网段通过192.168.3.1的网关(即以太网层的目标mac为网关的mac)
9、一个数据包要发出去,先查看路由表有没有目标的网段配置,如果有通过它的配置网关或直接eth0,如果没有走默认网关,直接走eth0表示源和目标是同一网段,直接查arp可获目标mac,走网关表示非同一网段需将目标mac设为网关mac
10、端口扫描工具nmap 192.168.1.*
11、RSA 的公用密钥操作(加密和签名验证)要比私用密钥操作(解密和签名)快许多

============================================================================================
应用层
传输层(4层加减port)
网络层(3层加减ip,通过dsn将域名转为ip)
数据链路层(2层加减mac,通过arp协议先从本地arp缓存再通过第二层广播获取dst的ip对应的mac)
物理层(1层)
集线器:半双工,物理层,广播dst并通过MAC地址过滤
交换机:全双工,链路层,通过交换机cam表查询mac到端口映射转到指定端口
路由器:全双工,网络层,通过路由表查询ip到端口映射转到指定端口
广播:第二层广播地址(FF:FF:FF:FF:FF:FF),第三层广播地址为ip广播地址由子网掩码算出
组播:224.0.0.0~239.255.255.255

============================================================================================


============================================================================================
DNS
由于IP地址不方便人记忆,所以可以用有意义的字母代替(域名),这个映射关系就得放在一个公开的服务器上,便出现了DNS服务器
DNS服务器采用层级存储,有顶级域名,二级域名...
顶级域名目前有250多个,例如.com,.edu,.cn,.us,就两个维度一个是country一个是行业
它们的实现存储就是一棵树形,但顶级域名服务器(也叫权威域名服务器)做为树根的话,那根节点就有250多个,所以出现了根域名服务器
域名解析过程:例如解析search.google.com,连接上网络都会给分配一个本地域名服务器,发一个DNS解析请求之后,先到本地DNS服务器解析,如果没有相关域名的映射记录,
便会请求到root域名服务器,root根据顶级域名信息.com找到对应的顶级域名服务器,让顶级DNS服务器去做下一步解析,它根据google获取相应的二级DNS服务器,然后 二级DNS服务器根据search就找到相应的ip地址。


============================================================================================
三次握手与四次挥手
预备知识:
字段:
Seq序号:两端发送都有各自的Seq序号,自已的Seq是被对方加1的。
Ack序号:两端都在对方的Seq序号+1
标识符:URG紧急指针(urgent pointer)有效、ACK确认序号有效、PSH接收方应该尽快将这个报文交给应用层、
            RST重置连接、SYN发起一个新连接、FIN释放一个连接
三次握手过程:
1,client发送SYN即要创建一个从client到server的连接,并发送一个随机生成的client Seq,cleint状态进入SYN_SEND
2,server收到SYN后,发送ACK并发送SYN即为创建一个从server到client的连接,并发送一个随机生成的server Seq, 再将client seq加1发送,server的状态进入SYN_RVCD
3,client收到后发送ACK确认,并发送client Seq,和server Seq+1,最后client和server都进入ESTABLISHED状态

四次挥手:
client和server都可以主动发起关闭。因为是全双工的,所以两方都要关闭,需要四次交互
1,client发送FIN,即要关闭client到server的数据传输,client进入FIN_WAIT_1状态
2,server收到FIN后,发送一个ACK信号,server进入CLOSE_WAIT状态,client收到该信号后进入FIN_WAIT_2状态
3,server再发送FIN请求关闭从server到client的数据传输,并进入LAST_ACK状态
4,client收到该server的FIN信号后进入TIME_WAIT,并发送ACK,server状态变为CLOSED。



============================================================================================
理解OSI分层模型:
分层是为了减少系统复杂度,每层各司其职
网络的本质是端到端的通信,这个由ip协议来保证,
链路层协议是保证两台设备直连的通信,一条链路称为‘一跳’,一次端到端通信由多跳组成
IP层协议已完成端到端的通信,为何需Tcp协议?tcp为传输控制协议,即控制端到端的通信
IP协议设计为分组转发,两个基本功能,一是地址管理,二是路由选择

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================

============================================================================================
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值