[计算机网络]--MAC/ARP/DNS协议

news2024/11/19 15:33:55

前言

作者:小蜗牛向前冲

名言:我可以接受失败,但我不能接受放弃

  如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 

目录

一、认识以太网

1、局域网中主机的通信

2、认识以太网

3、基于MAC协议在谈局域网中主机的通信 

二、ARP协议 

1、什么是ARP协议

 2、ARP数据报的格式

3、ARP欺骗 

三、DNS协议

1、DNS产生的背景

2、ICMP协议 

四、NAT技术

1、NAT技术背景

 2、NAT和代理服务器


本期学习:认识以太网,了解APR协议,DNS协议,ICMP协议,理解NAT技术和代理服务器

在前面博客中我们学习了,应用层,传输层,网络层的相关协议,我们知道报文的传递是自顶向下的,报文要想发送的网络中要经过最底层数据链路层的转发,下面我们继续学习在数据链路层中的相关知识。

一、认识以太网

在认识以太网前,我们先重新在了解一下在局域网主机是如何进行通信的

1、局域网中主机的通信

 局域网(LAN)是指在相对较小的地理范围内建立的计算机网络,通常是在单个建筑物、办公室、校园或家庭中。局域网允许多台计算机和其他网络设备(如打印机、路由器等)之间进行数据通信和资源共享,而无需依赖互联网或广域网。

那怎么理解局域网中的主机的通信

感性理解:

假设我们现在在一间教室中,老师对全班同学说,张三你作业为什么没做?这个信息全班同学都听到了,但是只会有一个叫张三的同学去向老师解释,其他同学都会忽略这个信息,因为他们知道老师并不是对他们说的。

在上面小故事中,教室相当于局域网,同学们相对于众多主机,老师向班同学说的话就相当于报文。老师是通过向全班同学广播信息,向张三传递信息,但是信息是有对象的,所有其他同学(其他的主机)会自动忽略这条广播信息,相对当于老师是在对张三通信。

所以在局域网中通信的方式是通过广播信息进行的

我们知道每台主机都有他自己的标识,那标识从哪里来,这就来谈谈下面的以太网

2、认识以太网

概念理解

  • "以太网" 不是一种具体的网络, 而是一种技术标准;
  • 既包含了数据链路层的内容, 也包含了一些物理层的 内容. 例如: 规定了网络拓扑结构, 访问控制方式, 传输速率等;
  • 例如以太网中的网线必须使用双绞线; 传输速率有10M, 100M, 1000M等; 以太网是当前应用最广泛的局域网技术; 和以太网并列的还有令牌环网, 无线LAN等;

 以太网帧格式

 以太网的帧格式如下所示:

  • 源地址和目的地址是指网卡的硬件地址(也叫MAC地址), 长度是48位,是在网卡出厂时固化的;
  • 帧协议类型字段有三种值,分别对应IP、ARP、RARP;
  • 帧末尾是CRC校验码 

对比理解MAC地址和IP地址 

  • IP地址描述的是路途总体的 起点 和 终点;
  • MAC地址描述的是路途上的每一个区间的起点和终点

在用MAC帧(以太网帧)传输数据会有一个叫MTU{以太网的最大传输单元}在前面博文中解释过)来限制了传输速度,我们可以通过ifconfig命令查MTU

ifconfig
//命令查MTU

在Unix、Linux和类Unix系统中,ifconfig 命令用于查看和配置计算机上的网络接口的状态和参数。

  1. 显示网络接口信息: 使用 ifconfig 可以显示当前计算机上所有网络接口的配置信息,包括接口名称、IP地址、子网掩码、MAC地址、数据包统计信息等。

  2. 配置网络接口: ifconfig 可以用于配置网络接口的各种参数,例如设置IP地址、子网掩码、广播地址、MTU(最大传输单元)等。

  3. 激活/停用网络接口: 可以使用 ifconfig 命令来激活或停用特定的网络接口。

  4. 修改MAC地址: 在某些情况下,可以使用 ifconfig 命令来修改网络接口的MAC地址。

  5. 显示网络接口统计信息: ifconfig 还可以显示有关网络接口的数据包传输统计信息,例如接收的数据包数量、发送的数据包数量、错误数量等。

3、基于MAC协议在谈局域网中主机的通信 

