1网络协议模型
1.1【OSI】协议模型
1.1.1应用层
实际发送的数据
应用层:
HTTP 超文本传输协议
HTTPS
FTP 文件传输协议
TFTP 简单文本传输协议
SMTP 邮件传输协议
MQTT
TELNET
..
1.1.2表示层
发送的数据是否加密
1.1.3会话层
是否建立会话连接
1.1.4传输层
数据传输的方式(数据报、流式)
UDP 用户数据报协议
特点:
1.实现机制简单
2.资源开销小
3.不安全不可靠
TCP 传输控制协议
特点:
1.实现机制复杂
2.资源开销大
3.安全可靠
1.1.5网络层
数据的路由(如何从一个局域网到达另一个局域网) IP地址
网络层:
IPv4
IP地址:唯一标识网络中一台主机的标号
IP地址:网络位 + 主机位
子网掩码:用来标识IP地址的网络位和主机位
子网掩码是1的部分表示IP地址的网络位
子网掩码是0的部分表示IP地址的主机位
网段号:网络位不变,主机位全为0,表示网段号
广播地址:网络位不变,主机位全为1,表示广播地址
IP地址类型:
A类
1.0.0.0 - 126.255.255.255
子网掩码:255.0.0.0
管理超大规模网络
10.0.0.0 - 10.255.255.255
B类
128.0.0.0 - 191.255.255.255
子网掩码:255.255.0.0
管理大中规模型网络
172.16.0.0 - 172.31.255.255
C类
192.0.0.0 - 223.255.255.255
子网掩码:255.255.255.0
管理中小规模型网络
192.168.0.0 - 192.168.255.255
D类
224.0.0.0 - 239.0.0.0
用于组播
E类
240.0.0.0 - 255.255.255.255
用于实验
1.1.6数据链路层
局域网下如何通信
1.1.7物理层
物理介质的连接
1.2【TCP/IP】协议模型
1.2.1应用层
传输的数据
1.2.2传输层
传输的方式
1.2.3网络层
数据如何从一台主机到达另一台主机
1.2.4网络接口层
物理介质的连接
2主机网络配置
step(1):修改虚拟机到桥接模式
点击"虚拟机"
点击"设置"
点击"网络适配器"
选择"桥接模式"
点击"确定"
step(2):将网卡桥接到无线网卡
点击"编辑"
点击"虚拟网络编辑器"
点击"更改设置"
step(3):在Ubuntu中重启网络服务
sudo /etc/init.d/networking restart
step(4):查看ip信息
linux终端:【ifconfig】
windows:【ipconfig】
3【UDP】通信
1.【UDP】通信建立的流程:
发端:【socket】 -> 【sendto】 -> 【close】
收端:【socket】 -> 【bind】 -> 【recvfrom】 -> 【close】
2.【UDP】需要注意的细节点:
(1)UDP是无连接,发端退出,收端没有任何影响
(2)UDP发送数据上限,最好不要超过1500个字节
(3)UDP是不安全不可靠的,连续且快速的传输数据容易产生数据丢失
3.【UDP】包头长度问题:
UDP包头长度:8个字节
源端口号(2个字节)
目的端口号(2个字节)
数据包长度(2个字节)
校验和(2个字节)
4【wireshark】抓包工具
1.功能:
(1)用于网络通信收发端的问题排查
2.操作流程:
1.sudo wireshark
打开wireshark抓包工具
2.选择抓取数据包的网卡
any
3.执行通信的代码
4.停止通信
5.设定过滤条件
【ip.addr】 == 【IP地址】
【udp.port】 == 【端口】