计算机网络(三)和ctf做题小结(二)

网络层

网络层提供的服务

(1)无连接的网络服务(数据报服务)
(2)面向连接的网络服务(虚电路服务)

网络协议

1.地址解析协议ARP:是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。
2.逆地址解析协议RARP:是解决同一个局域网上的主机或路由器的硬件地址和IP地址的映射问题。(现在弃用)
3.网际控制报文协议ICMP:提供差错报告和询问报文,以提高IP数据交付成功的机会
4.网际组管理协议IGMP::用于探寻、转发本局域网内的组成员关系。

虚拟互连网络

物理层中间设备:转发器(repeater)
数据链路层中间设备:网桥或桥接器(bridge)
网络层中间设备:路由器(router)
网络层以上的中间设备:网关(gateway)

IP地址

IP 地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识符。由因特网名字与号码指派公司ICANN进行分配。
IP地址编制方法的三个阶段:
分类的IP地址
子网的划分
构成超网
每一类地址都由 网络号 net-id和 主机号 host-id组成
主机号中全0表示网络地址,全1表示广播地址。
1、分类的ip地址
A类地址:以0开头, 第一个字节范围:1~126(1.0.0.0 - 126.255.255.255);(网络号为高8位(1个字节)范围:1到126)(因为网络号为0是保留地址:“本网络”,127是保留作为“回环地址”)。
B类地址:以10开头, 第一个字节范围: 第一个字节范围:128~191(128.0.0.0 - 191.255.255.255);(网络号为高16位(2个字节))。
C类地址:以110开头, 第一个字节范围:192~223(192.0.0.0 - 223.255.255.255);(网络号为高24位(3个字节))
D类是多播地址,“1110”开始
E类地址保留为今后使用,“11110”开头

IP地址与硬件地址

硬件地址是数据链路层和物理层使用的地址
IP地址是网络层和以上各层使用的地址,是一种逻辑地址
IP地址放在IP数据报的首部,而硬件地址放在MAC帧的首部。当数据报放入数据链路层的MAC帧中后,整个IP数据报就成为MAC帧的数据,因而在数据链路层看不见数据报的IP地址。

地址解析协议ARP

ARP是解决同一个局域网上的主机或路由器的 IP 地址和硬件地址的映射问题。
每一个主机都设有一个ARP高速缓存(ARP cache),里面有所在的局域网上的各主机和路由器的 IP 地址到硬件地址的映射表。
如果所要找的主机和源主机不在同一个局域网上,那么就要通过 ARP 找到一个位于本局域网上的某个路由器的硬件地址,然后把分组发送给这个路由器,让这个路由器把分组转发给下一个网络。

IP数据报

1、IP数据报格式
一个IP数据报由首部(20 字节+可选字段)和数据两部分组成
2、分组转发
(1) 从数据报的首部提取目的主机的 IP 地址 D, 得出目的网络地址为 N。
(2) 若网络 N 与此路由器直接相连,则把数据报直接交付目的主机 D;否则是间接交付,执行(3)。
(3) 若路由表中有目的地址为 D 的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器;否则,执行(4)。
(4) 若路由表中有到达网络 N 的路由,则把数据报传送给路由表指明的下一跳路由器;否则,执行(5)。
(5) 若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行(6)
(6) 报告转发分组出错。

划分子网

1、两级IP地址缺陷:
IP 地址空间的利用率有时很低。
给每一个物理网络分配一个网络号会使路由表变得太大因而使网络性能变坏。
两级的 IP 地址不够灵活。
2、子网划分的基本思路:
划分子网纯属一个单位内部的事情,单位对外仍然表现为没有划分子网的网络。
划分子网的方法是从主机号借用若干个位作为子网号。
路由器在收到IP数据报后,按目标网络号和子网号定位目标子网。
3、子网掩码
子网掩码是一个网络或一个子网的重要属性。

构造超网(无分类编址CIDR)

