一、网际控制报文协议ICMP:为了提高IP 数据报交付成功的机会
1、ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告。
2、作用:用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息
3、ICMP 不是高层协议,而是IP 层的协议。
4、ICMP 报文作为IP 层数据报的数据,加上数据报的首部,组成IP 数据报发送出去。
5、ICMP 报文的格式:类型:1字节,代码:1字节,检验和:2字节;接下去四个字节与类型有关,数据部分(差错报文):ip首部+ip数据报前8个字节
6、ICMP 报文的种类有两种,即ICMP 差错报告报文和ICMP 询问报文。
7、ICMP 差错报告报文共有5 种:终点不可达、源点抑制、时间超过、参数问题、改变路
由(重定向)
8、不应发送ICMP 差错报告报文的几种情况
(1)对ICMP 差错报告报文不再发送ICMP 差错报告报文。
(2)对第一个分片的数据报片的所有后续数据报片都不发送ICMP 差错报告报文。
(3)对具有多播地址的数据报都不发送ICMP 差错报告报文。
(4)对具有特殊地址(如127.0.0.0 或0.0.0.0)的数据报不发送ICMP 差错报告报文。
9、ICMP 询问报文有两种:回送请求和回答报文、时间戳请求和回答报文
10、ping报文就是icmp报文
我的手机 2019/5/11 19:45:37
二、因特网的路由选择协议
1、路由选择协议的核心就是理想的路由算法
2、从路由算法的自适应性分类
静态路由选择策略——即非自适应路由选择
动态路由选择策略——即自适应路由选择
3、因特网采用分层次的路由选择协议。
4、自治系统AS 的定义:在单一的技术管理下的一组路由器,而这些路由器使用一种AS 内部的路由选择协议和共同的度量以确定分组在该AS 内的路由,同时还使用一种AS 之间的路由选择协议用以确定分组在AS之间的路由
5、因特网有两大类路由选择协议
内部网关协议IGP (Interior Gateway Protocol) 即在一个自治系统内部使用的路由选择协议,常用的有RIP,OSPF
外部网关协议EGP (External Gateway Protocol)不在一个自治系统内部使用的路由选择协议,常用的有BGP
6、自治系统之间的路由选择也叫做,域间路由选择(interdomain routing),在自治系统内部的路由选择叫做,域内路由选择(intradomain routing)
7、内部网关协议RIP(路由信息协议):RIP 是一种分布式的基于距离向量的路由选择协议。基于UDP的应用层协议
RIP 协议中的“距离”也称为“跳数”(hop count),因为每经过一个路由器,跳数就
加1。
RIP 允许一条路径最多只能包含15 个路由器。
“距离”的最大值为16 时即相当于不可达。可见RIP只适用于小型互联网。
RIP 不能在两个网络之间同时使用多条路由。RIP 选择一个具有最少路由器的路由
(即最短路由),哪怕还存在另一条高速(低时延)但路由器较多的路由。
8、RIP 协议的三个要点
仅和相邻路由器交换信息。
交换的信息是当前本路由器所知道的全部信息,即自己的路由表。
按固定的时间间隔交换路由信息,例如,每隔30 秒。
9、距离向量算法
收到相邻路由器(其地址为X)的一个RIP 报文:
(1) 先修改此RIP 报文中的所有项目:把“下一跳”字段中的地址都改为X,并把所有的“距离”字段的值加1。
(2) 对修改后的RIP 报文中的每一个项目,重复以下步骤:若项目中的目的网络不在路由表中,则把该项目加到路由表中。否则,若下一跳字段给出的路由器地址是同样的,则把收到的项目替换原路由表中的项目。否则若收到项目中的距离小于路由表中的距离,则进行更新,否则,什么也不做。
(3) 若3 分钟还没有收到相邻路由器的更新路由表,则把此相邻路由器记为不可达路由器,即将距离置为16(距离为16表示不可达)。
(4) 返回。
10、RIP2 的报文由首部和路由部分组成
路由部分:地址族标识符,路由标记,网络地址、该网络的子网掩码、下一跳路由器地址以及到此网络的距离组成
11、RIP 协议的特点:好消息传播的快,坏消息传播的慢
网络出故障的传播时间往往需要较长的时间(例如数分钟)
12、内部网关协议OSPF(开放最短路径优先)
(1)向本自治系统中所有路由器发送信息,这里使用的方法是洪泛法。
(2)发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的
部分信息。“链路状态”就是说明本路由器都和哪些路由器相邻,以及该链路的“度量”(metric)。
(3)只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送此信息。
13、OSPF 的区域(area):为了使OSPF 能够用于规模很大的网络,OSPF 将一个自治系统再划分为若干个更小的范围,叫作区域。
14、每一个区域的路由器数量不超过200个,分成两种区域,即主干区域和其他区域
15、划分区域的好处就是将利用洪泛法交换链路状态信息的范围局限于每一个区域而不是整个的自治系统,这就减少了整个网络上的通信量。
在一个区域内部的路由器只知道本区域的完整网络拓扑,而不知道其他区域的网络拓扑的情况。
OSPF 使用层次结构的区域划分。在上层的区域叫作主干区域(backbone area)。主干区域的标识符规定为0.0.0.0。主干区域的作用是用来连通其他在下层的区域。
16、OSPF 不用UDP 而是直接用IP数据报传送。OSPF 构成的数据报很短。这样做可减少路由信息的通信量,而
17、OSPF协议中如果到同一个目的网络有多条相同代价的路径,那么可以将通信量分配给这几条路径。这叫作多路径间的负载平衡。
18、OSPF 的五种分组类型:问候(Hello)分组。数据库描述分组。链路状态请求分组。链路状态更新分组,用洪泛法对全网更新链路状态。链路状态确认分组。
19、OSPF 还规定每隔一段时间,如30 分钟,要刷新一次数据库中的链路状态。当互联网规模很大时,OSPF 协议要比距离向量协议RIP好得多。
我的手机 2019/5/11 19:52:29
三、虚拟专用网VPN
利用公用的英特网作为本机构各专用网之间的通信载体。通过英特网传送的数据要加密。
1、本地地址——仅在机构内部使用的IP 地址,可以由本机构自行分配,而不需要向因特网的管理机构申请。
2、全球地址——全球唯一的IP地址,必须向因特网的管理机构申请。
专用地址:只能用于一个机构的内部通信,而不能用于和因特网上的主机通信,是本地地址
10.0.0.0 到10.255.255.255
172.16.0.0 到172.31.255.255
192.168.0.0 到192.168.255.255
3、内联网和外联网:看结果是否属于同一个机构
四、网络地址转换NA T
1、需要在专用网连接到因特网的路由器上安装NAT 软件。装有NAT 软件的路由器叫做NA T路由器,它至少有一个有效的外部全球地址IP G。
2、在专用网络内使用专用IP地址,仅在连接到英特网上的路由器时使用全球IP地址。并
且一定要使用全球IP才能和英特网连接
3、通过NAT地址转换表可以把IP数据报上的旧目的IP地址转换为新的目的IP地址
4、使用端口号的NA T也叫网络地址与端口号转换NAPT。
运输层
一、 运输层协议概述
1、从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是用户功能中的最低层。
2、当网络的边缘部分中的两个主机使用网络的核心部分的功能进行端到端的通信时,只有位于网络边缘部分的主机的协议栈才有运输层,而网络核心部分中的路由器在转发分组时都只用到下三层的功能。
3、两个主机进行通信实际上就是两个主机中的应用进程互相通信。
4、运输层的一个很重要的功能就是复用和分用。通过端口实现。
5、网络层为主机之间提供逻辑通信,运输层为应用进程之间提供端到端的逻辑通信
6、当运输层采用面向连接的TCP 协议时,尽管下面的网络是不可靠的(只提供尽最大努力服务),但这种逻辑通信信道就相当于一条全双工的可靠信道。当运输层采用无连接的UDP协议时,这种逻辑通信信道是一条不可靠信道。
7、两个对等运输实体在通信时传送的数据单位叫作运输协议数据单元 TPDU
8、UDP 在传送数据之前不需要先建立连接。虽然UDP 不提供可靠交付,但在某些情况下UDP 是一种最有效的工作方式;TCP 则提供面向连接的服务。
9、运输层的 UDP 用户数据报与网际层的IP数据报的区别:IP 数据报要经过互连网中许多路由器的存储转发,但 UDP 用户数据报是在运输层的端到端抽象的逻辑信道中传送的。
10、硬件端口与软件端口的区别:在协议栈层间的抽象的协议端口是软件端口。路由器或交换机上的端口是硬件端口。硬件端口是不同硬件设备进行交互的接口,而软件端口是应用层的各种协议进程与运输实体进行层间交互的一种地址。
11、端口用一个16 位端口号进行标志。
12、端口号只具有本地意义,即端口号只是为了标志本计算机应用层中的各进程。在因特网中不同计算机的相同端口号是没有联系的。
13、端口的分类:熟知端口和登记端口号合称为服务器端使用的端口号
熟知端口,数值一般为0~1023。
登记端口号,数值为1024~49151,为没有熟知端口号的应用程序使用的。使用这个范围的端口号必须在IANA 登记,以防止重复。
客户端口号或短暂端口号,数值为49152~65535,留给客户进程选择暂时使用。
二、用户数据报协议UDP
1、UDP只是在IP 的数据报服务之上增加了端口的功能和差错检测的功能。
2、UDP 的主要特点我的手机 2019/5/11 19:57:52
UDP 是无连接的,即发送数据之前不需要建立连接。
UDP 使用尽最大努力交付,即不保证可靠交付,同时也不使用拥塞控制。
UDP 是面向报文的。
UDP 支持一对一、一对多、多对一和多对多的交互通信。
UDP 的首部开销小,只有8 个字节。
UDP没有拥塞控制,很适合多媒体通信的要求
3、发送方UDP 对应用程序交下来的报文,在添加首部后就向下交付IP 层。UDP 对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。
4、UDP 的首部格式(每个部分各两个字节)
源端口(不需要回送时可填0),目的端口,长度(包括数据部分,最小为8字节),检验和(检查用户数据报是否有差错)
5、IP数据报首部检验和与UDP数据报检验和的区别:IP数据报只检验首部,UDP则把首部和数据报部分一起检验了。
6、伪首部与检验和:为了计算检验和在UDP首部之前再加入12字节的伪首部。伪首部不能向上递交也不用向下传送。接收方将UDP数据报与伪首部按二进制反码求和,正确的结果应为全0,否则丢弃这个数据报。
7、伪首部包括源IP,目的IP,一个全0字节,一个协议字段,2字节的UDP长度
bugku的web题
1,
这道题我们直接点击上面所显示的链接,打开之后发现所示界面
理解一下题意,当what=flag时我们可以得到flag,但是查看源码并没有发现什么,我们尝试一下直接修改ip地址如下http://123.206.87.240:8002/get/?what=flag,flag就出来了。
2,下一道题,web3.
点开链接之后,我们发现是无尽的弹窗,查看源码,在最后发现了一段很像密码的字符
我们把这段字符复制下来,找一个解码器解码就可以得到flag了。