【摘要】 这一章节你的角色就是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. Google I/O 大会上提出的UI优化相关

    1.ListView的Adapter Adapter在ListView中的工作原理是: 上图也正好反映出ListView使用了Adapter来适配数据源. 每一个Item条目都是通过Adapter.g ...

  2. m101 真*sb($\huge 全场最瞎$)

    不想说这场考试,T1全场切,但是我: T3全场30,但是: 鬼知道我为什么敲的是p*p啊(而且还炸精了!) kuku----! $\huge 全场最瞎$

  3. one of neural network

    map source:https://github.com/microsoft/ai-edu Fundamental Principle inputs: characteristic value th ...

  4. 对学习Python自然语言处理的一点儿感悟

    研究生阶段,如果一开始找不到知识点,那就结合导师的研究课题以及这个课题设计到的知识领域,扎好基础知识能力.以我研究的自然语言处理领域为例,如果一开始不知道研究点,且又要安排学习计划,那么我会在选择: ...

  5. tomcat日志(1)

    tomcat日志配置之一自带log 2014-03-19 09:58 33737人阅读 评论(2) 收藏 举报 分类: java(49) 问题 tomcat每次启动时,自动在logs目录下生产以下日志 ...

  6. Java设计模式(20):命令模式

    本文源码:GitHub·点这里 || GitEE·点这里 一.生活场景 1.场景描述 智能电脑的品牌越来越多,由此诞生了一款电脑控制的APP,万能遥控器,用户在使用遥控器的时候,可以切换为自家电视的品 ...

  7. Linux 解决ntfs文件系统问题,支持外设(U盘等设备)的即插即拔

    # rpm -q fuse //查看这个软件有没有安装,一般安装系统都会装(最小安装例外) fuse-2.9.2-10.el7.x86_64 # yum -y install gcc # wget h ...

  8. C++中对封装的语法支持——重载运算符

    重载运算符 1.对于自定义类型,编译器不知道运算规则,而重载运算符会将两个对象相加转换为函数调用. 2.运算符重载转换的函数调用,函数名字是固定的规则. (1) 如果重载+号运算符,函数名字就是:op ...

  9. vux组件的样式变量的使用

    使用x-header,查看文档发现有个样式变量,可以改变x-header的样式 这玩意怎么用呢? 1.在项目中创建一个.less样式文件,例如我这里是创建一个src/style/vux_theme.l ...

  10. ubuntu 16.04上源码编译glog和gflags 编写glog-config.cmake和gflags-config.cmake | compile glog and glags on ubuntu 16.04

    本文首发于个人博客https://kezunlin.me/post/977f5125/,欢迎阅读! compile glog and glags on ubuntu 16.04 Series comp ...