假设我们现在一个局域网中有8台主机,现在M1想M8发送信息,是如何通过MAC帧协议做到的?

M1会以 广播的形式将报文发送到局域中,所有主机都收到了,但是他们查看目的IP不是自己就将报文丢弃。只有M8是目标主机,他收到报文,会到报文做报头和有效载荷的分离,拿到信息后,在对M1进行应答。

但是我们在细细想一下,在网络发送信息是非常频繁的,可能所有主机的都在做接收报文,对接收报文做出应答的工作。

但在如果众多主机都同时发送消息,他们在传输的时候,本质上就是网线上光电信号的传输,那么就会造成干扰。

在局域网中我们将这种现象称为数据碰撞。

为了防止出现这种现象就有令牌环网,以太网这样的技术。

简单的说一下,令牌环网其实就是给每一个要通信的主机一块令牌,主机通完信息后就将令牌传输给另外的主机,达到局域网中始终只有一个主机进行发送信息。

而以太网就更加的简单了,有一个碰撞检测和碰撞避免算法,达到局域网中始终只有一个主机进行发送信息。

其实局域网就相当于一份临界资源,以太网根据碰撞检测和碰撞避免算法,就可以达到在任何时刻只有一台主机能够向临界资源区中写入信息。

了解完上面的知识,来思考一下问题?

问题1因为碰撞域的存在,一台主机发送信息,一次信息的字节数是越大越大,还是越小越好?

肯定是越小越好,虽然信息的发送是光速,但是我们极端的想要是数据无尽大,那么在传输的时候,肯定会发送碰撞。所以为了保证传输效率才会有TUM来限制报文在数据链路层传输大小

问题2交换机在碰撞域中的作用是什么?

  • 识别局部碰撞,对于发生碰撞的数据不进行转发。
  • 那假设M1和M6的数据发生了碰撞 ,交换机对左侧的碰撞不进行转发,那么右侧发生碰撞的概率就降低了。

二、ARP协议 

我们知道在数据链路层的报文会被封装为MAC帧,发生给目标主机的,这就告诉我们必须清楚目标目标主机的MAC地址。

那我们是怎么得到的,就要通过在网络中经过路由器一跳获取到,具体是怎么实现的呢?

这和ARP协议有关

1、什么是ARP协议

ARP不是一个单纯的数据链路层的协议, 而是一个介于数据链路层和网 络层之间的协议;

ARP协议建立了主机 IP地址 和 MAC地址 的映射关系.

  • 在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址;
  • 数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢 弃;
  • 因此在通讯前必须获得目的主机的硬件地址;

那主机A是如何在网络中要到向主机BMAC地址的?

  • 首先当主机A的报文被封装为MAC帧发到连接主机B的路由器时候,(这里假设路由器没有缓存存主机B的MAC地址)。
  • 路由器就在他所连接的局域网网中广播ARP请求,就如上图那样询问目标主机的硬件地址
  • 其中主机收到后,通过ARP协议的规定就会自动丢弃掉报文。
  • 当主机B收到后,就会进行ARP应答,将自己的硬件地址发生给目标地址

上面我们说了那么多ARP协议,还不知道他长什么样子,一起去见见他吧! 

 2、ARP数据报的格式

 

 

有效载荷部分 

  • 硬件类型指链路层网络类型,1为以太网; 
  • 协议类型指要转换的地址类型,0x0800为IP地址;
  • 硬件地址长度对于以太网地址为6字节
  • 协议地址长度对于和IP地址为4字节;
  • op字段为1表示ARP请求,op字段为2表示ARP应答。

注意:

  • 每台主机都维护一个ARP缓存表,可以用arp -a命令查看。缓存表中的表项有过期时间(一般为20分钟),如 果20分钟内没有再次使用某个表项,则该表项失效,下次还要发ARP请求来获得目的主机的硬件地址 

 ARP协议的存在就是为获取目的主机的MAC地址,得到后并不是由他进行发生报文的,而是在将目标主机MAC地址封装为MAC帧在进行发送

