ARP 询问之 校级路由器的猫腻
前情
我为什么选定 172.17.174.73
这个 ip 来进行测试。戳前情 Scapy之ARP询问
前言
在一般家用路由器局域网下,进行 arp 广播,说:我是192.168.1.100,你们谁的 ip 是 192.168.1.200,把你的 mac 发给我。
这时候,如果 192.168.1.200 这个地址存在,相应的设备会给 192.168.1.100 发送自己的 mac 地址。如果 192.168.1.200 不存在,192.168.1.100 则收不到任何响应。
这时候,我说:我是192.168.1.100,你们谁的 ip 是 163.177.151.110,把你的 mac 发给我。则收不到任何回应,因为 163.177.151.110 这个 ip 不在该局域网下,确切来说这是个公网ip 。
以上情况在一般路由器下实践有效。问题出在下面的校级路由器上。
校级路由器的猫腻
校级路由器下,我是 172.17.171.111 , 我发送 arp 广播说:我是 172.17.171.111 ,你们谁的 ip 是 172.17.171.120 ,把你的 mac 发给我。
这时候,我收到回应 mac ,00:00:00:00:00:01
好,现在正常校级路由器下,我是 172.17.171.111 , 我发送 arp 广播说:我是 172.17.171.111 ,你们谁的 ip 是 172.17.168.1 ,把你的 mac 发给我。
这时候,我收到回应 mac ,00:00:00:00:00:02
好,现在正常
注:172.17.168.1 是校园网的网关校级路由器下,我是 172.17.171.111 , 我发送 arp 广播说:我是 172.17.171.111 ,你们谁的 ip 是 172.17.174.73 ,把你的 mac 发给我。
这时候,我收到回应 mac , 00:00:00:00:00:02
这就很奇怪了,你发给我的 mac 怎么和网关发给我的一样
ping 172.17.174.73 可以ping通校级路由器下,我是 172.17.171.111 , 我发送 arp 广播说:我是 172.17.171.111 ,你们谁的 ip 是 172.17.174.74 ,把你的 mac 发给我。
这时候,我没收到回应 mac
ping 172.17.174.74 不能ping通校级路由器下,我是 172.17.171.111 , 我发送 arp 广播说:我是 172.17.171.111 ,你们谁的 ip 是 163.177.151.110 ,把你的 mac 发给我。
这时候,我收到回应 mac , 00:00:00:00:00:02
这就很奇怪了,你发给我的 mac 怎么和网关发给我的一样
注:163.177.151.110 是 www.baidu.com 的一个ip根据后面的ARP代理原理。问题5可以被解决,新的问题 是,用相同的代码测试家用路由器,arp 询问外网 ip 的mac ,没有任何回应。
查询同一个 ip 的mac,有时候能查到,有时候则是网关的 mac
原因是 对应设备给我返回了自己的 mac ,网关也返回了自己的mac
网关给我它的mac地址几个意思
网关每次都给我他的mac。什么时候设备会返回给我mac呢,当我和设备处于同一路由器端口下的时候。
一个端口下分配的ip有很奇怪。比如,我用172.17.171.可以寻到一台172.17.173.的mac,但是寻不到一台172.17.172.*的mac
后来我再测,实际上不管我查哪个ip的mac,网关每次都返回给我了他自己的mac。这样第4个问题就出问题了 +_+
问题
- 172.17.174.73 这个 ip 对应的终端是否切实存在
- 校级路由器相比家用路由器这是玩的什么高端套路
后记
ARP代理 上场
ARP代理基本原理
当ARP请求目标跨网段时,网关设备收到此ARP请求,会用自己的MAC地址返回给请求者,这便是代理ARP
如果我的 pc 设置了网关(上文实验就是这种条件下) - 采用正常ARP 。arp 询问的 ip 如果是跨网段的,如 ip 为 163.177.151.110,我就会问:谁是 172.17.168.1 ,把你的 mac 发给我 。 这时候172.17.168.1 会把它的 mac 发给我。
如果我的 pc 没有设置网关 - 采用代理ARP 。arp 询问 ip 如果是跨网段的,如 ip 为 163.177.151.110,我就会问:谁是 163.177.151.110 ,把你的 mac 发给我 。这时候172.17.168.1 会把它的 mac 发给我。
总结
①当电脑没有网关(采用代理ARP)时:"跨网段访问谁,就问谁的MAC"
②当电脑有网关(采用正常ARP)时:"跨网段访问谁,都问网关的MAC"
③无论哪种ARP,跨网段通信时,发送方请求得到的目标MAC地址都是网关MAC
ARP 询问之 校级路由器的猫腻的更多相关文章
- Scapy之ARP询问
引言 校园网中,有同学遭受永恒之蓝攻击,但是被杀毒软件查下,并知道了攻击者的ip也是校园网.所以我想看一下,这个ip是PC,还是路由器. 在ip视角,路由器和pc没什么差别. 实现 首先是构造arp报 ...
- ARP协议、路由器详细工作原理
ARP原理分析 第一次通信时,有对方IP地址但是没有目标MAC地址,该PC就会在网络层启动ARP协议生成一个ARP报文"我叫1.1,我的MAC是AA;谁是1.3,你的MAC是多少?" ...
- IP 协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)
目录 IP协议首部格式地址解析协议 ARP逆向地址解析协议 RARP网际控制报文协议 ICMP网际组管理协议IGMP IP 数据报首部 IP数据报首部格式: 最高位在左边,记为0 bit:最低位在右边 ...
- (网络层)IP 协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)
目录 IP协议首部格式地址解析协议 ARP逆向地址解析协议 RARP网际控制报文协议 ICMP网际组管理协议IGMP IP 数据报首部 IP数据报首部格式: 最高位在左边,记为0 bit:最低位在右边 ...
- ARP防火墙绑定网关MAC地址预防ARP攻击和P2P终结者
[故障原理] 要了解故障原理,我们先来了解一下ARP协议. 在局域网中,通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)的.ARP协议对网络安全具有重要的意义.通过伪造IP地址和M ...
- arp:地址解析协议(Address Resolution Protocol)(来自维基百科)
地址解析协议(Address Resolution Protocol),其基本功能为通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。它是IPv4中网络层必不可少的协议,不过在I ...
- 网络层 IP 协议首部格式与其配套使用的四个协议(ARP,RARP,ICMP,IGMP)
目录 IP协议首部格式地址解析协议 ARP逆向地址解析协议 RARP网际控制报文协议 ICMP网际组管理协议IGMP IP 数据报首部 IP数据报首部格式: 最高位在左边,记为0 bit:最低位在右边 ...
- TCP/IP协议——ARP详解
本文主要讲述了ARP的作用.ARP分组格式.ARP高速缓存.免费ARP和代理ARP. 1.学习ARP前要了解的内容 建立TCP连接与ARP的关系 应用接受用户提交的数据,触发TCP建立连接,TCP的第 ...
- <TCP/IP>地址解析协议ARP
从前两章中有学到,网络层地址和链路层地址是由不同的,一个是物理地址,一个是IP地址.物理地址固定存储在网卡中,不会改变,而IP地址是可以网络管理员和用户自己分配的 在传统的IPv4网络中,一台A主机要 ...
随机推荐
- awk练习笔记
题目数据如下: Mike Harrington:(510) 548-1278:250:100:175 Christian Dobbins:(408) 538-2358:155:90:201Susan ...
- html 头标签 <meta http-equiv 属性应用。
比较常用的 1. 网页出现乱码时设置字符集 <meta http-equiv="content-Type" content="text/html; charset= ...
- python3通过纯真IP数据库查询IP归属地信息
在网上看到的别人写的python2的代码,修改成了python3. 把纯真IP数据库文件qqwry.dat放到czip.py同一目录下. #! /usr/bin/env python # -*- co ...
- golang中的字符串拼接
go语言中支持的字符串拼接的方法有很多种,这里就来罗列一下 常用的字符串拼接方法 1.最常用的方法肯定是 + 连接两个字符串.这与python类似,不过由于golang中的字符串是不可变的类型,因此用 ...
- 2017-2018-1 20155234 实验三 实时系统及mypwd实现
2017-2018-1 20155234实验三实时系统及mypwd实现 实验三-并发程序-1 学习使用Linux命令wc(1) 基于Linux Socket程序设计实现wc(1)服务器(端口号是你学号 ...
- 【CQOI2014】数三角形
题面 题解 考虑使用总数减去不合法的数量 首先将\(n, m\)都加上\(1\),将网格变成坐标系 总数即为\(\large\binom{n\times m}{3}\) 不合法的有三种情况: 三个点在 ...
- 5469: [FJOI2018]领导集团问题
5469: [FJOI2018]领导集团问题 链接 题意: 要求在一棵树内选一个子集,满足子集内的任意两个点u,v,如果u是v的祖先,那么u的权值小于等于v. 分析: dp[u][i]表示在u的子树内 ...
- 爬虫-设置代理ip
1.为什么要设置代理ip 在学习Python爬虫的时候,经常会遇见所要爬取的网站采取了反爬取技术导致爬取失败.高强度.高效率地爬取网页信息常常会给网站服务器带来巨大压力,所以同一个IP反复爬取同一个网 ...
- Wannafly挑战赛24 B 222333
小水题???但是时间限制异常鬼畜,跑了2min \(P | (2^m)*(3^n)-1\)的意思就是\(2^m 3^n = 1 (\text{mod }P)\) 设f[i]表示3^k=i的最小的k 然 ...
- 闭包初体验 -《JavaScript面向对象编程指南》
下面是我对闭包的理解:(把他们整理出来,整理的过程也是在梳理) 参考<JavaScript面向对象编程指南> 1.首先,在理解闭包之前: 我们首先应该清楚下作用域和作用域链 作用域:每个函 ...