认清楚服务器的真正身份--深入ARP工作原理
我们知道IP地址是ISP分配给我们的,IP不能作为服务器的唯一的身份,那么服务器真正的身份是什么呢?MAC
IP地址直接的通信在底层要转换到MAC直接的通信,那他们如何通信的呢?
1.简介
出场人物:艾拼同学简称IP,马珂同学简称MAC,红娘 艾人品 简称ARP
为描述方便,后面都以简称称呼。
上面的文章《你所忽略的DNS---DNS实战及深度解读》和《访问了一次百度网页,你都经历了什么?https及tcp协议揭秘》都提到IP和MAC生活在不同得圈子。
IP是个程序猿,生活的圈子叫:逻辑地址;MAC是一名教师,生活的圈子叫:物理地址;

按照道理,IP和MAC一辈子都不会有交集,但缘分最终让他们有了交集--ARP是一个红娘,专门促成这种事情。
那我们先来看看IP和MAC的家吧
windows进去cmd命令行,输入
ipconfig /all
结果如下:

IP住的逻辑地址为:172.16.86.71
MAC住的物理地址为:48-8A-D2-9D-D9-29
2.arp如何让ip找到别的mac呢?
ipconfig 仅仅可以让我看到一个家庭,那如何让ip同学认识到更多的mac这样的人呢?我们知道可以通过ip间的相互通信
2.1 ARP请求
2.1.1 没有缓存的arp

2.1.2有缓存的arp

2.1.3 如何查看本机的arp缓存呢
查看局域网其它机器的mac地址 arp -a

2.2 响应报文

3.arp欺骗
地址解析协议(ARP),ARP(Address Resolution Protocol),是一个位于TCP/IP协议栈中的网络层。当局域网内计算机间(或者是计算机与网关间)需要通信时,使用ARP协议获取目标IP地址对应的MAC地址,然后计算机间再通过该MAC地址完成数据包发送。ARP欺骗一般目的是把自己伪装成网关,从而欺骗目标机器,使本应发送到真实网关的数据包发送到欺骗者的机器。
攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。如果欺骗者机器不对这些数据包作处理,当被欺骗数据包到达后就会被本机丢弃(因为自己到底不是网关,还不知道如何处理这类数据包),这当然是不允许的
arpspoof 是一款进行arp欺骗的工具,攻击者通过毒化受害者arp缓存,将网关mac替换为攻击者mac,然后攻击者可截获受害者发送和收到的数据包,可获取受害者账户、密码等相关敏感信息。
4.arp防御
黑客采用ARP软件进行扫描并发送欺骗应答,同处一个局域网的普通用户就可能遭受断网攻击、流量被限、账号被窃的危险。由于攻击门槛非常低,普通人只要拿到攻击软件就可以扰乱网络秩序,导致现在的公共网络、家庭网络、校园网、企业内网等变得脆弱无比。
目前网络安全行业现有的ARP防御方案,基本都是上面两个方法的具体实现。我们来看看这张防御图:

①当黑客发起ARP欺骗包时,会途径局域网里面的交换机或无线路由器等网络设备;
②如果网络设备能够识别这种欺骗包,并且提前丢弃掉,则电脑/手机端就不会被欺骗;
用户端的ARP防御方法,要么安装ARP防火墙,要么做ARP双向绑定。对于绝大部分用户来讲,虽然安装防火墙不是保证百分百安全了,但是能够解决很大一部分的隐患。
5.总结
nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。
参考文献
【1】https://www.cnblogs.com/csguo/p/7527303.html
【2】https://www.cnblogs.com/csguo/p/7527073.html
【3】https://www.cnblogs.com/csguo/p/7527582.html
【4】https://blog.csdn.net/china_jeffery/article/details/78689582
【5】https://blog.csdn.net/lansefly1990/article/details/86574677
【6】https://baike.baidu.com/item/nmap/1400075?fr=aladdin
认清楚服务器的真正身份--深入ARP工作原理的更多相关文章
- ARP协议原理学习
一.ARP的作用. 首先在window 的命令行中输入arp -a即可查看本机的arp缓存表.主机要发送数据包时,需要填充目的IP及其IP地址对应的MAC.当我们只有目的IP地址时,如何得到其对应的M ...
- HTTP 请求未经客户端身份验证方案“Anonymous”授权。从服务器收到的身份验证标头为“Negotiate,NTLM”
转自:http://www.cnblogs.com/geqinggao/p/3270499.html 近来项目需要Web Service验证授权,一般有两种解决方案: 1.通过通过SOAP Heade ...
- NFS服务器工作原理
一.NFS简介 NFS是Network File System的缩写,中文称为网络文件系统,它的主要功能是通过网络(一个局域网)让不同的主机系统之间可以共享文件或目录,NFS的客户端(一般为应用服务器 ...
- ARP工作过程、ARP欺骗的原理和现象、如何防范ARP欺骗
地址解析协议(Address Resolution Protocol,ARP)是在仅知道主机的IP地址时确定其物理地址的一种协议. 下面假设在一个局域网内,主机A要向主机B发送IP数据报. ARP ...
- DHCP及DHCP多作用域服务器工作原理
一.DHCP服务是什么 DHCP称为动态主机配置协议.DHCP服务允许工作站连接到网络并且自动获取一个IP地址.配置DHCP服务的服务器可以为每一个网络客户提供一个IP地址.子网掩码.缺省网关.一个W ...
- NFS笔记(一)NFS服务器工作原理及详细配置
一.NFS工作原理 1.什么是NFS服务器 NFS就是Network File System的缩写,它最大的功能就是可以通过网络,让不同的机器.不同的操作系统可以共享彼此的文件. NFS服务器可以让P ...
- ARP攻击原理简析及防御措施
0x1 简介 网络欺骗攻击作为一种非常专业化的攻击手段,给网络安全管理者,带来严峻的考验.网络安全的战场已经从互联网蔓延到用户内部的网络, 特别是局域网.目前利用ARP欺骗的木马病毒在局域网中广泛传 ...
- ARP协议工作原理实验
一.实验目的 验证"在向目的主机发送数据包时会先查询ARP高速缓存,如果ARP高速缓存中已保存了目的主机的MAC地址,不进行ARP查询,使用ARP高速缓存中的MAC地址:如果缓存中没有IP对 ...
- Web服务器的工作原理
Web服务器的工作原理 Web服务器工作原理概述 很多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它们是怎样处理来自全世界的http请求的?它们在幕后做了 ...
随机推荐
- Shell基础 -Linux从入门到精通第九天(非原创)
文章大纲 一.关于shell二.shell进阶(重点)三.学习资料下载四.参考文章 一.关于shell 1. 什么是shell 1.1 shell简介 Shell(外壳) 是一个用 C 语言编写 ...
- MySql || 快速创建100w条记录
平时每个开发者都会讨论数据量大时,sql的优化问题.但是并不是每个人都会有100w的数据量可以用来实战,那么今天我们就自己动手,模拟一个100w数据量的表. 创建原理 其实创建的方法有很多,有快的也有 ...
- 数据库系统概论(新技术篇)--中国人民大学【第13讲】KEY-VALUE数据库(键值对数据库)
市面上主流的分布式文件系统(FS): (Hadoop的)HDFS,(Google的)GFS 详见ppt 1.数据服务与键值对数据库: 数据服务:data serving数据服务:数据的简单 ...
- tf.gather_nd()
tf.gather_nd( params, indices, name=None, batch_dims=0) TensorFlow链接:https://tensorflow.google.cn/ap ...
- eclipse中解决/**/多行注释代码后,格式变乱的问题
1 2 3 4 5
- nginx 搭建上传服务器
nginx webdav 服务器搭建 该模块可以为Http webDAV 增加PUT,DELETE,MKCOL,COPY和MOVE等方法.模块在默认编译的情况下是不被包含的,需要指定编译 ./conf ...
- ajax中responseText与responseXML区别
1."responseText”属性以字符串形式返回HTTP响应:“responseXML”属性以XML形式返回HTTP响应.function getTel() { var telText ...
- jsp获取map
1.简单Map User user = new User(); user.setName("zmy"); user.setAge(); user.setBirthday(new D ...
- Pandas | 04 Panel 面板
面板(Panel)是3D容器的数据.面板数据一词来源于计量经济学,部分源于名称:Pandas - pan(el)-da(ta)-s. 3轴(axis)这个名称旨在给出描述涉及面板数据的操作的一些语义. ...
- django跨域问题解决
在django中,访问非同源网站(协议,域名,端口号)时,会出现: 解决方案: 1.安装 django-cors-headers pip install django-cors-headers 2.修 ...