网络链路层之(1)基础概念

网络链路层之(1)基础概念


Author: Once Day Date: 2024年3月27日

一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦…

漫漫长路,有人对你微笑过嘛…

全系列文章可参考专栏: 通信网络技术_Once-Day的博客-CSDN博客。

参考文章:

-《TCP/IP详解卷一》


文章目录

  • 网络链路层之(1)基础概念
        • 1. 概述
          • 1.1 介绍
          • 1.2 常见实现
          • 1.3 TCP/IP协议族中作用
        • 2. 环回接口
        • 3. 最大传输单元(MTU)
        • 4. 常见数据链路层隧道协议
        • 5. 常见链路层攻击

1. 概述
1.1 介绍

数据链路层,将网络层交下来的IP数据报组装成帧(frame),在两个相邻的链路节点上传输。该层还可以对帧进行检错甚至纠正。

在这里插入图片描述

数据链路层主要使用两种类型的信道:

  • 点对点信道,使用1对1的通信方式。

  • 广播信道,使用1对多的广播通信模式。

**链路(link)**是从一个结点到相邻结点之间的一段物理线路,中间没有任何其他的交换结点。

数据链路(data link),在链路通信,所需要的硬件和软件协议,总和在一起就构成了数据链路。也就是现在所属的网络适配器。

数据链路层无需考虑物理层传输的细节,直接抽象成沿水平方向传递数据就好。

数据链路层的协议必须考虑三个问题:

  • 封装成帧,在一段数据前后分别添加首部和尾部,进行帧定界。当检测到帧接收不完整时,可以直接丢弃。

  • 透明传输,需要对数据里可能涉及帧定界字符的字符进行转义,即字节填充或字符填充。这些数据对于数据链路层的协议来说就是透明的。

  • 差错控制。通信线路并非理想,传输过程可能出现差错。数据链路层广泛使用循环冗余校验CRC来进行检错。

差错检测只是保证接受的帧几乎没有错误,但是还是会出现帧丢失、失序、重复等问题,因此是不可靠传输

但对于通信质量较差的无线传输链路,数据链路层使用确认和重传机制。

但有线传输的通信质量已经挺好了,不确认、不重传可以提高效率。

数据链路层网络中,协议数据单元PDU的大小是有限制的,以太网中为1500,PPP协议保持兼容一般也为1500.

该限制特征被称为最大传输单元MTU,在包含所有链路的整个网络路径上,最小MTU称为路径MTU。

1.2 常见实现

通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡,它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。

  • 在相邻节点间提供数据传输服务,成帧、物理寻址、流量、差错、接入控制。

  • 局域网:IEEE802.2定义LLC子层(数据链路层),IEEE802.3的以太网标准,802.3标准定义了物理层和数据链路层的MAC子层。

  • 广域网:HDLC、PPP、Frame Relay

在这里插入图片描述

1.3 TCP/IP协议族中作用

TCP/IP协议族中,链路层主要有三个目的:

(1)为IP模块发送和接收IP数据报;

(2)为ARP模块发送ARP请求和接收ARP应答;

(3)为RARP发送RARP请求和接收RARP应答。

2. 环回接口

在计算机网络中,环回接口是一个特殊的逻辑接口。它常常用于测试和诊断。在Linux操作系统中,环回接口被称为lo,它允许计算机与自己通信。可能听起来有点像科幻小说中的自言自语,但这其实是一个非常实用的功能。环回接口有一个标准的IP地址,通常是127.0.0.1,这个地址被大家熟知地称为“localhost”。

当在Linux系统上运行网络服务,如Web服务器或数据库服务器时,环回接口就发挥了作用。开发者在本机上测试服务是否正常运行时,会访问127.0.0.1。这样,他们就不必担心网络配置的问题,可以专注于服务的功能性测试。因为网络数据包在没有离开主机的情况下,就被送达并返回,这就像是给自己写信并立刻收到回信一样。

环回接口不仅仅用于测试,它也是网络配置的一个重要组成部分。例如,很多安全策略和系统配置规则会特别考虑到环回流量,确保它不会被错误地过滤或重定向。此外,环回地址也常常用作预留地址,用于软件配置中指代本机。

值得一提的是,环回接口的工作方式确保了它是极其高效的。由于数据不需要经过任何物理网络设备,环回流量几乎没有延迟,也不会占用实际的网络带宽。这就像是用内部邮件系统代替了外部邮寄,相比之下快捷而高效。

但是,环回接口也有其局限性。显而易见,它不能用于与网络上的其他设备通信。此外,如果网络服务配置不当,仅监听环回地址,那么它将无法接受来自其他设备的连接请求。

