粉丝1433获赞7331

用正确的姿势涨知识,哈喽大家好,欢迎收看涨知识!说起 icmp 写意大家可能比较陌生,但是说到拼命令,我想在座的同学们应该都再熟悉不过了吧。使用过拼命令的同学都知道,当我们不确定目标主题是否可以联通的时候,都可以拼一下目标。 比如我们想看一下我们的计算机能否与一九二点一六八点一点十一联通,我们就可以执行一下拼一九二点、一六八点一点十一的命令。如果可以联通,那我们会看到这样的显示,表示可以联通,并且平均延迟为十五毫秒。 今天咱们就一起来学习一下拼命令背后的协议。 icmp 协议。 icmp 协议的全称是 internet ctrl message protoco 及互联网控制消息协议。简单来说,它的作用就是帮助网络管理员检测网络中发生的各种问题,然后根据问题原因做出诊断和解决。 从大类上来分,它主要是两大块的功能,一块是询问报告,比如询问一下目标主机是否可以联通,并做出回答。我们常用的拼命令就是用这个功能来实现的。另一块是用来做差错报告,比如网关发现目标网络不可达, 或者目标主机发现访问的 udp 端口不可达,需要把错误报告给原主机。垂丝路特这个工具就是用这个功能来实现的。 我们来看一下执行聘命令之后发生了什么。聘执行的第一步,程序会记录下来当前时间,然后构造一包 smp 查询豹纹。 smp 豹纹比较关键的字段是封装在 ip 协议首部的原 ip 地址和目标 ip 地址, 以及封装在 ip 层数据部分的 icmp 类型。在这里请求豹纹的类型是八,这一部分内容都属于网络层的内容。在数据链路层需要填写原麦克地址和目标麦克地址 中,目标麦克是通过 ap 协议获得的,还不清楚 ap 协议的同学可以去看上一条视频。封装好的 smp 请求豹纹会被操作系统从网卡发出去,如果目标存在,那么目标主机会收到这一包。请求 目标主机收到 smp 请求豹纹会构造一包回复豹纹,设置 smp 类型,字段为零,表示回复,并按照标准步骤填写网络层和数据链路层的其他信息,然后将回复豹纹发送回原主题。 原主机收到回复报文后,表示目标网络联通,他会再取一次,当前时间与发送之前取的时间作差,得到延迟时间并打印在控制台上,此时控制台上就会打印出来一条信息, 然后程序会再继续执行以上步骤,每完成一次,打印一次结果信息。还有一种可能是目标主机不存在,或者目标主机存在,但回复报文丢了, 那么原主机就会等待一段时间后超值打印出来。超时信息表示目标主机无法联通。明白了拼的实现原理之后,我们再来看一下 smp 的插错报告功能。同样,我们以一个常用的工具 csrot 来举例,假设我们有一台主机, ip 为一九二点一六八点一点十, 有一台目标主机, ip 为十点零零零点十,很明显他俩不在同一个网端。如果我们使用聘命令,只能检测这两台主机的网络是否联通,但是如果我们想知道从原主机到目标主机中间经历了哪几个网关的转发,以及这些网关的 ip 地址都是多少,使用聘命令是无法获取的, 这时候就可以使用吹丝路的工具,比如我们可以在原主机上执行吹丝路的十点零点零点十,他可以帮我们检查出来这两台主机之间通信经过了哪些网关,并且 ip 地址都是多少。帮助我们了解一个复杂网络的 top 结构, 我们下面来看一下他是如何做到的。首先在网络层 ip 数据包头中有一个 t t l 字段,这个字段的意思是此尊数据可经过的最大节点数, 比如发送出去的一针数据包 t t l 等于二,则其经过第一个网关时, t t l 减一变为一,经过第二个网关时, t t l 减一变为零,此时不能再向前发送。此针数据丢弃后通过 smp 协议向原主及报告错误, 这就是前面说的 smp 的插错包裹功能之一。明白了这个,我们就可以构造一帧 udp 豹纹,并将其 ttl 设为一发送出去。 到了第一个网关, ttl 变为零,网关会通过 smp 报告错误,我们就可以根据这一帧 smp 报文知道了网关一的 ipd 值,并计算出七延时,这是第一跳。然后再构造一帧 udp 报文,将其 ttl 设为二 送出去。此时这阵豹纹可以到达第二个网关,并返回 smp 插座豹纹我们就知道了第二条网关 ip 地址和银石,以此类推得到了第三条的网关 ip 地址和银石, 直到第四次这一针豹纹到达了目标主机,由于不需要再向前转发了,所以目标主机也不需要再回复因 t t l 等于零发生的 sm p 插座豹纹。这时候原主机怎么知道目标主机已到达了呢?秘密就隐藏在这一针 udp 豹纹中。大家都知道 udp 豹纹是有接收端口的, 在原主机构造 udp 豹纹时,将目标端口设置为一个很大的值,比如三三四三五,当目标主机收到这一帧 udp 豹纹,发现目标端口不存在, 同样会产生一针因目标端口不可达而生成的 smp 插座豹纹并报告给原主机。原主机收到这一针豹纹后,即可知道目标主机已到达,打印出来 目标主机的延时信息后即可退出,完成一次吹思路的流程。我们今天的视频就到这里了,下一期跟大家一起学习一下 dni 次协议的相关知识,了解一下域名是如何转换为 ip 地址的。欢迎大家点赞留言关注、转发,再见!

