首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

TCP/IP堆栈中的链路层是否根据目的地的IP地址派生出要接收数据包的网卡的MAC地址?

是的,TCP/IP堆栈中的链路层根据目的地的IP地址派生出要接收数据包的网卡的MAC地址。在发送数据包时,操作系统会根据目的IP地址查询路由表,确定下一跳的网关IP地址。然后,通过ARP协议(地址解析协议)查询目的IP地址对应的MAC地址。ARP协议会发送一个广播消息,询问局域网内的所有设备,谁拥有目的IP地址对应的MAC地址。当目的设备收到广播消息后,会回复自己的MAC地址给发送方。发送方收到回复后,就知道了目的IP地址对应的MAC地址,然后将数据包封装成以目的MAC地址为目标的帧,发送到网络上。接收方的网卡会根据自己的MAC地址与目标MAC地址进行比对,匹配成功后接收数据包。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

TCPIP协议学习第一篇:TCPIP协议栈概览

快递员负责把包裹转发到各个配送站,配送站根据收获地址里的省市区,确认是否需要继续转发到其他配送站,当包裹到达了目标配送站以后,配送站再根据联系方式找到收件人进行派件。...而网卡地址就是数据包的发送地址和接收地址,也就是帧首部所包含的MAC地址,MAC地址是每块网卡的身份标识,就如同我们身份证上的身份证号码,具有全球唯一性。...3.如果接收者和自己不在同一个子网,数据包如何发给对方? 为了解决这些问题,网络层引入了三个协议,分别是IP协议、ARP协议、路由协议。 IP协议制定了IP地址来判断俩个主机是否属于同一个子网。...ARP协议根据IP地址获取MAC地址。 路由协议根据信道情况,选择并设定路由,以最佳路径来转发数据包。...3.传输层 链路层定义了主机的身份,即MAC地址, 而网络层定义了IP地址,明确了主机所在的网段,有了这两个地址,数据包就从可以从一个主机发送到另一台主机。

1.4K30

网络互联参考模型(详解)

5.保密问题:虽说交换机也可以根据帧的源MAC地址、目的MAC地址和其他帧中内容对帧实施过滤,但路由器根据报文的源IP地址、目的IP地址、TCP端口地址等内容对报文实施过滤,更加直观方便。...当数据包要跨越多个通信子网才能到达目的地时,还要解决网际互连的问题。 2) 网络地址: 网络层地址由两部分地址组成:网络地址和主机地址。网络地址是全局唯一的。 3)路由器在网络层,所以是第三层设备。...Internet上有大量路由器负责根据IP地址选择合适的路径转发数据包,数据包从Internet上的源主机到目的主机往往要经过十多个路由器。...,邮编门牌号,然后交给邮局收信职员(传输层:需要可靠的传输:tcp封装信封投递到邮局,目的地址是ip,门牌号:mac地址。...-promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包 -allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包

1.2K20
  • TCPIP学习笔记

    主要是将从会话层接收的数据进行分段和传输,到达目的地址后再进行重组。常常把这一层数据叫做段。网关网络层路由,寻址,网络层确定把数据包传送到其目的地的路径。就是把逻辑网络地址转换为物理地址。...集线器、中继器、电缆,发送器,接收器(2)TCP/IP 四层模型IP的作用:用于区分不同的计算机是否属于同一个子网络。Mac的作用:用来标识具体用户,为了解决IP盗用的安全问题。...MAC地址用于在网络中唯一标示一个网卡,一台设备若有一或多个网卡,则每个网卡都需要并会有一个唯一的MAC地址 [2] 。...—— 点分十进制 IP地址 (string)IP和MAC的作用:网络地址(IP):帮助我们确定计算机所在的子网络MAC 地址:则将数据包送到该子网络中的目标网卡。...ip已经在应用层通过dns解析出来了,那mac怎么办。。。真尴尬,然而这时ARP协议又冒了出来,它可以根据ip地址反向查询到目标主机的mac地址。好了,现在啥都有了,打包带走,把数据发到数据链路层。

    7310

    Linux网络-MAC协议

    ;网卡有一种模式叫做混杂模式,被设置为混杂模式的网卡能够接收所有经过它的数据流,而不论其目的地址是否是它 3、以太网格式 示图: 说明: 源地址和目的地址是指网卡的硬件地址(也叫MAC地址), 长度是...: 在MAC帧的帧头当中有2个字节的类型字段,因此在分离出报头和有效载荷后,根据该字段将有效载荷交付给对应的上层协议即可 4、MAC地址 MAC地址: MAC地址用来识别数据链路层中相连的节点 长度为...标识数据发出到接收中途经过的位置) 注:源IP地址和目的IP地址可以理解成是不会变化的,而数据源MAC地址和目的MAC地址都会变化;实际数据在路由过程中,源IP地址和目的IP地址也可能会发生变化(NAT...(fragmentation) MTU对IP协议的影响: 由于数据链路层MTU的限制, 对于较大的IP数据包要进行分包 将较大的IP包分成多个小包, 并给每个小包打上标签 每个小包IP协议头的 16位标识...协议的作用: ARP协议建立了主机 IP地址 和 MAC地址 的映射关系 在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址 数据包首先是被网卡接收到再去处理上层协议的

    2.5K10

    21张图详解网络基础知识

    网络层 相当于 OSI 模型中的第 3 层网络层,使用的是IP协议,作用是将数据包从源地址发送到目的地址。...ICMP 用于在 IP 主机、路由器之间传递控制消息。被用来诊断网络的健康状况。 ARP 从数据包的 IP 地址中解析出 MAC 地址的一种协议。...以太网头部信息包含目的 MAC 地址、源 MAC 地址,以及上层协议类型信息。然后将以太网数据帧通过物理层传输给接收端。 接收数据包 包的接收流程是发送流程的反向过程。...二层交换机根据 MAC 地址自学机制判断是否需要转发数据帧。这类功能也是数据链路层所具有的功能。...二层交换机是根据 MAC 地址进行处理,而路由器 / 三层交换机则是根据 IP 地址进行处理的。因此 TCP/IP 中网络层的地址就成为了 IP 地址。 路由器可以连接不同的数据链路。

    86720

    21张图详解网络基础知识

    网络层 相当于 OSI 模型中的第 3 层网络层,使用的是IP协议,作用是将数据包从源地址发送到目的地址。...ICMP 用于在 IP 主机、路由器之间传递控制消息。被用来诊断网络的健康状况。 ARP 从数据包的 IP 地址中解析出 MAC 地址的一种协议。...以太网头部信息包含目的 MAC 地址、源 MAC 地址,以及上层协议类型信息。然后将以太网数据帧通过物理层传输给接收端。 接收数据包 包的接收流程是发送流程的反向过程。...二层交换机根据 MAC 地址自学机制判断是否需要转发数据帧。这类功能也是数据链路层所具有的功能。...二层交换机是根据 MAC 地址进行处理,而路由器 / 三层交换机则是根据 IP 地址进行处理的。因此 TCP/IP 中网络层的地址就成为了 IP 地址。 路由器可以连接不同的数据链路。

    49831

    36张图详解网络基础知识

    IP 协议基于 IP 地址转发分包数据,作用是将数据包从源地址发送到目的地址。 TCP/IP 分层中的网络层与传输层的功能通常由操作系统提供。 路由器就是通过网络层实现转发数据包的功能。...网络层 网络传输中,每个节点会根据数据的地址信息,来判断该报文应该由哪个网卡发送出去。...ICMP 用于在 IP 主机、路由器之间传递控制消息,用来诊断网络的健康状况。 ARP 从数据包的 IP 地址中解析出 MAC 地址的一种协议。...接收数据包 包的接收流程是发送流程的反向过程。 网络接口处理 收到以太网包后,首先查看头部信息的目的 MAC 地址是否是发给自己的包。如果不是发送给自己的包就丢弃。...数据帧中有一个数据位叫做 FCS ,用以校验数据是否正确送达目的地。二层交换机通过检查这个值,将损坏的数据丢弃。 二层交换机根据 MAC 地址自学机制判断是否需要转发数据帧。

    81230

    网络原理(五)——数据链路层

    源地址和目的地址是指网卡的硬件地址(也叫MAC地址), 长度是48位,是在网卡出厂时固化的; 帧协议类型字段有三种值,分别对应IP、ARP、RARP; 帧末尾是CRC校验码。...认识MAC地址 MAC地址用来识别数据链路层中相连的节点; 长度为48位,即6个字节....,数据包长度大于拨号链路的MTU了,则需要对数据包进行分片(fragmentation); 不同的数据链路层标准的MTU是不同的; MTU对IP协议的影响 由于数据链路层MTU的限制, 对于较大的IP数据包要进行分包...当前是否是最后一个小包, 是的话置为1, 否则置为0); 到达对端时再将这些小包, 会按顺序重组, 拼装到一起返回给传输层; 一旦这些小包中任意一个小包丢失, 接收端的重组就会失败....在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址; 数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃; 因此在通讯前必须获得目的主机的硬件地址

    1.4K10

    图解网络:36张图详解网络基础知识

    IP 协议基于 IP 地址转发分包数据,作用是将数据包从源地址发送到目的地址。 TCP/IP 分层中的网络层与传输层的功能通常由操作系统提供。 路由器就是通过网络层实现转发数据包的功能。...网络层 网络传输中,每个节点会根据数据的地址信息,来判断该报文应该由哪个网卡发送出去。...ICMP 用于在 IP 主机、路由器之间传递控制消息,用来诊断网络的健康状况。 ARP 从数据包的 IP 地址中解析出 MAC 地址的一种协议。...接收数据包 包的接收流程是发送流程的反向过程。 网络接口处理 收到以太网包后,首先查看头部信息的目的 MAC 地址是否是发给自己的包。如果不是发送给自己的包就丢弃。...数据帧中有一个数据位叫做 FCS ,用以校验数据是否正确送达目的地。二层交换机通过检查这个值,将损坏的数据丢弃。 二层交换机根据 MAC 地址自学机制判断是否需要转发数据帧。

    14810

    网络是如何连接的?网络发展简介(四)

    FCS 进行错误校验,如果没问题则检查 MAC 头部中的接收方 MAC 地址 确认是否发给自己的包,如果是就放到接收缓冲区中,否则就丢弃这个包。...查询物理地址 与计算机操作系统的处理类似,知道了目标地址,可以根据ARP协议查询目的MAC 路由器的端口也具有网卡,具有MAC以及IP,所以就是网卡负责链路层帧的封装以及光电信号的转换,然后发送 就是这样一段一段...,然后会查找转发表开始准备转发了 而我们的计算机操作系统作为最终目的地,当然不再需要转发,会根据收到的MAC数据进行处理 网卡每收到一个MAC帧就先用硬件检查MAC帧中的目的地址。...这时我们需要根据 IP 头部中的发送方 IP 地址和接收方 IP 地址,以及 TCP 头部中的接收方端口号和发送方端口号共 4 种信息,找到上述4 种信息全部匹配的套接字。...,找到了下一跳IP然后ARP协议查找MAC,然后更改源MAC和目的MAC 完成数据在链路层的传递 最终通过一段一段的链路到达目的地主机,主机的网卡类似路由器,也是光电信号转换接收,然后检验,MAC检验,

    4K50

    数据链路层重点总结

    硬件层面,只能基于MAC地址识别网络设备的网络物理地址。 MAC地址用来识别数据链路层中相连的节点; 长度为48位,及6个字节。...等; 以太网帧格式: 以太网的帧格式如下所示: 源地址和目的地址是指网卡的硬件地址(也叫MAC地址),长度是48位,是在网卡出厂时固 化的; 帧协议类型字段有三种值,分别对应IP、ARP、RARP;...在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址; 数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不 符,则直接丢弃; 因此在通讯前必须获得目的主机的硬件地址...FF:FF表示广播); 目的主机接收到广播的ARP请求,发现其中的IP地址与本机相符,则发送一个ARP应答数据包给源主机,将自己的硬件地址填写在应答包中; 每台主机都维护一个ARP缓存表,可以用arp...IP数据包要进行分包。

    45520

    对线面试官 - TCP_IP四层网络模型经典连环问

    面试官:TCP、IP四层模型有了解吗?可以简单说说嘛。 派大星:主要包括数据链路层、网络层、传输层、应用层。 面试官:可以简单聊聊什么是OSI七层网络模型吗?...数据链路层:网络交换机就是工作在该层的。网络交换机是通过MAC地址来寻址和传输数据包的;但是路由器/网关是通过IP地址寻址和传输数据包的。网络交换机主要用在局域网的通信。...这里涉及到了以太网协议,它规定了只要接入网络的设备都必须要有一个网卡,以太网规定了,每个网卡必须包含一个Mac地址,Mac地址是这个网卡的唯一标识,唯一的Mac地址是一个48位的二进制,但是一般为了方便使用...在网络层中最重要的就是IP协议,IP协议可以给每个电脑定义一个IP地址(IPV4、IPV6),范围是0.0.0.0~255.255.255.255,这里的IP地址中前24个二进制位(也就是前3组十进制的数据...通过socket就可以基于tcp/ip协议完成上述所说的基于IP地址和MAC地址转换和寻址。以及通过路由进行通信然后建立一个端口到另外一个端口的连接。

    25610

    计算机网络——抓包与分析

    端口镜像:利用交换机的接口,将局域网的网络流量转发到指定电脑的网卡上。 ARP欺骗:交换机根据MAC地址转发数据,伪装其他终端的MAC地址,从而获取局域网的网络流量。...若两台机器之前有过通信,在机器A的ARP缓存表应该有B机IP与其MAC的映射关系;若没有,则发送ARP请求广播,得到机器B的MAC地址,一并交给数据链路层 数据链路层构建一个数据帧,目的地址是IP层传过来的...MAC地址,源地址是本机的MAC地址,再附加一些控制信息,依据以太网的介质访问规则,将他们传送出去 机器B收到这个数据帧后,先检查目的地址,和本机MAC地址对比 符合,接收。...ICMP协议处理数据之后将相应的数据包返回给来源机器,当执行ping的机器收到数据包,可以统计这一整个过程的时长从而以及接收的数据包是否完整,从计算出对应的延迟与丢包率。...网络层是OSI网络模型的倒数第三层,其中具有大量的网络协议,其主要是从将应用层的数据封装,在数据包前加上IP报头,IP与数据链路层中的MAC地址有些类似,但是IP地址更适用于在大型的网络中进行传输。

    1K20

    数据链路层:以太网ARP协议

    以太网帧格式 源地址和目的地址是指网卡的硬件地址(也叫MAC地址), 长度是48位,是在网卡出厂时固化的。帧协议类型字段有三种值,分别对应IP、ARP、RARP。帧末尾是CRC校验码。...一般用16进制数字加上冒号的形式来表示(例如: 08:00:27:03:fb:19)在网卡出厂时就确定了, 不能修改. mac地址通常是唯一的(虚拟机中的mac地址不是真实的mac地址, 可能会冲突;...MTU对IP协议的影响 由于数据链路层MTU的限制, 对于较大的IP数据包要进行分包。 将较大的IP包分成多个小包, 并给每个小包打上标签。...数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃。因此在通讯前必须获得目的主机的硬件地址。...当这个ARP请求在网络发送的过程中,会被网络中的所有主机接收到。所有主机都会对比其中的目的IP地址,看看是否跟自己的一样,如果不是,则直接丢掉。主机B一看,噢,是我的。

    50420

    【在Linux世界中追寻伟大的One Piece】数据链路层

    3.1 -> 以太网的帧格式 源地址和目的地址是指网卡的硬件地址(也叫MAC地址),长度是48位,是在网卡出厂时固化的。 帧协议类型字段有三种值,分别对应IP、ARP、RARP。...在网卡出厂时就确定了,不能修改。MA地址通常是唯一的(虚拟机中的MAC地址不是真实的MAC地址,可能会冲突;也有些网卡支持用户配置MAC地址)。...5.1 -> MTU对IP协议的影响 由于数据链路层MTU的限制,对于较大的IP数据包要进行分包。 将较大的IP包分成多个小包,并给每个小包打上标签。...在局域网中,ARP允许设备通过已知的IP地址来发现目标设备的MAC地址,以便直接在网络层进行通信。ARP通过发送ARP请求和接收ARP响应来建立和维护IP地址到MAC地址的映射表。...在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址。 数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃。

    12410

    大白话聊OSI七层模型和TCPIP四层模型

    那么数据包中是如何确定发送者位置的呢? 以太网规定每个网卡必须包含一个mac地址,mac地址就是这个网卡的身份证。接入网络的所有设备都得有网卡,数据包中就是通过mac地址进行网卡定位的。...这个其实不是点对点的,而是会广播给局域网内的所有网卡,然后每个网卡会从数据包中获取接收者的mac地址进行比对,如果相同就说明是给自己的数据包。 当然这种广播的方式只针对于局域网。...而网关就是路由器的一种,我们可以认为路由器的ip地址就是网关地址,路由器上每个网卡都有ip地址和mac地址,但只能通过ip寻址,不能通过mac寻址。 那网络交换机又是什么呢?...但是他们不在一个局域网内,于是局域网1的电脑先通过交换机将数据包发送给路由器,这个过程需要将路由器的一块网卡的ip地址对应的mac地址写到数据包的头部,然后才能通过交换机广播出去,发送给路由器。...不同子网的通信,就是写上对方的ip地址,然后先通过路由器的mac地址广播到路由器,路由器再根据另外一个子网的ip地址转换为另外一个子网机器的mac地址,再通过交换机广播,就是这样的流程。如下图: ?

    10.4K80

    对线面试官 - 网络经典面试题

    IP地址和Mac地址的对应关系。...派大星:假设我们现在有如下配置: IP地址:192.168.10.110 子网掩码:255.255.255.0 网关地址:192.168.10.1 DNS地址:8.8.8.8 派大星:当我们在浏览器中数据...,返回之后本机电脑会判断返回的IP地址与当前IP地址是不是一个子网的(通过将两个IP地址的二进制与子网掩码的二进制进行与运算,并判断前面的3部分二进制是否一样),得出的结果指定不在一个子网下。...5下一步走到数据链路层(以太网协议),并将数据打包成以太网数据包,并携带以太网标头(包含发送者网卡Mac地址、接收者网卡Mac地址-> 对应的是网关192.168.10.1的Mac地址) 注意:以太网的数据包是有大小限制的...最后会将切割好的以太网数据包发送到网关上去(192.168.10.1),网关可能会发送到别的网关上去,经过N次这样的转发会转发到目标服务器上 目标服务器接收到切割好的以太网数据包后,会根据IP头的序号将切割分裂的数据包进行拼接并还原出一个完整的数据包

    22630

    网络篇-网络宏观概谈!

    - TCP/UDP数据包:标头部分包含双方的发出端口和接收端口. UDP数据包:'标头'长度:8个字节," 数据包"总长度最大为65535字节,正好放进一个IP数据包....IP 协议只是尽最大努力来传输数据包,并不保证所有的包都可以传输 到目的地,也不保证数据包的顺序和唯一。 IP 定义了 TCP/IP 的地址,寻址方法,以及路由规则。...【2】在进行封装LAN层的Mac地址时,主机A需要先判断下主机B是否跟自己是同一个网段中 【3】如果目的主机是与自己在同一个网段内,主机A查询自己的ARP表,有该目的IP地址对应的MAC地址的记录,将该...;报文发送到下一站时,数据帧的目的MAC地址是下一个站路由器或者网络接口的MAC地址,而IP头部的目的IP地址是主机B的IP地址;这里要指出的是:ARP请求报文以下一站路由器或网络接口的IP地址为目的IP...常见的对照关系 物理层 网线 水晶头 数据链路层 交换机 网卡 网络层 路由器 传输层以上基本都是软件实现了 对了 计算机中的网卡基本工作在整个协议栈。

    98621

    【TCPIP 协议】 TCPIP 基础

    )(TCP 中的数据))) ; (2) TCP/IP 数据相关概念 包 : TCP / IP 协议中, 每一层的数据都可以成为包, 是一个全能术语; 帧 (以太网数据帧) : 链路层包的单位; 数据包...IP 数据报的 路由 或 主机 路径; -- 查询 MAC 地址 : 利用 ARP 查找 MAC 地址; -- 提交到链路层 : IP 数据报提交给链路层 需要将 MAC 地址 和 IP 地址一起提交到下一层...; (4) 链路层处理 封装 以太网 首部 : 网络层传递 IP 数据报到链路层, 在该层给 IP 数据报附加 以太网首部 并发送出去; -- 以太网首部组成 : 发送端 MAC 地址, 接收端 MAC...和 接收 地址信息, 上一层的协议类型; -- 链路层 : 使用 发送端 和 接收端的 MAC 地址; -- 网络层 : 使用 发送段 和 接收端的 IP 地址, 该层还需要一个 协议类型, 说明在传输层使用的是...查看 目的端 MAC 地址是否为本机地址, 如果不是丢弃该 帧; -- 判定协议类型 : 查找 以太网数据包首部中的 类型域, 确定该数据包是 IP 数据报, 还是 ARP 协议, 如果无法识别协议类型

    59720

    【计算机网络三】一篇文章详解TCPIP四层协议簇

    以太网的帧格式如下所示: 源地址和目的地址是指网卡的硬件地址(也叫MAC地址),长度是48位,是在网卡出厂时固化的; 帧协议类型字段有三种值,分别对应IP、ARP、RARP; 帧末尾是CRC校验码...在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址; 数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃; 因此在通讯前必须获得目的主机的硬件地址...主机具有一个或多个网卡,路由器具有两个或两个以上网卡;其中每个网卡都有唯一的一个MAC地址。 网络通信,即网络数据传输,本质上是网络硬件设备,将数据发送到网卡上,或从网卡接收数据。...硬件层面,只能基于MAC地址识别网络设备的网络物理地址。 MAC地址用来识别数据链路层中相连的节点; 长度为48位,及6个字节。...虚拟机中的MAC地址不是真实的MAC地址,可能会冲突;也有些网卡支持用户配置MAC地址 总结IP地址和MAC地址: IP地址描述的是路途总体的起点和终点;是给人使用的网络逻辑地址。

    23010
    领券