3、ARP欺骗 

 ARP欺骗(ARP spoofing)是一种网络攻击技术,利用ARP(地址解析协议)的工作原理来欺骗网络中的其他设备,以获取数据流量或进行中间人攻击。ARP协议用于将IP地址映射到物理MAC地址,以便在局域网中进行通信。ARP欺骗攻击通常由恶意主机执行,它会发送虚假的ARP响应来欺骗网络中的其他设备,告诉它们欺骗者拥有目标IP地址对应的MAC地址。

 

ARP欺骗攻击的步骤如下:

  1. 监听网络流量: 攻击者首先在局域网中监听网络流量,以了解目标设备的IP地址和MAC地址。

  2. 发送虚假ARP响应: 攻击者向目标设备发送虚假的ARP响应,宣称自己拥有目标设备的IP地址,并提供自己的MAC地址。

  3. ARP缓存污染: 目标设备接收到虚假的ARP响应后,会更新自己的ARP缓存表,将目标IP地址对应的MAC地址设置为攻击者的MAC地址。

  4. 中间人攻击: 一旦ARP缓存被修改,攻击者就可以接收到目标设备发送的所有数据流量,并且可以对数据进行窃听、篡改或重定向,实施中间人攻击

ARP欺骗攻击可能会导致网络中的数据泄露、信息窃取、会话劫持等安全问题。为了防止ARP欺骗攻击,可以采取一些防御措施,如使用静态ARP条目、ARP监控工具、网络入侵检测系统(IDS)、网络流量加密等。 

三、DNS协议

DNS是一整套从域名映射到IP的系统

1、DNS产生的背景

TCP/IP中使用IP地址和端口号来确定网络上的一台主机的一个程序. 但是IP地址不方便记忆. 于是人们发明了一种叫主机名的东西, 是一个字符串, 并且使用hosts文件来描述主机名和IP地址的关系

最初, 通过互连网信息中心(SRI-NIC)来管理这个hosts文件的

  • 如果一个新计算机要接入网络, 或者某个计算机IP变更, 都需要到信息中心申请变更hosts文件.
  • 载更新新版本的hosts文件才能正确上网.其他计算机也需要定期下

 这样就太麻烦了, 于是产生了DNS系统.

  • 个组织的系统管理机构,维护系统内的每个主机的IP和主机名的对应关系。
  • 如果新计算机接入网络, 将这个信息注册到数据库中;
  • 用户输入域名的时候, 会自动查询DNS服务器, 由DNS服务器检索数据库, 得到对应的IP地址.

 至今, 我们的计算机上仍然保留了hosts文件. 在域名解析的过程中仍然会优先查找hosts文件的内容

cat /etc/hosts 
//查看hosts文件

域名简介

主域名是用来识别主机名称和主机所属的组织机构的一种分层结构的名称.

www.baidu.com
//百度的域名

域名使用 . 连接

  •  com: 一级域名. 表示这是一个企业域名.
  • 同级的还有 "net"(网络提供商), "org"(非盈利组织) 等.
  • baidu: 二级域名, 公司名. www: 只是一种习惯用法. 之前人们在使用域名时, 往往命名成类似于ftp.xxx.xxx/www.xxx.xxx这样的格 式, 来表示主机支持的协议

2、ICMP协议 

 ICMP协议是一个 网络层协议 一个新搭建好的网络, 往往需要先进行一个简单的测试, 来验证网络是否畅通; 但是IP协议并不提供可靠传输. 如果丢 包了, IP协议并不能通知传输层是否丢包以及丢包的原因

 ICMP主要功能包括:

  • 确认IP包是否成功到达目标地址.
  • 通知在发送过程中IP包被丢弃的原因.
  • ICMP也是基于IP协议工作的. 但是它并不是传输层的功能, 因此人们仍然把它归结为网络层协议;
  • ICMP只能搭配IPv4使用. 如果是IPv6的情况下, 需要是用ICMPv6

 

ping命令

ping 是一个常用于测试网络连接的命令行工具。它可用于检测主机之间是否能够互相通信,以及测量网络的延迟和丢包率。

要 ping Google 的公共 DNS 服务器(8.8.8.8),可以使用以下命令:

ping 8.8.8.8

一个值得注意的坑 :

有些面试官可能会问: telnet是23端口, ssh是22端口, 那么ping是什么端口? 千万注意!!! 这是面试官的圈套

 ping命令基于ICMP, 是在网络层. 而端口号, 是传输层的内容. 在ICMP中根本就不关注端口号这样的信息

