Q1、简述osi七层模型和TCP/IP五层模型
OSI七层模型 | ||
---|---|---|
7、应用层 | 网络进程访问应用层:为应用程序进程提供网络服务,提供用户身份验证 | 针对特定应用的协议 |
6、表示层 | 数据表示:确保接收系统可以读出该数据,格式化数据,构建数据,协商应用层的数据传输语法,提供加密 | 设备固有数据格式和网络标准数据格式的转换 |
5、会话层 | 主机间通信:建立、管理和终止在应用程序之间的会话 | 通信管理,负责建立和断开通信连接 |
4、传输层 | 传输问题:确保数据传输的可靠性,建立维护和终止虚拟电路,通过错误检测和恢复,信息流控制来保障可靠性 | 管理两个节点之间的数据传输,负责可靠传输 |
3、网络层 | 数据传输:路由数据包,选择传递数据的最佳路径,逻辑寻址和路径选择 | 地址管理与路由选择 |
2、数据链路层 | 访问介质;定义如何格式化数据以便进行传输以及如何控制对网络的访问,支持错误检测 | 互连设备之间传送和识别数据帧 |
1、物理层 | 二进制传输:为启动、维护以及关闭物理链路定义了电气规范、机械规范、过程规范和功能规范 | 比特流与电子信号之间转换 |
tcp/ip五层协议 | |
---|---|
5、应用层 | 为应用程序进程提供网络服务,提供用户身份验证 |
4、传输层 | 负责主机之间通讯,两种协议:tcp和udp |
3、internet层 | 路由数据包,选择传递数据的最佳路径,逻辑寻址和路径选择 |
2、数据链路层 | 传输有地址的帧以及错误检查功能 |
1、物理层 | 比特流电子信号互相转换 |
Q2、总结描述TCP三次握手四次挥手
TCP三次握手(建立连接)
-
客户端发起请求(第一次握手):SYN=1 {请求通讯与服务端通讯,其他位(URG,ACK,PSH,RST,FIN)为0},seq=x(数据编号)
-
服务端返回请求(第二次握手):SYN=1(请求通讯与客户端通讯),ACK=1(回应客户端SYN),seq=y(发送数据), ack=x+1(返回数据已收到)
-
客户端确认返回(第三次握手):ACK=1(回应服务端SYN),seq=x+1(接收到数据),ack=y+1(回应已接到到数据)
-
总结:客户端请求通讯,发送数据编号给服务端——>服务端接到请求后回应客户端已收到数据,并返回一个新的数据编号给客户端——>客户端接收到服务器反馈后,回应已收到数据,并建立连接返回一个数据编号给服务端,让服务器以后通讯就用这回应的编号。
TCP四次挥手(断开连接)
- 客户端发起(第一次挥手):FIN=1,seq=u
- 服务端接收返回(第二次挥手):ACK=1,seq=v,ACK=u+1
- 服务端发起(第三次挥手):FIN=1,ACK=1,seq=w,ack=u+1
- 客户端接收返回(第四次挥手):ACK=1,seq=u+1,ack=w+1
- 总结:客户端发起断开请求(进入fin-wait-1状态)——>服务器返回接收到请求,并不会立即断开(服务器进入close-wait状态,客户端进入fin-wait-2状态)——>服务器把数据全部发送完毕后给客户端发断开请求——>客户端接收到后(进入time-wait状态,1分钟后断开)回应服务器——>服务器接收到后断开连接
Q3、描述TCP和UDP区别
1、tcp需要建立连接,udp不需要
2、tcp传输数据,无差错,无丢失,不重复,且按顺序发送接收。udp只管发,不管对方能否收到
3、tcp传输效率比udp低
4、tcp支持点对点、一对一连接,udp支持一对一,一对多
5、tcp是流模式,udp是数据报模式
6、tcp比udp更耗资源
Q4、总结ip分类以及每个分类可以分配的IP数量
类型 | IP/MASK | ip个数 |
---|---|---|
A类 | 10.0.0.0/8 | 2^24-2=16777214 |
B类 | 172.16.0.0/16 | 2^16-2=65534 |
C类 | 192.168.0.0/24 | 2^8-2=254 |
Q5、总结IP配置方法
1、临时配置IP
#方法1:
[root@centos7 ~]# ifconfig eth1 1.1.1.1/24
[root@centos7 ~]# ifconfig eth1
eth1: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500
inet 1.1.1.1 netmask 255.255.255.0 broadcast 1.1.1.255
ether 00:0c:29:2d:71:c2 txqueuelen 1000 (Ethernet)
RX packets 1404 bytes 137087 (133.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 41 bytes 6130 (5.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@centos7 ~]# ifconfig eth1:123 #子接口配置IP
eth1:123: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500
inet 2.2.2.2 netmask 255.255.255.0 broadcast 2.2.2.255
ether 00:0c:29:2d:71:c2 txqueuelen 1000 (Ethernet)
[root@centos7 ~]# ifconfig eth1 0.0.0.0 #清除IP
[root@centos7 ~]# ifconfig eth1
eth1: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500
ether 00:0c:29:2d:71:c2 txqueuelen 1000 (Ethernet)
RX packets 1407 bytes 137363 (134.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 55 bytes 7886 (7.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
#方法2:
[root@centos7 ~]# ip address add 1.1.1.1/24 dev eth1
[root@centos7 ~]# ifconfig eth1
eth1: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500
inet 1.1.1.1 netmask 255.255.255.0 broadcast 0.0.0.0
ether 00:0c:29:2d:71:c2 txqueuelen 1000 (Ethernet)
RX packets 1413 bytes 137915 (134.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 69 bytes 10139 (9.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@centos7 ~]# ip addr del 1.1.1.1/24 dev eth1
[root@centos7 ~]# ifconfig eth1
eth1: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500
ether 00:0c:29:2d:71:c2 txqueuelen 1000 (Ethernet)
RX packets 1416 bytes 138191 (134.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 70 bytes 10199 (9.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
2、永久配置IP
#命令方式:
[root@centos7 ~]# nmcli connection add type ethernet con-name eth1 ifname eth1 ipv4.method manual ipv4.addresses 3.3.3.3/24
Connection 'eth1' (5ecfa6ba-a561-4a7c-9c1c-4685bcf325e1) successfully added.
[root@centos7 ~]# ifconfig eth1
eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 3.3.3.3 netmask 255.255.255.0 broadcast 3.3.3.255
inet6 fe80::2b32:2817:2a28:463c prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:2d:71:c2 txqueuelen 1000 (Ethernet)
RX packets 1792 bytes 174110 (170.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 96 bytes 14214 (13.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
#配置文件方式:
[root@centos7 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
BOOTPROTO=none
IPADDR=4.4.4.4
PREFIX=24
NAME=eth1
DEVICE=eth1
ONBOOT=yes
[root@centos7 ~]# nmcli connection down eth1 ; nmcli connection up eth1
[root@centos7 ~]# ifconfig eth1
eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 4.4.4.4 netmask 255.255.255.0 broadcast 4.4.4.255
inet6 fe80::20c:29ff:fe2d:71c2 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:2d:71:c2 txqueuelen 1000 (Ethernet)
RX packets 1820 bytes 176837 (172.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 153 bytes 22395 (21.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
网友评论