程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了一台计算机如何知道本地网络上其他计算机的 IP 地址?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决一台计算机如何知道本地网络上其他计算机的 IP 地址??

开发过程中遇到一台计算机如何知道本地网络上其他计算机的 IP 地址?的问题如何解决?下面主要结合日常开发的经验,给出你关于一台计算机如何知道本地网络上其他计算机的 IP 地址?的解决方法建议,希望对你解决一台计算机如何知道本地网络上其他计算机的 IP 地址?有所启发或帮助; @H_675_2@我目前正在学习 ARP 和 L2/L3 网络 - 有人可以帮忙吗?如果我使用以太网电缆将我的笔记本电脑 (A) 连接到另一台笔记本电脑 (B),它可以使用 ARP 根据 B 的 IP 地址找出 B 的 MAC 地址。然后,任何以太网帧都可以被 B 发送和接受。

@H_675_2@但是 A 怎么知道 B 的 IP 地址呢?如果 A 和 B 之间有一个交换机(L2 设备)怎么办?这会改变答案吗?如果中间有路由器(L3 设备)怎么办?

解决方法

@H_675_2@通常,交换机/路由器会分配一个 IP。

@H_675_2@问题不清楚-

@H_675_2@根据B的IP地址找出B的MAC地址。

@H_675_2@B 的 MAC 地址不是基于 B 的 IP。 MAC 与硬件相关联(但有些可分配/可克隆),其中分配了 IP。通过 DHCP 或静态由管理员。

@H_675_2@实际上,您需要一个交换机/路由器来使您定义的工作正常工作。

@H_675_2@编辑: 您可以直接连接两台计算机,但您仍然需要为每台计算机提供一个静态 IP 地址,以便它们可以找到彼此 - 这可能不是在网络上,因此 IP 子网无关紧要。

@H_675_2@它仍然与MAC关系不大。 如果两台PC握手,他们会看到对方的MAC。

, @H_675_2@它向广播 MAC 地址发送一个广播数据包,询问“谁拥有 IP 地址 x.x.x.x”,该数据包将发送到该广播域中的所有计算机。如果计算机看到拥有 IP 地址“x.x.x.x”的数据包,它会将单播回复发送回原始请求者的 MAC 地址及其 MAC 地址,然后将其缓存以供进一步通信。

@H_675_2@除非你告诉它,否则它不知道 IP。您说“默认网关是 192.168.1.1”,它会开始尝试与 192.168.1.1 等通信。

@H_675_2@如果中间有路由器,则所有到远程设备的流量都将转到路由器的 MAC,而您的计算机除了该路由器之外不会进行任何 ARP 查找。

@H_675_2@交换机对此无关紧要,它们所做的只是使广播域更大。使用电缆,广播域只是您和远程设备。使用交换机,它将其扩展到连接到同一交换机(或交换机中的 VLAN)的所有设备

, @H_675_2@但是 A 怎么知道 B 的 IP 地址呢?

@H_675_2@它不知道。至少没有通用的方法可以找出来。

@H_675_2@任何资源的 IP 地址都需要由“其他东西”提供。您需要自己提供地址,从(也提供的)DNS 名称解析它,从文件中读取它,...或者,您需要在节点之间提供某种自动发现(广播、多播、LLDP、 ...) 或提供众所周知的发现服务、注册服务器或类似服务。

@H_675_2@如果 A 和 B 之间有一个交换机(L2 设备)怎么办?

@H_675_2@除了链接级发现之外什么都没有改变(除非它是一个简单地转发这些帧的“哑”交换机)。

@H_675_2@如果中间有路由器(L3 设备)怎么办?

@H_675_2@这消除了图片中的广播和多播。 (可以路由多播,但这不太可能被发现,我不会深入研究。)

大佬总结

以上是大佬教程为你收集整理的一台计算机如何知道本地网络上其他计算机的 IP 地址?全部内容,希望文章能够帮你解决一台计算机如何知道本地网络上其他计算机的 IP 地址?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:地址?