目录
基于arp的中间人模式(arp代理),本质也是一种arp欺骗
引言
之前学习了应用层协议:http https
传输层协议:tcp udp
网络层协议:ip
本文介绍数据链路层协议(倒数第二层,最后一次是物理硬件层):以太网协议。
以太网主要用于局域网通信。
广域网就是一个个由路由器互联的局域网,因此广域网通信也是靠的是一个个局域网以太网通信。
数据链路层:用于两个设备(同一种数据链路节点)之间进行传递.
认识以太网
"以太网" 不是一种具体的网络, 而是一种技术标准; 既包含了数据链路层的内容, 也包含了一些物理层的内容. 例如: 规定了网络拓扑结构, 访问控制方式, 传输速率等;

以太网帧格式
以太网的帧格式如下所示:
认识MAC地址


路由器连接两个局域网
跨网络传输的本质就是不同局域网之间的跳转
路由器的进行数据的跳转的时候,先链路层拆包然后到网络层分析ip的src与dest,分析完之后重新交给链路层,然后重新封装mac地址---得到对方的mac。
交换机作用
交换机(Switch)在局域网(Local Area Network, LAN)通信中扮演着核心角色,其主要作用包括以下几点:
1. **数据包转发**:交换机根据数据帧中的MAC地址(媒体访问控制地址)决定如何转发数据。当交换机接收到一个数据帧时,它会检查数据帧的目的MAC地址,并在其MAC地址表中查找相应的端口,然后将数据帧转发到该端口。
2. **MAC地址学习**:交换机会动态地学习连接到其各个端口的主机的MAC地址。当交换机收到一个数据帧时,它会记录下数据帧的源MAC地址和接收该帧的端口,并将其添加到MAC地址表中。
3. **建立和维护MAC地址表**:交换机通过MAC地址表来决定如何转发数据帧。这个表包含了MAC地址与交换机端口的映射关系。交换机会定期更新这个表,以反映网络拓扑的变化。
4. **过滤和隔离流量**:由于交换机是基于MAC地址进行转发的,它能够有效地隔离流量,只将数据帧转发到目的主机所在的端口,而不是广播到所有端口,这减少了网络拥塞并提高了网络的安全性。
5. **支持多个并发通信**:交换机能够同时处理多个端口上的数据传输,因为它为每个端口提供了独立的传输通道,这使得多个设备可以同时进行通信,而不会相互干扰。
6. **全双工通信**:交换机支持全双工通信模式,这意味着设备可以同时发送和接收数据,从而提高了网络的带宽利用率。
7. **网络分段**:通过使用交换机,可以将大型局域网分割成多个较小的虚拟局域网(VLAN),这样可以提高网络性能,增强安全性,并简化网络管理。
8. **网络监控和管理**:许多交换机支持网络管理协议,如SNMP(简单网络管理协议),允许网络管理员监控网络状态、配置交换机参数、诊断网络问题等。
9. **提供服务质量(QoS)**:一些高级交换机支持QoS功能,允许网络管理员为不同类型的流量分配优先级,确保关键应用(如VoIP或视频会议)获得足够的带宽和低延迟。
总之,交换机通过提供高效、可靠的数据转发机制,极大地提高了局域网的性能和可管理性。
认识MTU
MTU相当于发快递时对包裹尺寸的限制. 这个限制是不同的数据链路对应的物理层, 产生的限制.
MTU对IP协议的影响


MTU对UDP协议的影响
一旦UDP携带的数据超过1472(1500 - 20(IP首部) - 8(UDP首部)), 那么就会在网络层分成多个IP数据报.
MTU对于TCP协议的影响
查看硬件地址和MTU
ARP协议