i c m p 是什么? i c m p 是 internet control messages protocol 的缩写集英特网控制豹纹协议。它是 t c p i p 协议组的一个子协议,用在 i p 主机 路由器之间传递控件消息,是指网络通不通,主机是否可达,路由器是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传输起着重要的作用。 icm 豹纹有两种差错,报告豹纹和询问豹纹。


好,今天呢我们讲一下网络层当中的一个常用协议叫 icmp 啊, icmp 这个协议的话呢,它是用来在网络设备之间进行一些差错信息,还有控制信息,还有一些这个网络信息收集,还有一些这个诊断排错, 就是它总体的作用呢,就是诊断一下你的网络是否有问题,或者是查询一下问题出在哪儿。那么 icmp 协议的里边儿呢?它包含两个命令,一个是拼命令,一个是 trace 的 命令 啊,这是,呃,两个命令啊,拼的话呢就是我们测试网络连通信这么一个命令啊,然后我们可以看一下啊,这块儿呢给大家稍微演示一下啊,这是我们打开一个 c、 m、 d 窗口啊,这个我们在 windows 当中呢,可以去呃,在这个运行当中运行当中啊,去打开 c、 m、 d 窗口,然后来去操作啊,然后呢我们进来之后呢,我们就可以去用拼, 然后后边呢加上一个 ip 地址啊,比方说我们四个八这个地址,然后呢我们去回车啊,回车之后呢,我们可以看到呢,这里边呢就会出现一个回复, 回复的话呢实际上就是我们跟四个八这个地址我们之间的连通信是没有问题的,我是可以拼通对方这个命令的话呢,其实是比较简单的,我们正常可以拼通的话,它显示的就是我们这个拼通时候的这个一个 相应的返回的时间,就是说我们拼通它用了多久啊?这是二百九十二毫秒,这是它的一个 ttl 值啊,就是一个生存值,就是我到达它那这个 ttl 的 这个剩余的这个值是多少?然后呢我们看一下这个,呃,如果拼不通的话啊,是这样的, 我随便拼一个地址啊,比如一点二,点三点四,哎,这个地址的话呢,我就没有拼通,没有拼通的话呢,它就不会返回你这个一个正常的一个显示啊,它是一个超时显示,就证明我们跟它没有通,这个命令是比较简单的,咱们生活当中也比较常用啊。好,这是一个拼命令,好,把这个结束一下啊,我们按 ctrl c 的 话就可以结束。 然后,呃我们再看一下这个 trace 命令啊,这个 trace 命令的话呢,是用来检查我们到目标地址所途径的设备。我们看一下啊,我们去同样 trace, 然后呢 我们加一个时间啊,杠 w 呢,是我们等待的时间啊,我们设成一秒,然后是杠 d 啊,就是不解析这里边有些参数啊,我一会可以看一下啊,那这块呢就是我们去追踪这个地址的话,那么他就会把呢我们从我自己的电脑到四个八这个地址当中所有 途经的网络设备的 ip 给我们列出来。但是这个命令的话呢,它有的时候会发现啊,我们看到有请求超时的这种,这种呢是该地点的设备,它配置了不让外界 查看到它的 ip 的 设置啊,就是说它是不让看的,所以我们一般来说呢是看不到它的地址信息的,哎,像这种我们可以看到的这些呢都是我们途经的网络设备的 ip, 而这些设备呢它都设置了都是可以看的 啊,它我们就是可以看到这些 ip 啊,我们一共我们从这个我们自己的电脑访问到这个四个八的话,那么途经的所有设备 哎,它的一个信息都会显示出来啊,除了这些不让看的啊,不让看的这些啊,那其他都可以看到哎,这两个命令的话呢,是比较常见的说,我们在进行网络的一些联通性测试的时候,或者是检查一些网络故障的时候啊,都是比较常用的。那么这个 trace 当中呢,有一些这个参数啊,这个 呃常用的就是我刚才用的这个啊,一个超时,一个是不解析,这个可以让我们 trace 命令执行的速度加快啊。呃,这个剩下的这些呢,其实我们也可以看一下啊,这个就不做过多的解释了。那么我们主要就是常用的这个 trace 命令和这个拼命令, 这两个的话呢,是我们在学习网络的时候非常多用到的命令啊。然后这里边呢,我们再额外说一下啊,这个 icmp 协议的话呢,它是网络层协议。 什么叫网络层协议呢?我们之前讲过啊,在数据封装的时候呢,它会从应用层封装到传输层,再封装到网络层,而 icmp 协议它这个报文发出去只有 网络层的信息,当然不全部啊,这里边呢,我们只说拼啊,就是拼这个命令的话,它发出去的时候只有网络层的信息,它是没有传输层和应用层的信息的 啊,这块儿呢,可以注意一下啊。但 trace 呢,呃它的原理还不一样啊,这块儿呢,我们就只记拼命令它的一个,呃,相样的原理,那就可以了啊,就拼命令的话呢,它本身只在网络层啊,做这个相样的封装, 而 trace 的 话呢,它是有上一层的传输层的封装。呃,这块儿呢,这个 trace 我 们就不过多去讲了啊,我们后续的话呢?呃,有合适的机会再去把这个 trace 命令呢,再详细地去解析一下。