1、CIDR(无分类域间路由选择)的主要特点:
CIDR消除了传统的A、B、C类地址以及划分子网的概念,用网络前缀代替网络号和子网号,后面的部分指明主机。因此,CIDR使IP地址从三级编址(使用子网掩码),又回到了两级编址,但这已是无分类的两级编址。
CIDR把网络前缀相同的连续的IP地址组成一个”CIDR地址块”只要知道CIDR地址块中的任何一个地址,就可以知道这地址块的起始地址(即最小地址)和最大地址,以及地址块中的地址数。
2、地址掩码:是一连串的1和0组成,而1的个数救赎网络前缀长度。在斜线记法中。斜线后面的数字就是地址掩码中1的个数。
3、构成超网:由于一个CIDR地址块中含有很多地址,所以在路由表中就利用CIDR地址块来查找目标网络,这种地址的聚合常称为路由聚合,也称构成超网。

网际控制报文协议ICMP

1、ICMP报文的种类
ICMP差错报告报文
ICMP询问报文
2、ICMP 差错报告报文共有 5 种:
终点不可达
源点抑制(Source quench)
时间超过
参数问题
改变路由(重定向)(Redirect)
3、ICMP 询问报文有两种:
回送请求和回答报文
时间戳请求和回答报文

路由选择协议

1、两大类路由选择协议:
内部网关协议 IGP:一个自治系统内部使用的路由选择协议。有多种协议,如 RIP 和OSPF 协议。
外部网关协议EGP:一个自治系统的边界,将路由选择信息传递到另一个自治系统中。目前使用的就是BGP。

CTF做题

1、wechll上的一题:Crypto - Caesar I
在这里插入图片描述
我们可以在网上找一个凯撒密码解码器直接解码,我们根据解码器上的提示要从0~25输入这些数字,当发现一个正常语句的时候就不用试啦,答案就在里面。如果觉着麻烦也可以自己写一个脚本。
2、wechall上的一题:WWW-Robots
访问https://www.wechall.net/robots.txt
我们看到如下内容:
User-agent: *
Disallow: /challenge/training/www/robots/T0PS3CR3T
User-agent: Yandex
Disallow: *
然后我们继续访问
https://www.wechall.net/challenge/training/www/robots/T0PS3CR3T/即可得分。
3、bugku上的一题:easy_crypto
在这里插入图片描述
乍一看密文感觉像是十六进制 但仔细看看发现并不是,上网搜了之后发现是莫尔斯密码,下面附上一段脚本,运行之后能找到答案。

string=input()
key=string.split(" ")#split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)
dictionary= {'01': 'A',
        '1000': 'B',
        '1010': 'C',
        '100':'D',
        '0':'E',
        '0010':'F',
        '110': 'G',
        '0000': 'H',
        '00': 'I',
        '0111':'J',
        '101': 'K',
        '0100': 'L',
        '11': 'M',
        '10': 'N',
        '111': 'O',
        '0110': 'P',
        '1101': 'Q',
        '010': 'R',
        '000': 'S',
        '1': 'T',
        '001': 'U',
        '0001': 'V',
        '011': 'W',
        '1001': 'X',
        '1011': 'Y',
        '1100': 'Z',
        '01111': '1',
        '00111': '2',
        '00011': '3',
        '00001': '4',
        '00000': '5',
        '10000': '6',
        '11000': '7',
        '11100': '8',
        '11110': '9',
        '11111': '0',
        '001100': '?',
        '10010': '/',
        '101101': '()',
        '100001': '-',
        '010101': '.',
        '110011':',',
        '011010':'@',
        '111000':':',
        '101010':':',
        '10001':'=',
        '011110':"'",
        '101011':'!',
        '001101':'_',
        '010010':'"',
        '10110':'(',
        '1111011':'{',
        '1111101':'}'
        };
for item in key:
    print(dictionary[item],end='')
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值