三次握手详解和静态路由实验

1.TCP三次握手详解。

TCP传输控制协议
面向连接的可靠传输协议
面向连接:三次握手 四次断开
在这里插入图片描述
SYN 同步序列号请求
Ctl标志位
序列号—记录发送的次数—不同的厂商序列号不一样
Ack 确认
Ack=seq+1

2.1 TCP建立连接为什么需要三次握手

举例:已失效的连接请求报文段

  1. client发送了第一个连接的请求报文,但是由于网络不好,这个请求没有立即到达服务端,而是在某个网络节点中滞留了,直到某个时间才到达server。
    本来这已经是一个失效的报文,但是server端接收到这个请求报文后,还是会想client发出确认的报文,表示同意连接。
  2. 假如不采用三次握手,那么只要server发出确认,新的建立就连接了,但其实这个请求是失效的请求,client是不会理睬server的确认信息,也不会向服务端发送确认的请求。但是server认为新的连接已经建立起来了,并一直等待client发来数据,这样,server的很多资源就没白白浪费掉了。
  3. 采用三次握手就是为了防止这种情况的发生,server会因为收不到确认的报文,就知道client并没有建立连接。这就是三次握手的作用。

2.2握手为什么需要三次?

解释:

  1. 发起连接方发出SYN,并收到ACK,这就是两次网络传输了。
  2. 同样被连接方也发出SYN,且等待对方回复,这也是两次网络传输。
  3. 加起来难道不是四次吗?实际上被连接方将对连接方 SYN(1) 的回复和自己 SYN(1) 的请求合并了,所以建立一个 TCP 连接最少只需要经过三次网络传输。

四次断开
在这里插入图片描述

2.3为什么需要4次断开?

解释2:
为了确保数据能够完成传输。

  1. 关闭连接时,当收到对方的FIN报文通知时,它仅仅表示对方没有数据发送给你了;但未必你所有的数据都全部发送给对方了。所以你未必会马上关闭SOCKET,也即你可能还需要发送一些数据给对方之后,再发送FIN报文给对方来表示你同意现在可以关闭连接了,所以它这里的ACK报文和FIN报文多数情况下都是分开发送的。
  2. 可能有人会有疑问,tcp我握手的时候为何ACK(确认)和SYN(建立连接)是一起发送。挥手的时候为什么是分开的时候发送呢?
  3. 因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中ACK报文是用来应答的,SYN报文是用来同步的。
  4. 但是关闭连接时,当Server端收到FIN报文时,很可能并不会立即关闭
    SOCKET,所以只能先回复一个ACK报文,告诉Client端,“你发的FIN报文我收到了”。只有等到我Server端所有的报文都发送完了,我才能发送FIN报文,因此不能一起发送。故需要四步挥手。

2.4断开为什么要四次?

解释:

  1. 发起断开方发出FIN,并收到ACK,这就是两次网络传输了。
  2. 同样被断开方也发出FIN,且等待对方回复,这也是两次网络传输。
  3. 同样的逻辑分析下来,实际上也可以仅经过三次传输就断开此次连接,但为什么我们会说四次挥手呢?这是因为如果在收到FIN时,彼时还有数据未传输完,则先回复关于
    FIN 的 ACK,告知对方我已经知道你要断开了。则等待传输完毕后,被断开方再发送 FIN,告知自己也已经可以断开连接。
  4. 但实际上完全可以是“三次挥手”,如果收到 FIN 时,已经没有数据要传输,则是“三次挥手”。

参考文章:https://blog.csdn.net/gx17864373822/article/details/105353832/

3.静态综合实验报告

在这里插入图片描述

实验要求

  1. r6为isp,接口ip地址均为公有地址;该设备只能配置ip地址,之后不能在对其进行任何配置
  2. r1-r5为局域网,私有ip地址192.168.1.0/24,请合理分配
  3. 所有路由器上环回,均代表连接用户的接口
  4. r3下的两台pc通过dhcp自动获取ip地址
  5. 选路最佳,路由表尽量小,避免环路
  6. r1-r5均可访问r6的环回
  7. r6 telnet r5的 公有ip地址时,实际登录到r1上
  8. or4与r5正常通过1000兆链路,故障时通过100兆链路

实验步骤

1.IP地址规划

划分思路:
因为图中有4个环回地址和加6个跟网线
所以总网段为8+6=14个网段
划分时,我们可以先把环回的两个地址看成一个网段使用时再借一位分成两个使用。
因为我们把路由器和路由器之间的链路为骨干链路,而骨干链路是可以集中划分的,所以我们可以先把6个链路看成一个整体。
所以可以变成4+1=5个网段

192.168.1.0/24  2^3=8>5借三位划分
192.168.1.0/27——骨干链路
	继续借三位划分
	192.168.1.0/30
	192.168.1.4/30
	192.168.1.8/30
	192.168.1.16/30
	192.168.1.20/30
192.168.1.32/27——R1环回
	继续借一位划分
	192.168.1.32/28
	192.168.1.48/28
192.168.1.64/27——R2环回
	继续借一位划分
	192.168.1.64/28
	192.168.1.80/28
192.168.1.96/27——R3环回
	继续借一位划分
	192.168.1.96/28
	192.168.1.112/28
192.168.1.128/27——R4环回
	继续借一位划分
	192.168.1.128/28
	192.168.1.144/28