一分钟带你了解什么是 icmp 协议。 i cmp, 全称互联网控制消息协议,是 tcpip 协议族中的一个核心协议。它的主要功能是在网络设备 如路由器与主机之间传递、控制、查询和错误报告消息,用于保证网络畅通,诊断和排除网络故障。 icmp 工作在网络层,与 ip 协议而于同一层级。 当 icmp 报文是被封装在 ip 数据包中进行传输的,可以认为 icmp 是 ip 协议的辅助协议。当 ip 数据包在传输过程中发生错误,如目标不可达、超时参数问题等,负责发现错误的设备会向数据包的员发送一个 icmp 错误报告报文。 icmp 错误报文本身不会再触发新的 icmp 错误报文一般用于测试网络联通性、获取主机信息、进行路径跟踪等。 最著名的工具就是聘和 tracer 或者 tracer route。 icmp 豹纹种类很多,但都有一个统一的前四个字节的头部类型,指名 icmp 豹纹的大类。 例如,类型八是回送请求类型零是回送应答类型三是目的不可达。在同一个类型下进一不细分不同的情况,例如在目的不可达、代码零表示网络不可达、代码一表示主机不可达等,代码三表示端口不可达等。 校验盒用于校验整个 i c m p。 报文的完整性。可变部分根据类型和代码的不同而变化,通常包含引发该 i c m p。 报文的原始 ip 数据包的头部和前八个字节,以帮助原主机确定是哪个进程发出的数据包出了问题。

什么是 icmp 协议? icmp 协议啊,是一种面向无链接的协议,用于传输出错报告、控制信息,主要用于在主机与路由器之间传递控制信息,包括报告错误、交换、受限控制和状态信息等。 当遇到 ip 数据无法访问目标、 ip 路由器无法按当前的传输速率转发数据包等情况时, 会自动发送 smp 消息。 smp 啊,是 tcpip 模型中网络层的重要成员,与 ip 协议 aip 协议,而 aip 协议以及 ijmp 协议共同构成了 tcpip 模型中的网络层。 拼和吹 sir 是两个常用的网络管理命令,拼用来测试网络可达性,吹 sir 用来显示到达目的主机的路径。 拼和吹色的都利用 icnp 协议来实现网络功能,他们是把网络协议应用到日常网络管理的典型实力,记得关注哦!

先登录我们的 st 这个权限,接着点击右边的的安装高级,高级里面左下角这个图标,点进来之后你就能看到当前的时间, 然后这里的下面是调整时间的,每一次最多只能修改六分钟,这里往上加上面的时间也会跟着加改号之后点全部应用就会弹出,这个就修改成功了,要是弹出这个就是修改上限了,我们就需要再去刷一次时间包, 点击右下角的维护这里再点软件升级,你就能看到一个这个点,他之后就弹出这个,这里点下一步就来到这个界面,勾选第一项,然后点下一步,最后就来到了这个界面,这里的第一项列表里面选择第二项,然 后这里是选择我们的时间包,这里的第三项是我们这台机器的二批地址显示,把时间包加进来之后点下一步,最后弹出这个界面,我们直接点下一步, 过程预计需要二到三分钟,过程当中放影机会自动重启, 升级完后就弹出这个界面,我们点击这里的完成即可,最后我们再去调整时间, 以此类推,我们每刷一次时间包,最多只能修改六分钟一次,如需要修改的时间差大于六分钟以上,我们就需要刷多几次来处理,最后注意,我们一年最多只能修改三十分钟,也就是说时间包最多也就能刷五次,这次的教程就分享到这里,然后就没然后了。