本地环回口通常有以下的属性:

  • IPv4地址一般为127.0.0.1,子网掩码255.0.0.0,Linux默认为lo口,Windows中默认没安装Microsoft环回适配器。
  • IPv6中只有地址::1地址被定义用于环回。
  • 接口MTU一般为16KB,也可以配置得更大(最大2GB)。

下面是Ubuntu设备lo口详情:

ubuntu->~:$ ifconfig lo
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 6985873  bytes 3023510986 (3.0 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6985873  bytes 3023510986 (3.0 GB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

3. 最大传输单元(MTU)

在网络通信中,MTU(Maximum Transmission Unit,最大传输单元)是指在网络层上可以传输的最大数据包大小。每种网络技术都有其标准的MTU值。例如,以太网的常规MTU大小是1500字节。

这个参数至关重要,因为它决定了数据包的传输效率和网络的拥塞状况。如果一个数据包的大小超过了网络的MTU,它就需要被分割成更小的片段以便传输,这个过程称为分片。分片可能会增加延迟和处理开销,因为每个片段都需要在目的地被重新组装。

而路径MTU(Path MTU,路径最大传输单元)则是指在数据包传输路径上所有网络段中MTU的最小值。这个概念是为了解决数据包在传输过程中可能遇到的不同MTU限制的问题。

路径MTU发现(PMTUD,Path MTU Discovery)是一种机制,它允许网络设备发现从发送端到接收端之间路径上的最小MTU值,以避免分片。

这个机制通过发送一个设置了“不分片”(DF)标志的IP数据包来工作,如果这个数据包太大而无法通过网络的某个段,那么这个段就会丢弃该数据包,并发送一个ICMP(Internet Control Message Protocol,互联网控制消息协议)的“不能分片的错误”消息回发送端,通知它路径MTU的限制。

4. 常见数据链路层隧道协议

数据链路层的隧道协议允许网络流量在第三层(网络层)以下进行封装,从而在两个相隔较远的网络节点之间建立一个逻辑链接。这些隧道协议通常用于VPN(Virtual Private Network,虚拟专用网络)的构建,以确保数据传输的安全性和私密性。以下是一些常见的数据链路层隧道协议的简要介绍:

  1. 点对点协议(PPP):PPP是一种用于在点对点链路上封装网络层数据包的数据链路层通信协议。它支持多种网络层协议,如IP和IPX,并且能够提供认证,如PAP(Password Authentication Protocol)和CHAP(Challenge-Handshake Authentication Protocol)。

  2. 点对点隧道协议(PPTP):PPTP是一种用于实现VPN的隧道协议,它使用了PPP协议的封装方法,并在TCP/IP网络中创建一个虚拟隧道。PPTP允许用户通过互联网以加密的形式安全地访问公司网络。

  3. 第二层隧道协议(L2TP):L2TP结合了PPTP和L2F(Layer 2 Forwarding Protocol)的特点,通常与IPSec(Internet Protocol Security)结合使用,以提供隧道的机密性、发送者身份认证和数据完整性。L2TP本身不提供加密,但它创建了一个隧道,IPSec负责数据包的加密。

  4. 安全套接字隧道协议(SSTP):SSTP是微软开发的一种隧道协议,它通过HTTPS在客户端和服务器之间建立VPN连接,可以穿越防火墙和NAT(Network Address Translation)设备。SSTP提供了高级的加密功能和较好的兼容性。

  5. 以太网隧道协议(EtherIP/L2TPv3/VXLAN):EtherIP、L2TP版本3和VXLAN是用于在IP网络上隧道传输以太网流量的协议。它们允许跨越不同的网络基础架构传输以太网帧,并常用于数据中心网络虚拟化。

在选择隧道协议时,网络设计师需要考虑多种因素,如安全性、性能、网络环境的兼容性以及部署的复杂性。例如,尽管PPTP易于设置,但它的安全性已不再被认为是可靠的,因此现代VPN更倾向于使用L2TP/IPSec或SSTP。隧道协议的选择也要适应网络的长期发展,以应对快速变化的网络安全威胁和不断升级的技术标准。

5. 常见链路层攻击

链路层是OSI模型中的第二层,负责在相邻网络节点间的数据帧传输。这一层涉及的协议和硬件设备,如以太网、无线局域网(WLAN)和交换设备,都可能成为攻击者的目标。链路层攻击通常利用链路层协议的缺陷或设计上的缺陷来进行。以下是一些常见的与链路层有关的攻击类型:

  1. MAC地址欺骗(MAC Spoofing):攻击者通过改变其网络接口的MAC(Media Access Control)地址来模仿其他设备。这可以导致多种攻击,如身份冒充、网络访问控制规则绕过等。

  2. ARP欺骗(ARP Spoofing):主要针对IPv4网络,攻击者发送伪造的ARP(Address Resolution Protocol)消息,将自己的MAC地址与网络中另一个设备的IP地址关联起来。这可以导致中间人攻击,攻击者能够截获、修改或阻断两个设备之间的通信。

  3. VLAN跳跃(VLAN Hopping):攻击者尝试从一个VLAN(Virtual Local Area Network,虚拟局域网)跳转到另一个VLAN,以绕过网络分段带来的安全控制。比如,通过双重封装802.1Q标签的方法来欺骗交换机,将数据包发送到不同的VLAN。

  4. DHCP欺骗(DHCP Spoofing):攻击者设置一个假的DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)服务器,对网络内的设备分配IP地址。这可以让攻击者控制受害者设备的网络配置,进行中间人攻击或是网络流量重定向。

  5. 无线网络攻击(Wi-Fi Attacks):在无线网络中,攻击者可能会尝试破解WEP(Wired Equivalent Privacy)或WPA(Wi-Fi Protected Access)密码,进行无线网络监听或未授权访问。此外,还包括“邪恶孪生”(Evil Twin)攻击,攻击者设置一个假的无线接入点来欺骗用户,诱使他们连接并窃取信息。

  6. LLC层攻击(LLC Layer Attacks):在逻辑链路控制(Logical Link Control)层,攻击者可能利用特定的LLC报文格式或流控制机制进行拒绝服务攻击或数据篡改。

要防御这些攻击,网络管理员需要采取多种安全措施,例如使用端口安全功能限制MAC地址的更改,配置动态ARP检查,使用VLAN访问控制列表(ACLs),部署加密无线网络以及监控网络流量以检测异常行为。







Alt

Once Day

也信美人终作土,不堪幽梦太匆匆......

如果这篇文章为您带来了帮助或启发,不妨点个赞👍和关注,再加上一个小小的收藏⭐!

(。◕‿◕。)感谢您的阅读与支持~~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/494324.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring(详细介绍)

目录 一、简介 1、什么是Spring&#xff1f; 2、Spring框架的核心特性 3、优点 二、IOC容器 介绍 1、获取资源的传统方式 2、控制反转方式获取资源 3、DI 4、IOC容器在Spring中的实现 入门案例 1、创建Maven Module 2、引入依赖 3、创建HelloWorld类 4、在Spring的配…

EdgeGallery开发指南

API接口 简介 EdgeGallery支持第三方业务系统通过北向接口网关调用EdgeGallery的业务接口。调用流程如下图所示&#xff08;融合前端edgegallery-fe包含融合前端界面以及北向接口网关功能&#xff0c;通过浏览器访问时打开的是融合前端的界面&#xff0c;通过IP:Port/urlPref…

Overcooked!(并查集区间元素合并优化)

本题链接&#xff1a;登录—专业IT笔试面试备考平台_牛客网登录—专业IT笔试面试备考平台_牛客网登录—专业IT笔试面试备考平台_牛客网 题目&#xff1a; 样例&#xff1a; 输入 5 5 1 1 2 3 1 2 2 2 4 3 1 4 3 2 5 输出 YES YES NO 思路&#xff1a; 根据题意&#xff0c;这…

KubeSphere简单介绍及安装使用

KubeSphere 概述 官网地址&#xff1a;https://kubesphere.io/zh/ 什么是 kubesphere KubeSphere 是一个开源的多云容器管理平台&#xff0c;旨在简化企业级 k8s 集群的部署、管理和运维。它提供了一个可视化的管理界面&#xff0c;帮助用户更轻松地管理和监控 k8s 集群&…

『Apisix进阶篇』动态负载均衡:APISIX的实战演练与策略应用

&#x1f680;『Apisix系列文章』探索新一代微服务体系下的API管理新范式与最佳实践 【点击此跳转】 &#x1f4e3;读完这篇文章里你能收获到 &#x1f3af; 掌握APISIX中多种负载均衡策略的原理及其适用场景。&#x1f4c8; 学习如何通过APISIX的Admin API和Dashboard进行负…

设计模式——行为型——策略模式Strategy

Q&#xff1a;策略模式的特点 A&#xff1a; 具体算法从具体的业务方法中独立出来策略模式是同行为的不同实现 Q&#xff1a;什么时候使用策略模式 A&#xff1a;多个if-else使用策略模式 收费对象类 public class CashContext {private CashStrategy cashStrategy;public…

备考ICA----Istio实验10---为单个主机配置TLS Istio Ingress Gateway实验

备考ICA----Istio实验10—为单个主机配置 TLS Istio Ingress Gateway实验 1. 环境准备 部署httpbin kubectl apply -f istio/samples/httpbin/httpbin.yaml 2. 证书生成 2.1 生成根证书 生成根证书keyfile和crt文件 mkdir example_certs_root openssl req -x509 -sha256 …

Code Review 最佳实践

成功的同行评审策略要求严格记录的流程与非威胁性、协作性环境之间保持平衡。高度规范的同行评审可能会抑制生产力&#xff0c;然而&#xff0c;过于随意的流程往往效果不佳。经理们需要找到一种折中方案&#xff0c;使同行评审既高效又有效&#xff0c;同时促进团队成员之间的…

特斯拉铺路 小米SU7稳了

文 | AUTO芯球 作者 | 李逵 我把特斯拉的销售拉黑了 拉完又后悔了 因为我欠他一个人情啊 具体怎么回事 看完你就会明白了 今天一大早 特斯拉的销售就发信息给我 说从4月1号开始 特斯拉就要涨价了 我以前去看的Model Y 要提价5000块 而且之前的补贴 什么保险补贴、…

Tunes不能读取iPhone的内容,请前往iPhone偏好设置的摘要选项卡,然后单击恢复以将此iPhone恢复为出厂设置

重启itunes: 参考链接&#xff1a; https://baijiahao.baidu.com/s?id1642568736254330322&wfrspider&forpc 人工智能学习网站&#xff1a; https://chat.xutongbao.top

「媒体宣传」媒体邀约几种常见方法!-51媒体

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 媒体邀约的常见方法确实包括电话邀约、邮件邀约、社交媒体邀约以及通过媒体公关公司代邀约等。 电话邀约&#xff1a;这是一种直接且高效的方式&#xff0c;可以通过电话与媒体记者沟通&…

FANUC机器人KAREL语言程序结构(入门)

一、karel语言程序结构 FANUC机器人keral语言编程结构如下图所示&#xff1a; Keral指令对应的基础用法如下所示&#xff1a; 二、创建一个简单的写屏程序 依照对应的karel语法写写入下列程序 运行对应的程序进行测试&#xff1a;

强化安全防护:升级桌面网管软件提升医院信息系统安全

在当今信息化发展的时代&#xff0c;医院作为重要的医疗服务机构&#xff0c;对终端设备的管理尤为重要。然而&#xff0c;随着国家对医院终端管理的要求日益提高&#xff0c;传统的桌面网管软件已经难以满足现代医院的需求。针对这一现状&#xff0c;升级桌面网管软件已成为当…

JVM(五)——类加载阶段

一、类加载阶段 一个类型从被加载到虚拟机内存中开始&#xff0c;到卸载出内存为止&#xff0c;它的整个生命周期将会经历加载 &#xff08;Loading&#xff09;、验证&#xff08;Verification&#xff09;、准备&#xff08;Preparation&#xff09;、解析&#xff08;Resol…

HCIA-Datacom实验_03_实验一:华为VRP系统基本操作

1.运行eNSP&#xff0c;设置-界面设置-自定义界面-设备标签&#xff0c;“总显示接口标签” 打钩。 2.按照实验拓扑添加设备 注&#xff1a;如果是真实环境&#xff0c;需要接两条线&#xff1a; &#xff08;1&#xff09;串口线&#xff1a;电脑USB口到网络设备Console口&am…

第二篇:3.1 广告印象(AD Impression) - IAB与MRC及《增强现实广告效果测量指南1.0》

--- 我为什么要翻译美国IAB科技公司系列标准 翻译计划 第一篇概述—IAB与MRC及《增强现实广告效果测量指南》之目录、适用范围及术语第二篇广告效果测量定义和其他矩阵之- 3.1 广告印象&#xff08;AD Impression&#xff09;第三篇广告效果测量定义和其他矩阵之- 3.2 可见度 …

网络安全-提权篇

我们在文件包含的时候可以将错误的用户名包含进日志&#xff0c;但是权限问题让人很烦恼&#xff0c;今天的侧重点主要是跟大家聊一聊提权 用户名包含进日志参考&#xff1a;RCE with LFI and SSH Log Poisoning - Hacking Articles 目录 一、环境 二、看看权限&#xff08;…

17、GateWay和Sentinel继承实现服务限流

注&#xff1a;本篇文章主要参考周阳老师讲解的cloud进行整理的&#xff01; 1、需求说明 cloudalibaba-sentinel-gateway9528 保护 cloudalibaba-provider-payment9001 2、启动nacos服务器8848 startup.cmd -m standalone 3、启动sentinel服务器8080 java -jar sentinel-dash…

基于java实现学科竞赛管理系统【Springboot+mybatis+layui】

基于java实现学科竞赛管理系统【Springbootmybatislayui】 博主介绍&#xff1a;多年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐留言 文…

深入Facebook的世界:探索数字化社交的无限可能性

引言 随着数字化时代的到来&#xff0c;社交媒体平台已经成为了人们日常生活中不可或缺的一部分&#xff0c;而其中最为突出的代表之一便是Facebook。作为全球最大的社交媒体平台之一&#xff0c;Facebook不仅仅是一个社交网络&#xff0c;更是一个数字化社交的生态系统&#…