ARP数据报的格式
arp欺骗
注意:博主只是站在知识讨论与分析的角度,去只是跟大家一起学习、探讨arp欺骗的知识,并无其他目的!
基于arp的中间人模式
arp协议负责建立ip与mac地址的映射,那万一存在一个中间人,传给你的响应报文是恶意的修改过的报文呢?
ARP欺骗(ARP Spoofing)是一种网络攻击技术,它利用ARP协议的漏洞在本地网络内进行攻击。以下是ARP欺骗的基本原理和可能的影响:
### 原理:
1. **ARP协议的工作方式**:ARP协议用于将网络层的IP地址解析为链路层的MAC地址。当一个设备需要向另一个设备发送数据时,它会发送一个ARP请求来获取目标设备的MAC地址。
2. **欺骗过程**:
- 攻击者发送伪造的ARP回复给目标设备,声称自己的MAC地址是与某个IP地址关联的。
- 目标设备收到这个ARP回复后,会更新其ARP缓存,将那个IP地址映射到攻击者的MAC地址。
- 结果是,发往该IP地址的数据包会被发送到攻击者的MAC地址。
### 影响:
1. **中间人攻击(Man-in-the-Middle, MitM)**:攻击者可以拦截、修改或重新发送网络中的数据包。
2. **数据窃取**:攻击者可以窃取敏感信息,如登录凭证、个人信息等。
3. **服务拒绝**:攻击者可以丢弃或修改数据包,导致网络服务不可用。
4. **会话劫持**:攻击者可以接管已经建立的会话。
### 防御措施:
1. **静态ARP表**:手动设置ARP表项,将IP地址与正确的MAC地址绑定,防止ARP欺骗。
2. **ARP监控**:使用工具监控网络中的ARP活动,检测异常。
3. **端口安全**:在交换机上配置端口安全,限制每个端口可以学习的MAC地址数量。
4. **使用ARP欺骗防护工具**:部署专门的软件来检测和防止ARP欺骗。
5. **网络隔离**:通过VLAN或其他技术隔离网络,减少ARP欺骗的影响范围。
ARP欺骗是一种常见的网络攻击手段,尤其是在局域网环境中。了解其原理和防御措施对于维护网络安全至关重要。
比如,我是ipA macA,我想给ip B通信,但是ip B回复的ARP中不给我macB,而是回复我了mac C,那么host B发送的arp中建立的映射就是ipB对应mac C,当我想再次给mac C发送数据时,实际上发送给了host B.
基于arp的中间人模式(arp代理),本质也是一种arp欺骗
基于ARP的中间人攻击(包括ARP代理)本质上是一种ARP欺骗。ARP(Address Resolution Protocol)地址解析协议是用来将网络层的IP地址解析为链路层的MAC地址的协议。在局域网中,ARP欺骗是指攻击者通过发送伪造的ARP响应包,使得网络中的其他设备错误地将攻击者的MAC地址与某个IP地址关联起来。
中间人攻击(Man-in-the-Middle Attack, MitM)则是一种攻击类型,攻击者在通信双方之间插入自己,使得双方的通信都经过攻击者,从而能够窃听、篡改或重新发送信息。
ARP代理(ARP Proxy)是一种网络技术,它允许一个设备代表另一个设备响应ARP请求,通常用于解决网络中的ARP相关问题或进行网络管理。但是,如果未经授权使用ARP代理,则可以用于进行中间人攻击,这时ARP代理的行为就变成了ARP欺骗。攻击者可以利用ARP代理来截获网络流量,实现以下目的:
1. 窃听通信内容。
2.篡改数据包内容。
3.中断或拒绝服务。
因此,当ARP代理被用于恶意的目的时,它就是一种ARP欺骗行为。在使用此类技术时,必须遵守相应的法律法规和网络道德,确保网络安全和用户隐私不被侵犯。
其他重要协议或技术
DNS(Domain Name System)





ICMP协议


ping命令

traceroute命令
也是基于ICMP协议实现, 能够打印出可执行程序主机, 一直到目标主机之前经历多少路由器(ICMP可以为你选择良好的路由途径).
NAT技术
NAT(网络地址转换)是一种在网络中转换IP地址的技术,主要用于在私有网络和公共网络之间进行地址转换。以下是NAT技术的基本介绍:
1. **目的**:NAT技术的主要目的是解决IPv4地址短缺的问题。通过允许私有网络使用内部(私有)IP地址,然后在访问公共网络时转换为唯一的公共IP地址,NAT可以有效地扩展有限的公共IP地址资源。
2. **私有IP地址**:在NAT中,私有网络中的设备使用私有IP地址空间,这些地址范围在RFC 1918中定义,包括以下三个地址段:
- 10.0.0.0 到 10.255.255.255
- 172.16.0.0 到 172.31.255.255
- 192.168.0.0 到 192.168.255.255
3. **工作原理**:当私有网络中的设备需要访问公共网络(如互联网)时,NAT设备(如路由器)会将其发出的数据包的源IP地址从私有地址转换为公共地址。当数据包从公共网络返回时,NAT设备会根据转换记录将目标IP地址转换回相应的私有地址。
4. **NAT类型**:
- **静态NAT**:一对一的映射,将一个私有IP地址映射到一个公共IP地址。
- **动态NAT**:从一组公共IP地址中动态地分配地址给私有网络的设备。
- **PAT(端口地址转换)**:也称为NAT过载,允许多个私有IP地址共享一个公共IP地址,通过端口号来区分不同的会话。
5. **优点**:
- 节省公共IP地址资源。
- 提供了内部网络的安全性,因为私有IP地址对外是不可见的。
- 简化了网络配置和管理。
6. **缺点**:
- 可能导致网络延迟,因为NAT设备需要处理地址转换。
- 某些应用可能不兼容NAT,如某些P2P应用。
- 端口映射和防火墙配置可能较为复杂。
NAT技术是现代网络中广泛使用的技术,尤其是在家庭和小型企业网络中,它帮助这些网络在不具备足够公共IP地址的情况下也能访问互联网资源。随着IPv6的逐渐普及,NAT技术的重要性可能会有所下降,因为IPv6提供了几乎无限的地址空间。