哈喽,大家好,这一期呢我们就来学习一下这个谓词啊,我之前有发过一期这个谓词的教程,但是那个是在命令中直接用 s、 n、 b、 t 格式进行内联的,然后这一期呢就是用这个 jason 格式数据包里的 jason 格式来写,其实他俩都差不多,他俩都差不多,那我们就到 vs code 里面来看一下。 那我们来到这个数据包这里啊,我们要弄这个位词的话,首先需要有一个能存放位词文件的地方,那么就在自己的这个命名空间下面,注意是自己的命名空间下面,不是这个方型文件夹里面,然后这个命名空间下面新建一个 predicate 的 文件夹, 然后如果你是一点二一以下的话,就是要末尾给它加个 s, 给它变成复数,然后我们在这个 predicate 文件夹里面就可以新建文件了,和进度一样给它取个名字,然后它的后置名是点 jason。 然后我们来到这里面以后,它就有两种写的格式,一种就是和也是和进度一样,它是可以直接打个大括号,然后回车这边就可以弹出提示, 就是这个 condition, 然后它就是其中一个谓词了。那我们还有一种方法,就是可以打个这个方括号,就是一个列表,然后里面再打这个大括号,然后这里面又是一个谓词,那然后我们可以再打逗号,这里面就是两个谓词一就是这个大括号,然后再写一个 condition, 这是两个谓词 需要同时满足,这么写的话就要需要同时满足这两个谓词的条条件,它才可以测试通过, 那我们就用这个就只测试通过一个就行了,我们就打这一个大括号,然后 condition, 然后后面的话我们就可以随便写一个位子的类型了。比如说我们就写一个常用的这个 n g t properties, 就 可以检测一下实体的一些属性。 然后逗号这边 int 的 话就是要呃这边填什么,就是要结合战利品上下文啊,就是怎么说呢?这个位词他还有个名字啊,就是战利品表位词,但他说是战利品表位词,其实在不是战利品表的地方,比如说物品修饰器啊,还有这个净度里面也会用到这个位词的, 所以我就这边就简称他叫位词了。然后这边 int 后面就是填跟战利品上下文有关的东西,这个要结合上下文来填。 那我们一般来讲就现在来讲呢,就填个 this 就 可以了,这个在战略平表中用的比较多,我到时候到这个战略平表里面再详细的跟大家讲一下。然后输完这个 this 以后,这就类似于就直接用把这个当执行者了,这个 this 就是 执行者, 然后我们在后面输个逗号,然后这边有一个 predicate, 就 可以直接写谓词了,然后我们就可以呃写这个,这边就实体谓词了。这边这个 antyp properties, 然后下面这个 predicate 就是 实体谓词啊,还有一些什么伤害来源谓词啊,别的谓词, 那反正它们都是谓词,就是根据对应的这些填填对应的谓词就行了。比如说我这边可以写个 type, 然后后面的话就可以接个 this, 就是 执行者,他是不是他这个执行者?是不是这个 play? 是 不是玩家?那它要怎么用呢?我们可以到这个函数文件里面随便新建一个函数,比如说也叫 a 好 了 a, 然后点 m c 函数, 然后来到这里面以后我们可以输个指令,就是 x x, 然后呃 if, 然后 predicate, 就是 判断一下这个位子,然后它这边可以直接,我们之前学过一个,就是用这个内联的, 就是直接用 s、 n、 b 格式进行内联位词,那我们现在有这个位词文件了,可以直接调用它,就是调用这个位这个位词文件,我们刚刚写的这个,然后就是判断我们是不是玩家,然后如果是的话,我们就可以让他让这个执行者输出一个一, 然后我们可以来到游戏里面这边来掠夺了一下,然后加载出来,然后我们以这个执行者,执行者就我们现在自己嘛,然后执行一下这个太次 a 这个函数,然后大家可以发现我们这个玩家这个类型是玩家嘛,然后他就测试通过,并且说了一个一, 那当然这个是最最基本的用法,我们还有别的一些位子类型可以用啊,比如说把这边都删掉, 比如说还可以这个 random chance, 就是 有概率去这个测试通过,就是这边打个 chance, 然后这边就是可以输一个百分比,那一就是百分之一百,那零就是百分之零,那我们比如说输个零点五,那就是百分之五十,然后我们 这边呃这个函数这边依旧是调用的啊,调用的刚刚那个 test a 的 函数这个谓词,然后我们已经改过了,所以它这边也是会同步改掉的,然后我们来到游戏里面直接 redo 的, 然后我们直接执行这个方迅 a, 然后他就是有百分之五十的概率会执行成功,哎,这次就没执行成功,然后我们再回车一下,哎,这次又没成功,成功了他就会输出这个一,那么再来看一个位子类型啊,多的我们也不看了,就看几个比较常用的,就是这个 location check 就 可以检查这个位置, 我们这边就是执行者的位置吗?对吧?如果你是有战利品上下文的话,可能是别人的位置,那这个 lookin 就是 可以检查这个位置,然后这边就写个位置的位词,他这边可以检查这个这个群系啊,什么方块啊,能不能看到天空啊,维度啊什么什么的,就有挺多的。那比如说我们这边可以选择这个方块, 然后我们再打个大括号,然后这边的话又可以选一个方块,然后这边可以输入一个要检测的方块,比如说,呃,钻石块嘛,比如说钻石块。然后我们保存这边函数依旧是调用的,我待会之后就不多看了,就依旧是调用的,然后我们回到游戏里面来, 那当然这个我们目前没有给他做任何位置的偏移,所以说他检测钻石块是我们玩家现在这一格的钻石块,我们需要我们先执行一下,大家可以发现是没有执行成功,因为我们现在这个是空气,然后我们用这个命令给自己这一格放一个钻石块, 我不知道会不会被挤出去啊?没有被挤出去,那行,那我们再来执行一下,他这一次为此就测试通过了,然后我们就输出了这个一, 那我们刚刚是检测玩家就执行者他自己那一格是不是钻石块,我们要怎么做这个偏移呢?比如说向下偏移一格,检测脚下的方块, 那我们只需要在这个 predicate 外面这个位置打个逗号,然后回车下来,这边有一个 offset, 就是 x 的 偏移, y 的 偏移和 z 的 偏移,比如说我们选个 y 的 偏移,然后要往下偏移一格,那就直接填负一就行了,往上就是填正数嘛,往下填就是负数,然后我们这边保存,然后回到游戏, 然后刚 redo 的, 我们在这个同样的位置先来执行一下这个方型,可以发现他没有成功,因为他已经偏移到下面去了。然后我们跳一下站到这个钻石块上面,然后我们再执行这个函数,啊这个函数,然后他这个位置就是测试通过了, 那我们其他位子类型也不过多介绍了,大家感兴趣的话可以上 wiki 查,或者我之前也有发过一期这个位子的教程,像什么 timeclock 啊这个这种位子,我这种比较简单的位子我也是发过教程的,大家感兴趣的话可以去看一下。那我们刚刚说过这个位子它不只是在这个命令中可以用 啊。对对,我们还说到他可以在这个进度或者物品修饰器里面用,那物品修饰器我们下期再发,那我们进度是学过的,我们就嗯不止在这个这个函数里面用了,我们来进度里面试一下,就在自己的这个秘密空间下面新建一个进度的文件夹, 然后我们再新建一个进度文件,同样叫 a, 然后点 jason, 然后这边的话我就不够多讲了,我直接就用这个进度呃来自定义一个了,如果大家还不会自定义进度的话,也可以看一下我之前那期视频。然后我们这边输完 criteria 之后,接着就是一个大括号,然后给他随便取个名字, 然后这边再给他来个触发器,这边触发器的话我就以这个呃这个 police 的 block 举例啊,就是玩家放置的方块, 那放置什么方块呢?它这个进这个出发出就可以检测玩家放置方块,那是什么玩家放置的什么方块呢?就是由这个 condition 控制了。这边的 conditions 呢?就是,呃要写一些谓词了,比如说我们这边的 location, 这个 location 就是 检测我们放置的那个方块,它会把坐标这个转到那个放的方块那一格, 然后我们可以用位词来检测一下这个放的方块是什么。这边打个中括号,然后打个大括号,这边 conditions, 然后用一下刚刚那个没用过的这个,这个是 block block state property, 这个就是可以检测一下这个方块的状态,那我这边直接检测一下放置的钻石块,那这样子的话就是写了一个进度,就是 任意玩家,然后他放置的方块放置的是钻石块,那这这样子的话就可以,呃就就算是做了一个比较简单的成交,那当然我们可以在这个外面裸科学的外面在逗号,然后限制一下这个 player 的 位子,就玩家的位子, 那这个玩家我们可以直接打个中国号,然后这边可以体验这个,呃实体位子,比如说他是他什么什么什么队伍啊?什么类型啊?这个对于玩家来说这个 type 没用啊, 那比如说什么队伍啊?处于这个 location 在 哪里啊?对吧?那我们还有一种方法,就是可以这个打个中括号,然后再是这样一个打括号,然后这边的话就可以用很多了,比如说 random chance, 就 说,呃,这个判断 integer scores 就 判断玩家的分数,然后也可以 integer properties, 就 判断一下玩家的属性, 然后我们这边再接着逗号 int, 然后这边直接写这个 this 就 行了,然后再逗号下来,这边 predicate, 就是 写这个和刚一样写这个实体谓词,那比如说我这边就可以写一个 flex, 那 我再判断一下这边是正在,比如说正在地上吧,正站在地上那 to, 那就是当正在,正站在地上的玩家放了一个这个钻石块以后,他就可以获得这个进度。我们来游戏里试一下,然后这边回到游戏,然后沦落了一下,然后我们复制一下这个钻石块,哎,我这中间啊,好,然后复制出来以后,我们先来清除一下这个, 呃,清楚一下这个进度啊。泰特 a, 然后我们现在是没有的,然后我们放一下这个钻石块,现在是,我现在是站在地上放的,那我们再清楚一下,他就已经撤销了,说明刚刚已经获得了这个进度。那当然我们可以再飞起来再放一遍, 再确认一下是没有的,然后再放一下他还是没有的,说明就是,呃,我们写的那个是没有问题的,我们就可以再来站地上,然后再放一下他清除了,哎,说明我们是成功的。 那当然我们可以在这边接着做文章,比如说在这个 location 这边,就是我们放的那个方块,它这个坐标是在放的方块位置,然后我们再接逗号,再接下一个这个 condition 下一个位置,那就比如说来一个我们刚刚用的那个 location check, 然后我们再给它偏移一个 y, 再偏移负一, 那就是检测一下这个我们放的那个钻石块放的那个位置,钻石块的位置的下面一格是什么东西,那是什么东西呢?就用这个 predicate, 然后 blocks, 然后再 blocks 这边,比如说下一个它是一个沙子,沙子,对吧?那它才可以这个通过。那下面玩家我们先不动啊,再回到游戏来试一下, 然后回到游戏我们再扔落的,然后现在的话玩家是站在地上的,站在地上,然后下面这个是沙子,让我们清除一下,清除一下是没有的,然后放一下, 哎,放一下可以发现他是完成了的,已经成功撤销了。然后我们,呃,我们接接着站在地上吧,接着站在地上对着这个钻石块放,对着这个钻石块放, 然后再来他是没有撤销,说明是没有完成。为什么?因为我们刚刚下面加了一条,就是他下面这个,我们放的是这个吗?那下面必须得是沙子才可以,现在是钻石块,所以我们无论怎么放他都是啊,不会获得定度的。然后我们随便再找一个沙子,这么一放, 哎,然后他就撤成功撤销了,说明是可以的。那我们刚刚是在这个 location 这边再加一条,在这边再加一个逗号, 然后我们也接着用这个 location check 来检查一下玩家下面这个方块,比如说这个 offset, 然后 y 负一,然后逗号这边一个 predicate, 检测一下玩家,他,啊,这不是不是群系啊,是方块, 那个白马寺是全系,然后比如说玩家是草方块,那这样子的话就是这个条件就比较多了,首先我们放的方块得是钻石块,然后钻石块下面得是这个沙子,然后这边玩家的话必须得站在地上, 然后注意啊,这边的这个楼根勋缺口和上面这个楼根勋缺口的坐标是不一样的,上面这个是钻石块,我们放的那个位置,这边是玩家站的位置,玩家站的位置的脚下必须得是这个草方块。 好,那我们再回到游戏,然后刚落的一下,然后现在我们是站在沙子上,然后我们再来检查一下有没有这个没有进度啊,我们现在站在沙子上,然后对着沙子放钻石块 是没有成功的,然后我们再来拿个草方块,现在我们,呃,这个先飞着,然后先飞着,然后脚下是草方块,他怎么落地了?先飞着,然后脚下是草方块,然后放一下 是没有成功的,然后我们再站在草方块上,脚下是草方块,再用钻石块对着沙子放 好,他终于是完成了,说明我们这么多条件写的都是没有问题的,那不知道大家这个理解了没有?好了,那这期视频就到这里了,非常的简单啊,也比较简短,是吧?那感谢大家收看我们下期视频,再见大家,拜拜。

