1. 以太网协议
协议格式
-
48位源端-对端mac地址:识别指定相邻设备 · mac地址:uint_t mac[6]-- 网卡的物理硬件地址-- 出厂时设定 -
16位数据类型:用于数据分用时上层解析协议的选择 -
32位数据帧尾:校验和进行差错校验… 如何获取相邻指定设备的MAC地址:ARP协议
- 介于网络层与链路层之间的协议-- 通过IP地址获取MAC地址
- 在局域网广播ARP请求(smac+sip+0+dip)(以太网帧中的对端mac地址全为1-- 广播地址)
- 相邻设备收到ARP请求后,检测目的IP地址是否与自己符合,不符合则直接丢弃,符合则组织ARP应答,将自己MAC地址填充进行回复
- 两端都会将mac-ip的映射关系保存一段时间
- arp局域网欺骗攻击
MTU
- 链路层限制的最大传输单元-- 以太网默认1500字节
- MSS:最大数据段大小:MTU-IP最小报头长度-TCP最小报头长度
- tcp:mtu=1500;则mss=1460;
- udp:mtu=1500,则mss=1472;
- mtu对于tcp传输的影响:
· tcp传输三次握手阶段会协商mss,双方取较小的一方的mss作为最大数据段大小进行传输,每次从发送缓冲区中取出不大于mss大小的数据封装报头进行传输 · 因此,tcp在传输层会自动进行数据分段,不会在网络层进行数据分片 - mtu对udp传输的影响:
· udp没有mss协商,只要数据段大小小于64k-28就可以传输,但是若大于mtu大小,则在网络层会进行数据分片 · 而分片在对端会进行分片重组,一旦一个分片出问题整个报文都会被丢弃(udp不保证可靠传输,丢弃就没了) · 因此,分片越多,传输出问题的几率就越高。 · 使用udp传输,最好在上层分包时就计算mss大小分包,尽量减少分片概率。
DNS
- domain name system 域名系统
- 域名:是一个便于记忆的字符串,是一个服务器的别名,访问服务器时通过解析得到服务器的IP地址进行访问
- 一个域名服务器支撑不了所有人的访问,因此采用分布式存储,将域名信息分散存储到世界各地
- 服务器划分
- 域名的划分:
· 顶级域名:.com/ .org/ .gov… .cn/ .en/ .jp · 二级域名:.baidu.com, qq.com · 三级域名:.zhidao.baidu.com - 域名的解析流程
- 浏览器中输入url,回车后都发生了什么?
· 域名解析–>搭建tcp客户端–>组织http请求–>发送请求–>服务器收到请求进行解析–>业务处理–>组织http响应–>等待回复,解析http响应–>根据content-type解析处理正文
2. icmp协议
- 通常用于进行网络探测
- ping工具使用的就是icmp协议
- telnet使用的23端口,ssh-22端口,ping没有使用端口
3. NAT/NAPT
- 网络地址转换技术
- 用于组建私网,私网中的主机对外通信时,部署于网关设备上的NAT服务进行源端地址转换(建立映射关系),然后进行数据转发
- 私网中的主机使用同一个对外公网地址上网,节省公网地址的使用。
4. 代理服务
- vpn翻墙
- nat是一个服务,部署在网关设备上,工作在网络层进行地址转换
- 代理是一个应用,可以部署在任意设备上,工作在应用层
|