NAPT

NAT技术的缺陷
内网穿透
nat技术的存在,可以让各个内网ip隔绝,因此就算是不同内网的内网ip出现冲突,也会通过nat技术进行通信,这样可以节约ip资源
内网穿透(NAT穿透)是指在网络中,将处于私有网络(内网)中的计算机或服务器的端口映射到公网上,使得外部的网络可以直接访问内网中的资源。由于大多数内网中的计算机使用的是私有IP地址,这些地址在公网上是不可路由的,因此通常无法直接从外部网络访问内网中的服务。
通过这种技术就可以让外部网络借助公网访问内网的服务了。
NAT和代理服务器
正向代理与反向代理
代理服务器又分为正向代理和反向代理.
正向代理:代理我们的需求
比如学校往往有自己的服务器,我们连接学校的wifi去访问资源的时候,就需要先经过正向服务器的代理
反向代理
反向代理更多的是代理服务器这部分,主要负责服务器的负载均衡。
如:双十一期间,我们大量的网购需求,可能会让淘宝的服务器收到大量的用户请求,为了让这些用户请求均匀的分布在各个服务器上,就需要先就给一个代理服务器,然后代理服务器会将需求合理的分发给后台负责业务处理的服务器。
翻墙
由于翻墙是个敏感的话题,我们就简单提一嘴,让大家知道原理即可(注意:博主只是站在学习与分享知识的角度去跟大家讨论本话题!!!)
我们访问服务器的时候,要先经过运行商的代理(正向代理),因此当我们访问外网,运营商就可以掐断我们的需求。
但是在港澳地区,就可以自由访问外网。
因此就出现了这样一条路径:我们访问港澳地区的服务器,这是被运营商所许可的,而港澳地区的服务器恰好又是一个代理服务器,我们访问这个代理服务器的时候,数据就可以向外网进行交互,这就是所谓的翻墙。
这里其实还牵扯http隧道技术:借助http的包装,其实内部的内容是一些“其他的内容”(其他协议的报文),让数据看上去只是http(不多说了,大家理会就好)。
当然,上文中的特殊地区的服务器起到的作用也是正向代理。
正向代理是代表客户端向服务器发送请求的代理服务器。它通常位于客户端和互联网之间,主要作用如下:
隐私保护:隐藏客户端的真实IP地址,保护客户端的隐私。
内容缓存:可以缓存网页内容,加快客户端访问速度(服务器上已经存在的影片,我们不需要重复下载)。
访问控制:控制内部网络对互联网的访问,实现上网行为管理。
突破限制:帮助用户访问一些地域限制的网站
反向代理是代表服务器接收客户端的请求的代理服务器。它通常位于服务器和互联网之间,主要作用如下:
负载均衡:将大量请求分配到多个服务器,提高服务的处理能力。
安全性:隐藏服务器的真实IP地址,提高服务器安全性。
SSL加密和解密的集中处理:减轻服务器负担,提高访问效率。
缓存静态内容:加速内容的分发。
面试题:输入url后发生的事情
这是一个经典的面试题,也是开放型题目,面试官就是为了考察你对于综合知识的把握程度。
在这里博主给出以下思路,欢迎大家补充。
1.输入网址
2.DNS解析域名
3.发送给对方个http或者https
https牵扯:CA证书 + 加密方式
4.对方发来http回应 包括各种图片资源
5.本地cookie,服务器session
cookie与session的作用:保存数据痕迹 和区别:存储的位置、时长、安全性等性质不一样