192.168.1.160/27预留
192.168.1.192/27预留

划完后如图
在这里插入图片描述

2.路由配置

先给公网路由器AR6分配路由

[r6]interface GigabitEthernet0/0/0
[r6]ip address 56.1.1.2 24
[r6]interface LoopBack0
[r6]ip address 6.6.6.6 24

再给内网的路由器分配IP
以AR1为例

[r1]interface GigabitEthernet0/0/0
[r1]ip address 192.168.1.1 30
[r1]interface GigabitEthernet0/0/1
[r1]ip address 192.168.1.21 30
[r1]interface LoopBack0
[r1]ip address 192.168.1.33 28
[r1]interface LoopBack1
[r1]ip address 192.168.1.49 28

3.配置静态路由

因为最终要完成r1-r5均可访问r6的环回,所以我们可以先给r1-r5都配置一个到r6的缺省路由,再配置剩余选路不佳和缺少的路由,再手写静态。
配置缺省路由

[r1]ip route-static 0.0.0.0 0.0.0.0 192.168.1.2
[r1]ip route-static 0.0.0.0 0.0.0.0 192.168.1.22

[r2]ip route-static 0.0.0.0 0.0.0.0 192.168.1.6

[r3]ip route-static 0.0.0.0 0.0.0.0 192.168.1.17

[r4]ip route-static 0.0.0.0 0.0.0.0 192.168.1.10

[r5]ip route-static 0.0.0.0 0.0.0.0 56.1.1.2

配置静态路由

[r1]ip route-static 192.168.1.4 30 192.168.1.2
[r1]ip route-static 192.168.1.64 27 192.168.1.2
[r1]ip route-static 192.168.1.128 27 192.168.1.22

[r2]ip route-static 192.168.1.20 255.255.255.252 192.168.1.1
[r2]ip route-static 192.168.1.32 255.255.255.224 192.168.1.1
[r2]ip route-static 192.168.1.128 255.255.255.224 192.168.1.6
[r2]ip route-static 192.168.1.128 255.255.255.224 192.168.1.1

[r3]ip route-static 192.168.1.0 255.255.255.252 192.168.1.21
[r3]ip route-static 192.168.1.32 255.255.255.224 192.168.1.21
[r3]ip route-static 192.168.1.64 255.255.255.224 192.168.1.21
[r3]ip route-static 192.168.1.64 255.255.255.224 192.168.1.17

[r4]ip route-static 192.168.1.0 255.255.255.252 192.168.1.5
[r4]ip route-static 192.168.1.20 255.255.255.252 192.168.1.18
[r4]ip route-static 192.168.1.32 255.255.255.224 192.168.1.5
[r4]ip route-static 192.168.1.32 255.255.255.224 192.168.1.18

因为r4与r5之间有两条链路,所以需要配置浮动静态路由

[r4]ip route-static 0.0.0.0 0.0.0.0 192.168.1.14 preference 61

[r5]ip route-static 192.168.1.32 27 192.168.1.13 preference 61
[r5]ip route-static 192.168.1.64 27 192.168.1.13 preference 61
[r5]ip route-static 192.168.1.96 27 192.168.1.13 preference 61
[r5]ip route-static 192.168.1.128 27 192.168.1.13 preference 61

[r5]ip route-static 192.168.1.0 30 192.168.1.13 preference 61
[r5]ip route-static 192.168.1.4 30 192.168.1.13 preference 61
[r5]ip route-static 192.168.1.16 30 192.168.1.13 preference 61
[r5]ip route-static 192.168.1.20 30 192.168.1.13 preference 61

因为r1,r2,r3汇总了路由,所以为了防止路由黑洞,还需要配置空接口路由

[r1]ip route-static 192.168.1.32 27 NULL 0
[r2]ip route-static 192.168.1.64 27 NULL 0
[r4]ip route-static 192.168.1.96 27 NULL 0

4.连接外网

要连接外网,需要使用NAT服务

[r5]acl 2000
[s5-acl-basic-2000]rule 5 permit source 192.168.1.0 0.0.0.255 
[r5]int GigabitEthernet0/0/2
[r5-GigabitEthernet0/0/2]nat outbang 2000

5.设置dhcp服务

[r3]dhcp enable
[r3-ip-pool-a]ip pool a
[r3-ip-pool-a]network 192.168.1.128 mask 27
[r3-ip-pool-a]gateway-list 192.168.1.129
[3-ip-pool-a]dns-list 114.114.114.114 8.8.8.8
[r3-GigabitEthernet0/0/2]dhcp select global

6.设置远程登录

先让AR1启动telnet服务

[r1]aaa
[r1-aaa]local-user lzl privilege level 15 password cipher 123456
Info: Add a new user.
[r1-aaa]local-user lzl service-type telnet
[r1]user-interface vty 0
[r1-ui-vty0]authentication-mode aaa

在AR5的23端口映射成AR1的

[s5]int g0/0/2
[s5-GigabitEthernet0/0/2]nat server protocol tcp global current-interface 23 ins
ide 192.168.1.1 23
Warning:The port 23 is well-known port. If you continue it may cause function fa
ilure.
Are you sure to continue?[Y/N]:y

路由测试

1.测试是否全网可达

以r3的主机为例
在这里插入图片描述

2.测试远程登录

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值