【摘要】 这一章节你的角色就是ping报文这个“使者”,你要去往目的地,然后回到本机。然而目的地路漫漫,不知道要经过多少个小地盘(局域网),没两把刷子也不好行走江湖。所以你作为使者,每到达一个新的地盘,就把ARP这把刷子拿出来吼一吼。这一节就是讲的这把刷子的威力。

一、ARP命令介绍

首先,ARP作为高攻击神器,是片攻击的,一定范围内全杀,而不是单点指向的技能。其攻击范围就是子网的大小,同一个子网内的所有主机都会收到ARP神器的伤害。正因为ARP报文是广播的,所以它是ping使者随身携带、开山问路的不二之刷。

其次,ARP神器基本靠一招走遍天下,发动攻击前吼一句:“谁是小明,请吱一声”,然后声波传遍当前子网各个角落。其中真实的小明乖乖回答:“我在这”。

二、Ping报文与ARP结合

当Ping报文拥有了ARP这个探路神器后,想要到达最终的目的地就相当的easy了。当他处于一个站点,面对一个新的地盘的时候,先吼一声ARP大招,就知道一下站出口在哪里了。然后直接跳到下一站,接着再吼一声ARP找出下一站位置,继续跳到下一站。这样重复N次就到达了最终目的地。

基于上面的逻辑可以看到,在定位网络不通的时候,使用上一节的方法还找不出原因的情况下,可以看看arp报文有没有到。但是请记住,arp是一段子网一段子网定位的。

ps:一般网络安全组是不会禁止arp协议的,因为它本身是为了查询mac地址,而mac地址是二层的,是网络通信的基础。

三、ARP报文

抓个arp报文举例:

#tcpdump -i eth1 -n arp

arp who-has 10.175.10.210 tell 10.175.10.78

arp reply 10.175.10.210 is-at fa:16:3e:bf:1e:e2

这里基本可以看出来,ARP要做的事情就是把IP翻译为MAC地址。实际上在以太网中,同一个局域网中的两台主机要进行通信,必须要知道目标主机的MAC地址。而TCP/IP协议中,网络传输只关心IP地址。所以需要有一种方法将IP地址“翻译”为MAC地址。这也就是ARP要做的事情了。

四、ARP表

既然已经知道了IP与MAC的对应关系,为了避免每次找路都得“翻译”一次,那就把它记下来。以后要用的时候直接查本地的对应表就行了。同时为了保证有效性,缓存的记录会在一定时间后失效。这就是ARP表。

当然,也可以设置静态ARP表。只是一般我们懒得这么做。

通过以下命令可以查询当前缓存的arp表:

#arp -a

ps:定位问题一般不会用到arp表,只需要在目的端抓包看看arp报文有没有到达即可。

作者:tsjsdbd

【跟唐老师学习云网络】 - 第6篇 ARP你在哪的更多相关文章

  1. 【华为云技术分享】跟唐老师学习云网络 : Kubernetes网络实现

    当今K8s独霸天下之时,咱们站在更高的角度,好好的看看K8s网络是以什么理念构筑的.以及一个容器集群的好保姆,是如何分别照顾 南北流量和东西流量的. 一.简单介绍下Kubernetes 略..容器集群 ...

  2. 【跟唐老师学习云网络】 - 第7篇 Tcpdump大杀器抓包

    [摘要] 前面章节的网络协议栈相关的信息建议大家多学习一遍,因为这些都是最基础的东西,想玩好云网络必备基本功.. 一.上帝视角 之前提到过定位问题可以开启上帝视角,那么如何开启就要依靠tcpdump这 ...

  3. 《跟唐老师学习云网络》 -第4篇 router路咋走啊【华为云技术分享】

    [摘要] 好了,到这里至少你应该能看懂路由表信息了.给你一个目的IP,你也应该知道它会使用哪一条路由了. 路怎么走就看骚年你了~ 一.路由 其实关于网络大家遇到最多的问题就是:卧 槽,为什么不通啊! ...

  4. 【跟唐老师学习云网络】-第8篇 iptables - filter过滤功能

    [摘要] 前面的各种协议已经可以把基本可用的物理网络世界给形成了,在正常情况下,它可以玩的很溜.比如组个局域网办公,或者打个联机魔兽争霸,都没有什么问题. 一.背景介绍 前面的各种协议已经可以把基本可 ...

  5. 《跟唐老师学习云网络》 -第5篇 Ping喂报文

    [摘要] 这一章节你的角色是国王,你要派一个小兵去对方打探一下.是站在你的角度看这个小兵.哦,对了,这个小兵的名字叫"喂". 一.Ping命令介绍 ping就是用来检测一下网络能不 ...

  6. python基础学习笔记——网络编程(协议篇)

    一 互联网的本质 咱们先不说互联网是如何通信的(发送数据,文件等),先用一个经典的例子,给大家说明什么是互联网通信. 现在追溯到八九十年代,当时电话刚刚兴起,还没有手机的概念,只是有线电话,那么此时你 ...

  7. 带你熟悉云网络的“电话簿”:DNS

    摘要:无论你域名怎么解析,最终我还是要用IP和别人通信的.域名只是你的皮囊,IP才是你的灵魂. 本文分享自华为云社区<<跟唐老师学习云网络> - DNS电话簿>,作者: tsj ...

  8. OpenFlow能解决私有云网络VLAN问题么

    本文转载自:http://network.51cto.com/art/201202/314310.htm 在关于私有云网络的文章中,我们首先探讨了物理网络是否影响私有云.本文我们将讨论如何通过软件定义 ...

  9. 深入浅出新一代云网络——VPC中的那些功能与基于OpenStack Neutron的实现(一)

    VPC的概念与基于vxlan的overlay实现很早就有了,标题中的"新"只是一个和传统网络的相对概念.但从前年开始,不同于以往基础网络架构的新一代SDN网络才真正越来越多的走进国 ...