traceroute命令

traceroute 是一个用于跟踪数据包从本地主机到目标主机之间的路径的网络诊断工具。它通过向目标主机发送一系列的数据包,并记录它们经过的路由器(或者说是跳点)来实现这一功能。在每一跳,traceroute 都会显示相应的延迟信息,以及该跳点的 IP 地址和域名(如果有)。

例如,要跟踪到 Google 的公共 DNS 服务器(8.8.8.8),可以使用以下命令:

traceroute 8.8.8.8

 

traceroute 会发送一系列的 UDP 数据包(在大多数情况下)或 ICMP 数据包到目标主机,每个数据包在 TTL(Time to Live)字段上设置不同的值。当一个数据包到达某一路由器时,它的 TTL 值会减少,当 TTL 达到零时,路由器会将该数据包丢弃,并向源主机发送一个 ICMP 错误报文,报告 TTL 过期。

通过观察返回的信息,可以了解数据包经过的路由器,以及从本地主机到目标主机的路径上的网络延迟情况。这对于排除网络连接问题和优化网络路径非常有用。

一些常用的 traceroute 选项包括:

  • -m max_ttl:设置最大跃点数,即数据包允许经过的最大路由器数量。
  • -q nqueries:设置每个跃点上发送的数据包数量。
  • -w waittime:设置等待每个跃点的响应的超时时间。

 注意,traceroute 可能会受到防火墙或网络策略的限制,而且不保证在所有网络环境中都能够正常工作。

四、NAT技术

1、NAT技术背景

之前我们讨论了, IPv4协议中, IP地址数量不充足的问题 NAT技术当前解决IP地址不够用的主要手段, 是路由器的一个重要功能

  • NAT能够将私有IP对外通信时转为全局IP.
  • 也就是就是一种将私有IP和全局IP相互转化的技术方法: 很多学校, 家庭, 公司内部采用每个终端设置私有IP, 而在路由器或必要的服务器上设置全局IP;
  • 全局IP要求唯一, 但是私有IP不需要; 在不同的局域网中出现相同的私有IP是完全不影响的;

 NAT IP转换过程

  •  NAT路由器将源地址从10.0.0.10替换成全局的IP 202.244.174.37;
  • NAT路由器收到外部的数据时, 又会把目标IP从202.244.174.37替换回10.0.0.10;
  • 在NAT路由器内部, 有一张自动生成的, 用于地址转换的表;
  • 当 10.0.0.10 第一次向 163.221.120.9 发送数据时就会生成表中的映射关系

那么问题来了, 如果局域网内, 有多个主机都访问同一个外网服务器, 那么对于服务器返回的数据中, 目的IP都是相同 的. 那么NAT路由器如何判定将这个数据包转发给哪个局域网的主机? 这时候NAPT来解决这个问题了. 使用IP+port来建立这个关联关系 

这种关联关系也是由NAT路由器自动维护的. 例如在TCP的情况下, 建立连接时, 就会生成这个表项; 在断开连接后, 就会删除这个表项 

NAT技术的缺陷

由于NAT依赖这个转换表, 所以有诸多限制

  • 无法从NAT外部向内部服务器建立连接;
  • 装换表的生成和销毁都需要额外开销;
  • 通信过程中一旦NAT设备异常, 即使存在热备, 所有的TCP连接也都会断开

 2、NAT和代理服务器

路由器往往都具备NAT设备的功能, 通过NAT设备进行中转, 完成子网设备和其他子网设备的通信过程.

代理服务器看起来和NAT设备有一点像. 客户端像代理服务器发送请求, 代理服务器将请求转发给真正要请求的服务 器; 服务器返回结果后, 代理服务器又把结果回传给客户端.

么NAT和代理服务器的区别

  • 从应用上讲, NAT设备是网络基础设备之一, 解决的是IP不足的问题. 代理服务器则是更贴近具体应用, 比 如通过代理服务器进行翻墙, 另外像迅游这样的加速器, 也是使用代理服务器.
  • 从底层实现上讲, NAT是工作在网络层, 直接对IP地址进行替换. 代理服务器往往工作在应用层.
  • 从使用范围上讲, NAT一般在局域网的出口部署, 代理服务器可以在局域网做, 也可以在广域网做, 也可以跨网