好了,本期视频呢,那我们一起来学习一下这一个 i c m p。 协议,是一个网络层里面一个比较重要,然后对我们今后的一个工作当中也是用处非常大的一个协议啊。 i c m p 叫做 internet control, 呃, manage protocol 啊, internet 控制管理协议,消息管理协议嘛,是不是好,比如说我们平常我们会用一个拼,对不对啊?我们平常呢会去用这一个拼 有没有网,你拼一下嘛,你就知道有没有网,是吧?然后呢?呃,那其实除了这个工具呢,我们还会使用另一个工具, 这个叫做路由追踪,是不是?那这两个工具呢?那我都会给大家去讲一下他们是干什么用的,什么情况下用哪个?好吧,那我们的话就一起来学习一下啊。 首先右边这个东西呢啊,右边这个东西啊,你看一下,这个是 i c m p 的 豹纹,来,我们打开看一下,嗯, i c m p 的 豹纹长什么样呢?看一下啊, i c m p。 是 这个,随便看一个 放大一下。好,那么像这一种的话呢,它就是一个 i c n p 的 一个豹纹,看到了吗?啊?这种是来这种紫色的啊, 这个这种紫色的就是一个 i c n p 的 豹纹对不对?具体是什么用呢?就是这个表呢,告诉我们 这里有一些不同的类型,对应着不同的值,对不对?它的描述的内容是不一样的,如果你是类型零,然后值为零,对不对?表示呢? echo reply, 如果类型八值为零, echo request 这两个什么东西啊? request 的 话呢?就是请求包, reply 就是 响应包这两个,好吧,它就是这么两个东西, 那除此之外中间还有一些类型三要很多很多的,对不对?那这个的话我们以后用到了我们再我们就再说,好吧? 然后这边我们来讲一下这么两个工具,好吧? icmp 差错检测,还有一个错误报告来第一个工具呢叫做拼啊,我们的第一个工具 icmpicmp, 我 们第一个工具呢叫做拼,它可以干嘛?可以用来检测你的原端网络,或者说 本设备到目标网络是否能通,是否可以正常使用。好吧,那这个的话呢,是我们的拼它的一个作用,然后呃它会给你 就是到达目标网络的这个一些食言啊,对不对?眼屎啊,一些眼屎,眼屎还有 ttl 等等这些内容啊,包括但不限于这一些,对吧? 然后呃一个结果就是通,就是可以拼通和不能拼通吧? 就就是这两个结果,好吧,像我们这个的话呢,是可以拼通的,对不对?那我随便拼一个,哎,这个也能通吗?二点二点二呢?好,那像这种的话呢,就是不能拼通的,对不对? 来。像这个呢?像这个啊,他就是 这种,就是可以拼通,可以拼通。那你可以呢?在这里呢去看到一个时间就是食言,我从我敲下回车的那一刻到这个包回来所需要的时间,对不对? t t l 就是 一共经过了多个设备嘛?多个逻辑。好,那如果说拼不通呢?对不对?这个时间怎么算的呀?就是从我们敲下回车开始计算到他回来,好吧, 好,另一种结果的话呢,是拼不通啊。那我这里的话也可以去教大家一下,你面对不同给你的拼不通的结果是怎么样的?好吧, 比如说我们随来看一下啊,我这个 ip 是 这个段,比如说我随便拼一个地址叫做幺九二点幺六八点二点二,有这个地址吗?啊?没有, 我们我这里呢随便拼了一个地址啊,告诉我们的结果是什么呢?他说无法访问目标主机就直接告诉你了啊?我拼不通他,我的包也发不过去。这个是第一种结果啊, 好,目标目无。呃 呃。无法访问目标主机,意味着本设备压根没有将这个 icmp 的 请求包发出, 他是这个意思,对不对啊?那我们遇到了这种问题怎么去排查呢?是不是?你呢?先检查一下, 有两种情况啊,如果是相同网段出现的这两个他们在同一个网段出现,你呢?去看一下 这个设备是否存在,对不对?那出现这种东西呢?就是你的 a r p 解析没有去完成,好吧? a r p 解析没有完成。嗯, 好。那另一种情况就是说不同网段我们去拼不同网段 出现这个提示,那你这个时候呢,你可以去说明什么呀?说明呢,你到达网关就是你自己的网关是有问题的啊,是二层之间有问题, 你先排查一下你到自己的网关是否可以通,好吧,就是我们可以根据这些提示呢来进行判断。好吧, 好,那然后另一种拼不通的结果呢?就是他会告诉你啊,请求超时, request time out, 请求超时,如果是请求超时的话呢?就是什么呢? 是这个包呢?从我本地发出去了,但是可能没有到,对方有可能到了,他没有给我回来,对不对?那都是有可能。嗯, 那这个要排查的原因就非常多了啊。好,就是说如果提示是请求超时,说明呢? icmp 的 一个 request 报文已经从 本设备发出了,但是呢,可能对,可能目标设备没有收到,也有可能收到了,但是呢,给我回复的过程中 有问题,导致我无法收到,所以的话呢,我们看到的就是一个请求超时,好吧,就是这样的一种情况啊,好了,那这个的话呢,是我们的一个 这个工具啊,拼这个工具。好了,那本集视频呢?就这样啊,那下一集视频我们来说一下另一个工具叫做路由追踪缺少。

好,上节视频呢,那我们学习了拼这个工具,那本节视频呢?我们来学习一下这个 trace 对 不对?路由追踪啊,好,放到下面啊。 trace 路由追踪干嘛用的呢?可以用来去探测本设备到目标设备沿途经过了哪些设备,对不对? 我们进行排错的时候,你可以用这个,特别是一些多路径的情况下啊。嗯, 来,像你在你自己的电脑上,对不对?你可以用下这个。呃,这个杠 d 是 什么意思啊?就是不做域名解析啊,你不,你 比如说我可以去圈水一下我的这个 d s, 二零二九六,一二八点八六,或者说圈水百度也可以,你不加杠 d 呢,他会给你去做一个域名解析,那出来的结果可能就会比较慢一点嘛,是不是? 那你想让他快一点呢?那你你呢?可以加一个,在缺少后面加一个杠的,那给我们输出的一个结果呢?就会比较快啊,我再开一个窗口吧。呃,缺少二零二九六, 一二八八六,这是我,我们这边 d s 电信的,你看一下有多快?你看下谁先牵手完就知道了嘛。 看到效果了吗? 明显的是跟你不加杠的要快一些啊,然后这边有一些请求超时是什么情况呢?就是那个对应的设备啊,他没有给你去打开这个功能。好吧?没有给你打开这个功能, 你看到没有?我们这个杠的已经赶上来了啊,追上来了,看到没有?已经有第五跳了, 对不对?好,就是这么一个情况啊,等他慢慢切除吧。那我们 就来讲一下这个切除是怎么工作的。好吧,那这里呢,我们先搭一个图,好吧,一二三启动, 然后呢,我这边去拿两台 pc 上来啊,然后我们设备之间呢,相互去连下线啊,然后连接连接啊,然后我们这样啊, ok, 我 们可以规划下地址。一二点零太小了是吧?放大一点 够了,这里是幺零一点幺三点零二四啊, 然后这边是幺零点一点二三点零杠二四 p c 一 的,我就配成幺九二幺六八一点零二四,这边呢我就配成幺九二幺六八 二点零杠二十。好吧,好,就这样啊。呃,然后这里会需要涉及到一些配置啊,除了 ip 地址涉及到路由,那还没讲到在后面的合集都会讲,都会出视频。好吧,那我这边的话呢,我就悄悄自己配一下啊, 那我们这边呢暂停一下这个视频好了。那我们这边已经把这个配好了啊,然后配了一些路由啊,把它们配好了,然后我们这个 pc 一 呢,那也是可以去能够去拼通这一个 pc 二了,看到没有啊? 呃,那我们在这个地方呢,他是有一个两条路径的啊,那你一个呢是走上面,那你一个呢是走另外一边的下面啊?来,我把这个,这个,这个什么画笔啊?打开一下。 好,我们把这个打开,这个抓包的话不需要看了。好,呃,我们这边上面的路径呢是我们的主路径,这一条 作为一个备用路径,当你不知道对不对他走哪边的时候,那其实呢你是可以在你的 pc 上来去确认一下这个地址对不对? 那通过这些地址呢,那你会知道他先经过哪里再经过哪里。呃,那相信你们对会对这个地方会陌生一点啊,对不对?为什么呢? 我们有你用这个缺失,你看他的结果,有一个前提是你要对这个网络的环境你是要非常熟悉的, 然后我们这个公网这你看啊,你看着就很陌生,因为你不熟悉这些 ip 地址到底意味着什么,所以你看着会比较陌生。哎,但是你看一下这个内网这边对不对?我这里是这样的啊,这里的话是点一 点二,这边是点三。 好,那我们看这个结果对不对?到二五四,二五四是网关,是 r 一 啊, 然后再到二,再到一哦,先到网关 r 一, 再到这里,再到这里,你就可以知道这么样的一个路径,如果说这一条不能用了,对不对?那比如说我们把这条给拔掉啊,那他再来一个结果,走哪边啊?我们来看一下。 好,你看这个结果的话呢,他就会先到网关,然后到这个 r 三, 到 r 二,再到我们的 pc, 是 不是?那我们就可以去检测一下他是先经过谁,然后再经过谁。好吧,呃,那我们就来学习一下啊, 他们之间的到底是怎么样的一个工作过程。好吧,嗯, 在这里呢,大家可以脑补一下前面几集所讲的 t t l 的 作用啊。好了,那我们看一下,首先它是怎么样的呢?啊?我们的 p c e 会先发一个报文, 那其中这里面的原 ip 呢?是自己的啊,叫做幺九二幺六八一点一 目标 ip, s 是 原 ip, d 叫做 destination ip, 我 要返回二点一,对不对啊?那其中这里面的 t t l 呢?是等于一 哎? t t l 呢?它是等于一的,好吧,会发送这样的一个报文来改个颜色啊,改成黄色对不对?这样的一个报文,那会发给我们的网关啊,一不同网段嘛,肯定会发给网关,那么啊,一收到之后, 所有的三层设备收到网报文,将 ip 当中的 t t l 减一,是不是啊? 好, p c 一 呢,发送一个数据包,里面的 t t l 呢,是等于一, 对不对? r 一 也就是我们的网关设备收到之后呢,需要将 t t l 减一,一减一就等于零,是不是? 嗯,那我们之前学习过等于零会干嘛呀?我就不会帮你继续去发了呀,是不是?好,这个时候啊,阿姨看到这个豹纹 ttl 已经是零了, 给 pce 呢返回一个错误的消息,告诉你,你的 ttl 超时了, 可能有还路,对不对?请你检查你的网络啊。好,那来啊,我们在 pce 可以 去抓包看一下, 然后我们确认一下它怎么样的啊, 那你看一下啊, 第一个豹纹 t t l 等于多少?看到没有,是不是等于一呀,对不对?路由器收到之后要减一嘛,然后我们路由器呢会告诉你啊,你的这个报文有问题, t t l 超时了,然后会告诉你是不是? 那同时呢,这个我用哪个 ip 告诉你啊?我哪个口收到你这个报文,我就用那个口去告诉你,是不是。好 好,你看回报这里,这个不是路由器的 ip 吗?我们是通过这个来知道了第一台网络当中第一台路由器的 ip 地址是多少啊,是不是啊?哦, 这个,哎,不小心删掉了啊,看下一个吧。 好,你看啊,就这样的一个豹纹嘛。哦,我们要看这个,就这样的一个豹纹,那你看这边呢,会有它的一个 ip 地址, 这边的原 ip 地址的话呢,这里的原 ip 地址就是网络中第一台路由器的路方向接口的 ip 地址,也就是收到这个报文的 ip, 然后我们呢会以 会以这个 ip 地址给你回复,对不对?一个错误消息,那这样呢,我们的 pce 就 知道了 网络中第一台路由器的 ip 地址是多少,对不对?然后你可以看我们的结果啊, 我们第一行这个 ip, 它是不是等于是不跟这边一样的呀?二五四,那你这里也是二五四,看到没有啊?啊,一样的啊,对不对?那后面的呢,后面的报文我们会加一,什么意思啊?就说 知道了 p。 呃,网络中第一台设备的 ip 地址,我们继续发, pce 呢,发送一个 ttl 等于二的一个报文 i 一个 icmp 的 报文啊, 那 r 一 呢?收到之后,那减一,那剩下还剩下一,然后继续呢?发给我们按照录入表啊,那你会继续去发给这个图里面的 r 三, 发给我们这边的一个 r 三, r 三收到之后减一之后呢,剩下零,然后跟我们上面的处理过程的话呢,是一模一样的啊,然后 呃 r 三给你返回一个 t t l 超时的错误信息,好吧,错误信息,错误消息。然后呢,会携带 r 三的路方向接口的 ip 地址作为原, 是不是?然后你看我们这边啊,后面发了包就是幺零一点一,三点三,那你看,那我们所以我们就知道了网络当中第二台路由器的 ip 是 多少了,看到了没有?嗯, 好,那 pce 知道了第二台路由器 ip 地址是多少,那后面的也是以此类推嘛,对不对?那 p c e 呢?继续发送 t t l 那 等于二等于三的。 呃,报文 r 一 收到之后减一,那就等于二。 r 三收到之后呢,减一就等于一。 r 二收到之后呢, 减一,那就等于零,是吧?然后 r 二呢?给你回复是不是?然后我们 p c e 知道了网络中第三台路由器 的 ip 地址是多少,是吧? ttl 呢?就是这样的一个工作模式了。好吧,好,这个它的过程啊。呃,那你呢会看到一些东西。 嗯,为什么有些是超超时,一些新号呀,是不是啊?哦, 因为我们一些设备,你看啊,用这个东西呢会暴露你的 ip, 是 不是我们觉得有一些安全问题啊,那我们也可以去关闭。嗯,路由器怎么关呢? 路由器的话,比如说第二个设备我不想看到啊。那我们可以在它的路方向接口,比如说这个零杠零杠零。在这个接口呢,用一个 i c n p t t l 这个 send send 对 不对?用这个命令啊,当然这个是开启的啊,你想关掉的话,你在这个命令前面呢加个安度就可以了啊, 你可以加个这个,这个是在录方向接口关闭 t t l 检测功能,就是缺少的功能啊。好吧,好,关了之后呢,我们再去缺少一下,那你呢?可以去看到一个不一样的效果,看到没有 阿萨你就看不到了。好吧,那这个呢,就是我们这个缺少路由追踪。好吧,那这个就可以去探测你的路径 转发路径是怎么样的啊?当然前提呢,你得知道对应的 ip 代表着什么东西。好吧,那本期视频,那我就到这里啊,那我们下集视频再见。

屏蔽是什么?屏蔽是最为常用的网络诊断工具,通过发送 i c m p 数据包并接受响应来测试网络联通性、食盐及丢包率。比如想检测百度网站的联通性, 这个工具呢,很多小伙伴都会用,但是这得要重点说明几点。首先,一、一般普通上网刷视频时间一百毫秒以内都可以满足,视频会议和网游呢,五十毫秒以内也可以满足。 二、为了防止网络攻击,有些网站是不允许拼的,无法拼通不代表网络不通,可以尝试其他网页拼测试。 三、 ping 是 从一端到另一端的全程测试,食盐是整体食盐,跨了省市或者运营商,食盐可能到五十毫秒以上,如果另一端是国外服务器,那可能一百毫秒到三百毫秒都是正常的。如果想看之间每一集路由转发的食盐,可以尝试 trace 命令。 所以说拼不通不代表咱们网断了。好,那么本期视频就到这里了,我是智家小妹哥,大家有什么问题可以发私信或者留言告诉我,我会尽量给大家解决的,我们下期视频再见!拜拜!

网络故障常用命令,这里主要讲拼命令,拼命令中每个字符代表的意思。