随机推荐

  1. P3976 [TJOI2015]旅游(未完成)

    #include<iostream> #include<cstdlib> #include<cstring> #include<cstdio> #inc ...

  2. 如何编译安装Linux内核

    操作系统环境 VMware workstation15 Pro ubuntu18.04 LTS 待编译内核5.3.10版本 内核下载地址 kernel.org 环境配置 在正式编译前需要安装部分软件. ...

  3. 创建linux系统下的虚拟机

    1.打开VMware软件 2.创建新的虚拟机 3.下一步 4.点击 稍后安装操作系统——下一步 5.选择   其中版本 我的镜像是这个版本所以选择这个 6.下一步  设置虚拟机名称  要保存的位置 7 ...

  4. web常用自动化库——selenium总结

    概述 selenium是一个模拟控制浏览器操作的自动化库,它可以做到元素定位,鼠标事件,浏览器事件,js脚本执行等操作 与request不同的是,request是单独请求一个http,而seleniu ...

  5. MQ应用之解耦

    简介 消息队列 MQ 既可为分布式应用系统提供异步解耦和削峰填谷的能力,同时也具备互联网应用所需的海量消息堆积.高吞吐.可靠重试等特性. 应用场景 削峰填谷:诸如秒杀.抢红包.企业开门红等大型活动时皆 ...

  6. jsp页面不乱码,外部引用的js弹出对话框乱码

    今天在做一个课程设计的时候,写到一个界面注册,在用js判断数据的正确性时,碰到了一个js弹出框的乱码问题.在网上找寻了很久,也找了很多博客看,但是发现怎么样都不能解决我的问题,下面给出几个比较经典的解 ...

  7. .NET Core前后端分离快速开发框架(Core.3.0+AntdVue)

    .NET Core前后端分离快速开发框架(Core.3.0+AntdVue) 目录 引言 简介 环境搭建 开发环境要求 基础数据库构建 数据库设计规范 运行 使用教程 全局配置 快速开发 管理员登录 ...

  8. 宋宝华:Linux设备驱动框架里的设计模式之——模板方法(Template Method)

    本文系转载,著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 作者: 宋宝华 来源: 微信公众号linux阅码场(id: linuxdev) 前言 <设计模式>这本经典 ...

  9. SpringBoot 源码解析 (六)----- Spring Boot的核心能力 - 内置Servlet容器源码分析(Tomcat)

    Spring Boot默认使用Tomcat作为嵌入式的Servlet容器,只要引入了spring-boot-start-web依赖,则默认是用Tomcat作为Servlet容器: <depend ...

  10. nyoj 41-三个数从小到大排序(STL --> sort(a, a+n) 升序)

    41-三个数从小到大排序 内存限制:64MB 时间限制:3000ms Special Judge: No accepted:31 submit:44 题目描述: 现在要写一个程序,实现给三个数排序的功 ...