代理服务器是一种应用比较广的技术. 

  • 翻墙: 广域网中的代理.
  • 负载均衡: 局域网中的代理.

代理服务器中的翻墙就不多说了,那什么是负载均衡呢?

在客户端本来是直接向服务器进行请求的,但是对于大公司的说,服务器肯定是有很多台的,但是用户不知道服务器那台工作已经负载了,可能存在一种情况,就用户一直请求公司的一台服务器吗,其他的服务器就闲着。这就导致了资源的分配不均衡,所有,现在我们在客户端到公司的服务器间在连接一台服务器(代理),专门用了合理的分配公司服务器的使用,这就是负载均衡。

 

 代理服务器又分为正向代理和反向代理

正向代理

  • 正向代理是代理服务器位于客户端和目标服务器之间的一种代理方式
  • 客户端向正向代理服务器发送请求,然后正向代理服务器将请求转发给目标服务器,最终将目标服务器的响应返回给客户端。
  • 对客户端来说,目标服务器是不可见的,所有的请求和响应都经过正向代理服务器。
  • 正向代理常用于增加访问控制和安全性,也可用于绕过防火墙、提供匿名性等。

 反向代理

  • 反向代理是代理服务器位于目标服务器和客户端之间的一种代理方式
  • 客户端向反向代理服务器发送请求,然后反向代理服务器将请求转发给一个或多个目标服务器,最终将其中一个目标服务器的响应返回给客户端。
  • 对目标服务器来说,客户端是不可见的,所有的请求和响应都经过反向代理服务器。
  • 反向代理常用于负载均衡、提供高可用性、安全性、缓存等。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ARM系列 -- 虚拟化(五)

