两台主机如何进行通信 常见网络设备 OSI7层模型 封装与解封装
应用层: 用层协议:telnet(23),ssh(22)
TELNET:远程连接协议(http) FTP:上传下载协议(smtp) TFTP: 简单文件协议(无密码)(nfs) SNMP:简单网络管理协议(如:dhcp) DHCP:动态主机分配协议
应用层 主机要主机层 因特网层 网络接入层 应用层协议: >01.客户端主机发出广播信息,请求获取IP地址 >02.服务端从地址池里取出一个IP地址分配给客户端(192.168.1.1-192.168.1.250) >03.客户端返回确认信息。 >04.服务端从地址池把已经分配的地址从地址池中删除,避免被他人使用 >05.客户端能够在必定时间内使用分配的地址
主机层协议: TCP: 文件传输控制协议 属于面向链接的网络协议-----在线传输文件,可靠文件传输,传输效率低 UDP: 用户报文协议 属于无链接的网络协议----离线传输协议,效率高,传输数据不可靠
传输控制协议(TCP) | 用户数据协议(UDP) |
面向链接 |
无链接 |
可靠传输 | 不可靠传输 |
流量控制 | 尽力而为,尽力传递 |
使用TCP应用: web浏览器,电子邮件 |
UDP应用: 域名系统(DNS);视屏流; IP语音(VoIP) |
ACK表示控制字段,确认数据是否接收,控制字段1为有效,为0表示失效
SYN表示请求创建链接字段 ,控制字段1为有效,为0表示失效
FIN表示断开链接,控制字段1为有效,为0表示失效web
主动: SYN请求创建链接,syn=1 seq=100
被动方: ACK发出确认号,ack=100,syn=1,ACK=101
SYN确认ack1:ack=101syn=1,seq=101
被动方:确认
SYN确认ack1: syn=1,seq=102
ACK确认号,ack=102,syn=1,ACK=101
确认ack-1确认seq=102浏览器
tcpdump -i eth0 -nn -X -c 5 "port 53" ##抓取53端口的包 tcpdump -i eth0 -nn -X -c 5 "port 53" -w /tmp/oldboy.pkg ##保存到文件 -n : 转换域名转为IP -X : 输出包的头部数据,会以16进制和ASCII两种方式同时输出 -XX: 输出包的头部数据,会以16进制和ASCII两种方式同时输出,更详细。
服务器启动时建立了一个 soket条目 对应了:客户端tcp IP地址 网关:随机端口 源协议: 源IP地址 源端口号 目标地址: 目标端口 tcp 10.0.0.1 0 :22 10.0.0.1 : 22
11种状态集图片解释: 服务器
网络报文结构:ssh
Source Port Number (16 bits) 利用随机端口号 |
Destination Port Number (16 bits) 80 22 23 |
||||||||||||||||||||||||||||||
0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
Sequence Number(重点) (32 bits) |
|||||||||||||||||||||||||||||||
4 | 5 | 6 | 7 | ||||||||||||||||||||||||||||
Acknowledgement Number(重点) (32 bits) |
|||||||||||||||||||||||||||||||
8 | 9 | 10 | 11 | ||||||||||||||||||||||||||||
Header Length (4 bits) |
Reserved (6 bits) |
URG | ACK | PSH | RST | SYN | FIN | Windows Size (16 bits) |
|||||||||||||||||||||||
12 | 13 | 14 | 15 | ||||||||||||||||||||||||||||
TCP Checksum (16 bits) |
Urgent Pointer (16 bits) |
||||||||||||||||||||||||||||||
16 | 17 | 18 | 19 | ||||||||||||||||||||||||||||
Options (if any,variable length,padded with 0's) |
|||||||||||||||||||||||||||||||
20 | 21 | 22 | 23 | ||||||||||||||||||||||||||||
Data (if any) |
|||||||||||||||||||||||||||||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |