欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

学习进程⑦

程序员文章站 2024-03-12 14:58:14
...

简述osi七层模型和TCP/IP五层模型

OSI七层模型

应用层
OSI 参考模型中最靠近用户的一层,是为计算用户提供应用接口,也为用户直接提供网络服务。常见的应用层网络服务协议有:HTTP,HTTPS,FTP,POP3,SMTP等
表示层
表示提供各种用于应用层数据编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。如果必要该层可提供一种标准表示形式,用于将计算机内部的多种数据格式转换成通信中采用的标准表示形式。数据压缩和加密也是表示层可提供的转换功能之一。
会话层
会话层负载建立、管理和终止表示层实体之间的通信会话。该层的通信由不同设备中的应用程序之间的服务请求和响应组成。
传输层
传输层建立了主机端到端的链接,传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。该层向高层屏蔽了下层数据通信的细节,是高层用户看到的只是在两个传输实体建的一个主机到主机的、可由用户控制和设定、可靠的数据通路。通常说的TCP UDP就是在这层。端口号即是这里的“端”。
网络层
本层通过IP寻址来建立两点之间的连接,为源端的运输层来的分组,选择合适的路由和交换节点,正确无误地按照地址传送给目的端的运输层。就是通常说的ip层。这一层就是我们经常说的IP协议层。IP协议是Internet的基础。
数据链路层
将比特组合成字节,再将字节组成帧,使用链路层地址(以太网mac地址)来访问介质,并进行差错检测。
数据链路层又分为2个子层:逻辑链路控制子层(LLC)和媒体访问控制子层(MAC)。
物理层
实际最终信号传输是通过物理层实现的。通过物理介质传输比特流。规定电平、速度和电缆针脚。常用设备有(各种物理设备)集线器、中继器、调制解调器、网线、双绞线、同轴电缆。这些都是物理层的传输介质。

TCP/IP五层模型
学习进程⑦

总结描述TCP三次握手四次挥手

建立起一个TCP连接需要经过"三次握手":

第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态; 
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去
学习进程⑦
断开连接时服务器和客户端均可以主动发起断开TCP连接的请求,断开过程需要经过"四次挥手"
由于TCP连接是全双工的,因此每个方向都必须单独进行关闭。这个原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向 的连接。收到一个 FIN只意味着这一方向上没有数据流动,一个TCP连接在收到一个FIN后仍能发送数据。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。

(1)主动端A发送一个FIN,用来关闭客户A到被动端B的数据传送
(2)被动端B收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。
(3)被动端B关闭与主动端A的连接,发送一个FIN给主动端A。
(4)主动端A发回ACK报文确认,并将确认序号设置为收到序号加1。

学习进程⑦

描述TCP和UDP区别

1.基于连接与无连接;
2.对系统资源的要求(TCP较多,UDP少);
3.UDP程序结构较简单;
4.流模式与数据报模式 ;
5.TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证。

总结ip分类以及每个分类可以分配的IP数量

网络中的每一个主机或路由器至少有一个ip地址;
在Internet中不允许有两个设备具有同样的IP地址;
IP地址采用分层结构;
IP地址是由网络号(net ID)与主机号(host ID)两部分组成的。
IP地址长度为32位,点分十进制(dotted decimal)地址;
采用x.x.x.x的格式来表示,每个x为8位,每个x的值为0~255(例如 202.113.29.16);
根据不同的取值范围,IP地址可以分为五类;
IP地址中的前5位用于标识IP地址的类别:
A类地址的第一位为0;
B类地址的前两位为10;
C类地址的前三位为110;
D类地址的前四位为1110;
E类地址的前五位为11110。
IP地址根据网络号和主机号来分,分为A、B、C三类及特殊地址D、E。全0和全1的都保留不用

A类:
(1.0.0.0-126.0.0.0)
第一个字节为网络号,后三个字节为主机号。该类IP地址的最前面为“0”,所以地址的网络号取值于1~126之间。一般用于大型网络。
定义:第1字节为网络地址,其它3个字节为主机地址
范围:1.0.0.1-126.255.255.254
数量:允许有126个网段,每个网段允许有16777214台主机
子网掩码:255.0.0.0
私有地址:10.X.X.X是私有地址(所谓的私有地址就是在互联网上不使用,而被用在局域网络中的地址),范围10.0.0.1-10.255.255.254
保留地址:127.X.X.X是保留地址,也是本机地址,等效于localhost或本机IP。一般用于测试使用。例如:ping 127.0.0.1来测试本机TCP/IP是否正常。

B类(128.0.0.0-191.255.0.0)
前两个字节为网络号,后两个字节为主机号。该类IP地址的最前面为“10”,所以地址的网络号取值于128~191之间。一般用于中等规模网络。
定义:第1字节和第2字节为网络地址,其它2个字节为主机地址
范围:128.0.0.1-191.255.255.254
数量:允许有16384个网段,每个网段允许有65534台主机
子网掩码:255.255.0.0
私有地址:172.16.0.0 - 172.31.255.255是私有地址
保留地址:169.254.X.X是保留地址。如果IP地址是自动获取IP地址,而你在网络上又没有找到可用的DHCP服务器。就会得到其中一个IP

C类
(192.0.0.0-223.255.255.0)
前三个字节为网络号,最后一个字节为主机号。该类IP地址的最前面为“110”,所以地址的网络号取值于192~223之间。一般用于小型网络。
定义:第1字节、第2字节和第3个字节为网络地址,第4个个字节为主机地址。另外第1个字节的前三位固定为110
范围:192.0.0.1 - 223.255.255.254
数量:允许有2097152个网段,每个网段允许有254台主机
子网掩码:255.255.255.0
私有地址:192.168.X.X是私有地址。(192.168.0.0 - 192.168.255.255)

D类:
是多播地址。该类IP地址的最前面为“1110”,所以地址的网络号取值于224~239之间。一般用于多路广播用户。
定义:不分网络地址和主机地址,它的第1个字节的前四位固定为1110
范围:224.0.0.1 - 239.255.255.254

E类:
是保留地址。该类IP地址的最前面为“1111”,所以地址的网络号取值于240~255之间。
定义:不分网络地址和主机地址,它的第1个字节的前五位固定为11110
范围:240.0.0.1 - 255.255.255.254

总结IP配置方法

1、自动获取IP地址

虚拟机使用桥接模式,相当于连接到物理机的网络里,物理机网络有DHCP服务器自动分配IP地址。
#dhclient 自动获取ip地址命令
#ifconfig 查询系统里网卡信息,ip地址、MAC地址
分配到ip地址后,用物理机进行ping ip地址,检测是否ping通。

2、手动设置ip地址

如果虚拟机不能自动获取IP,只能手动配置,配置方法如下: 
输入命令
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
编辑网卡的配置文件
输入上述命令后回车,打开配置文件,使用方向键移动光标到最后一行,按字母键“O”,进入编辑模式,输入以下内容: 
IPADDR=192.168.4.10
NETMASK=255.255.255.0
GATEWAY=192.168.4.1
另外光标移动到”ONBOOT=no”这一行,更改为ONBOOT=yes
“BOOTPROTO=dhcp”,更改为BOOTPROTO=none
完成后,按一下键盘左上角ESC键,输入:wq 在屏幕的左下方可以看到,输入回车保存配置文件。
之后需要重启一下网络服务,命令为
#service network restart
网络重启后,eth0的ip就生效了,使用命令#ifconfigeth0 查看
接下来检测配置的IP是否可以ping通,在物理机使用快捷键WINDOWS+R 打开运行框,输入命令cmd,输入ping 192.168.4.10 进行检测,ping通说明IP配置正确。
备注:我所在的物理机网段为192.168.4.0 网段。大家做实验的时候根据自己的环境进行设定,保持虚拟机和物理机在同一网段即可。

3、使用NAT模式

虚拟机网络连接使用NAT模式,物理机网络连接使用Vmnet8。
虚拟机设置里面——网络适配器,网络连接选择NAT模式。
虚拟机菜单栏—编辑—虚拟网络编辑器,选择Vmnet8 NAT模式, 
1.在最下面子网设置ip为192.168.20.0 子网掩码255.255.255.0
2.NAT设置里面网关IP为192.168.20.2
3.使用本地DHCP服务将IP地址分配给虚拟机不勾选
设置完成后点击应用退出。
wKiom1RggrzBd5TtAAQn4YGAcIE553.jpg
物理机网络连接VMNet8 手动设置ip地址 192.168.20.1 子网掩码255.255.255.0
网关和DNS地址为192.168.20.2(即虚拟机NAT的网关地址)
编辑linux网卡eth0的配置文件
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
输入上述命令后回车,打开配置文件,使用方向键移动光标到最后一行,按字母键“O”,进入编辑模式,输入以下内容: 
IPADDR=192.168.20.3
NETMASK=255.255.255.0
GATEWAY=192.168.20.2
另外光标移动到”ONBOOT=no”这一行,更改为ONBOOT=yes
“BOOTPROTO=dhcp”,更改为BOOTPROTO=none
完成后,按一下键盘左上角ESC键,输入:wq 在屏幕的左下方可以看到,输入回车保存配置文件。
设置DNS地址,运行命令
#vi /etc/resolv.conf
光标移动到空行,按“O”键,输入 nameserver 192.168.20.2 退出按ESC键,输入:wq 回车保存配置文件。
重启网络服务
 #service network restart
重启之后
#ifconfig
 查看配置的ip地址,物理机ping这个地址测试是否能通。