在ARM体系结构中,处理器内部有通用计时器,通用计时器包含一组比较器,用来与系统计数器进行比较,一旦通用计时器的值小于等于系统计数器时便会产生时钟中断。 大家看到这里是不是想起了前面讲GIC时提到的PPI(private p…

招聘系统架构的设计与实现

在当今竞争激烈的人才市场中,有效的招聘系统对企业吸引、筛选和管理人才至关重要。本文将探讨招聘系统的架构设计与实现,帮助企业构建一个高效、可靠的人才招聘平台。 ## 1. 系统架构设计 ### 1.1 微服务架构 招聘系统通常采用微服务架构,将…

移动Web系统中无监督KPI异常检测的监督式微调

简介 本文介绍由清华大学、南开大学、中国移动研究院与必示科技共同合作的论文:移动Web系统中无监督KPI异常检测的监督式微调。该论文已被The Web Conference 2024(International World Wide Web Conference)会议录用,论文标题为&…

【Hudi】核心概念

https://www.bilibili.com/video/BV1ue4y1i7na?p17&vd_sourcefa36a95b3c3fa4f32dd400f8cabddeaf 大数据新风口:Hudi数据湖(尚硅谷&Apache Hudi联合出品) 1 基础概念 1.1 时间轴(TimeLine) 1.2 文件布局(File Layout) 1.3 索引(In…

Leetcode—82. 删除排序链表中的重复元素 II【中等】

2024每日刷题(117) Leetcode—82. 删除排序链表中的重复元素 II 实现代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val…

npm login报错 ‘proxy‘ config is set properly. See: ‘npm help config‘

报错提示 解决办法 按照以下的顺序执行命令行 检查自己的代理 npm config get proxy npm config get npm config get https-proxy npm config get registry代理和缓存置空并且设置新镜像 npm config set proxy null npm config set https-proxy null npm config set regist…

面试笔记系列七之多线程+分布式系统基础知识点整理及常见面试题

介绍一下线程的生命周期及状态? 1.创建 当程序使用new关键字创建了一个线程之后,该线程就处于一个新建状态(初始状态),此时它和其他Java对象一样,仅仅由Java虚拟机为其分配了内存,并初始化了其成…

【Linux】jieba的安装和使用

目录 链接 jieba库简介 ​获得jieba库 怎么使用jieba库 链接 因为github下载东西的时间原因,下面这个网站会定期将jieba从github镜像回来 项目 探索 GitCodehttps://gitcode.net/explore输入cppjieba进行搜索,点击相应链接进入 jieba库简介 需要…

【前端知识点】

虚拟 dom: 虚拟 dom 就是 vue 通过 js 对象渲染虚拟 dom 的,虚拟 dom 的 js 对象包含节点的类型、属性、子节点等信息,这些虚拟 dom 节点会构成一棵树形结构,用来表示整个页面的结构。 当 vue 组件更新时,会通过 diff…

雾锁王国服务器怎么建?雾锁王国服务器搭建方法

雾锁王国Enshrouded服务器搭建怎么搭建?非常简单,阿里云计算巢雾锁王国程序,可以一键搭建雾锁王国多人联机服务器,腾讯云是基于雾锁王国镜像系统,阿里云服务网aliyunfuwuqi.com汇总雾锁王国服务器搭建,超简…

Python爬虫实战第二例【二】

零.前言: 本文章借鉴:Python爬虫实战(五):根据关键字爬取某度图片批量下载到本地(附上完整源码)_python爬虫下载图片-CSDN博客 大佬的文章里面有API的获取,在这里我就不赘述了。 一…

早产儿视网膜病变分期,自动化+半监督(无需大量医生标注数据)

早产儿视网膜病变 ROP 分期 提出背景解法框架解法步骤一致性正则化算法构建思路 实验 提出背景 论文:https://www.cell.com/action/showPdf?piiS2589-0042%2823%2902593-2 早产儿视网膜病变(ROP)目前是全球婴儿失明的主要原因之一。 这是…

链表基础知识详解(非常详细简单易懂)

概述: 链表作为 C 语言中一种基础的数据结构,在平时写程序的时候用的并不多,但在操作系统里面使用的非常多。不管是RTOS还是Linux等使用非常广泛,所以必须要搞懂链表,链表分为单向链表和双向链表,单向链表很…

求两个向量之间的夹角

求两个向量之间的夹角 介绍Unity的API求向量夹角Vector3.AngleVector3.SignedAngle 自定义获取方法0-360度的夹角 总结 介绍 求两个向量之间的夹角方法有很多,比如说Unity中的Vector3.Angle,Vector3.SignedAngle等方法,具体在什么情况下使用…

Groovy(第九节) Groovy 之单元测试

JUnit 利用 Java 对 Song 类进行单元测试 默认情况下 Groovy 编译的类属性是私有的,所以不能直接在 Java 中访问它们,必须像下面这样使用 setter: 编写这个测试用例余下的代码就是小菜一碟了。测试用例很好地演示了这样一点:用 Groovy 所做的一切都可以轻易地在 Java 程序…

使用 gregwar/captcha 生成固定字符的验证码

图片验证码生成失败 $captcha new CaptchaBuilder("58 ?"); $code $captcha->getPhrase();\Cache::put($key, [phone > $phone, code > $captcha->getPhrase()], $expiredAt);$captcha->build(); $result [captcha_key > $key,expired_at >…

Linux------进程地址空间

目录 一、进程地址空间 二、地址空间本质 三、什么是区域划分 四、为什么要有地址空间 1.让进程以统一的视角看到内存 2.进程访问内存的安全检查 3.将进程管理与内存管理进行解耦 一、进程地址空间 在我们学习C/C的时候,一定经常听到数据存放在堆区、栈区、…

雾锁王国服务器官方配置要求说明

雾锁王国/Enshrouded服务器CPU内存配置如何选择?阿里云服务器网aliyunfuwuqi.com建议选择8核32G配置,支持4人玩家畅玩,自带10M公网带宽,1个月90元,3个月271元,幻兽帕鲁服务器申请页面 https://t.aliyun.com…

TCP/IP-常用网络协议自定义结构体

1、TCP/IP模型: 2、TCP/IP- 各层级网络协议(从下往上): 1)数据链路层: ARP: 地址解析协议,用IP地址获取MAC地址的协议,通过ip的地址获取mac地 …

Vue项目 快速上手(如何新建Vue项目,启动Vue项目,Vue的生命周期,Vue的常用指令)

目录 一.什么Vue框架 二.如何新建一个Vue项目 1.使用命令行新建Vue项目 2.使用图形化界面新建Vue项目 三.Vue项目的启动 启动Vue项目 1.通过VScode提供的图形化界面启动Vue项目 2.通过命令行的方式启动Vue项目 四.Vue项目的基础使用 常用指令 v-bind 和 v-model v…