两台计算机有相同的IP地址会发生什么情况?两台计算机有相同的MAC地址会发生什么情况?
1 相同IP
a) 同一网段内
会发生IP地址冲突。两台主机在特定情况下是可以同时使用同一个IP地址的。但是如果这两台主机在同一个网络内,大多数情况下,二者或者其中之一的连通性将会被破坏。比方说,访问一个页面,可能报文分成许多片段发送,如果一台主机接收了一部分这样的片段,而另一台主机接收了其余的部分,这样一来两台主机都不能得到正确的响应。主要原因是当数据到达网络设备,在面对有相同IP的两个主机时,要么拒绝转发或者传输,要么随机地发送给其中一台主机。这样一来,协议就被破坏了。
b) 不同网络内
不影响协议正常服务。
2 相同MAC
a) 不在同一个二层网络里
没有丝毫影响,因为MAC不会跨越网关而到达另一个网段。
b) 在同一个二层网络的内
假定A、B、C 为主机,MAC地址为 MAC1、MAC1、MAC3 。
场景一:通过集线器连接
①A或B与C通信
没有任何影响
②A与B通信
它们之间IP包到达网卡,封装成以太网帧,目的、源MAC都为 MACa,然后可以顺利到达对方,所以也没有影响 。场景二:通过交换机连接
① A或B与C通信
A与B如果有一方处于静默,即没有什么网络活动,A或B 与C的通信应该没有问题,但一旦A和B同时都有网络流量产生,交换机会在生成ARP映射表时,因为交替绑定 MACa地址 和 A、B端口号,本来应该发往A的流量可能被交换机发给B了,而B的IP层因为目的IP不是自己而丢弃,所以会造成难以预料的通信障碍。
② A与B通信
无法通信,即使A与B都可以通过ARP发现彼此的MAC地址,但是一旦以太网帧到达交换机,交换机会学习源MAC,发现出口即入口,于是又将以太网帧返回原主机。
无论场景一还是二,都无法通过DHCP服务器动态分配IP地址给相同MAC地址的主机。
两台计算机有相同的IP地址会发生什么情况?两台计算机有相同的MAC地址会发生什么情况?的更多相关文章
- 网络编程懒人入门(九):通俗讲解,有了IP地址,为何还要用MAC地址?
1.前言 标题虽然是为了解释有了 IP 地址,为什么还要用 MAC 地址,但是本文的重点在于理解为什么要有 IP 这样的东西.本文对读者的定位是知道 MAC 地址是什么,IP 地址是什么. (本文同步 ...
- 网络协议 2 - IP 地址和 MAC 地址
了解完网络协议,我们会发现,网络通信的五层模型里,有两个很重要的概念:IP 地址和 MAC 地址. 那么 IP 地址是怎么来的,又是怎么没的?MAC 地址与 IP 地址又有什么区别? 这回答上面问题前 ...
- mac地址和ip地址要同时存在么?
刚再整理笔记的时候,突然想到了一个问题,网络中为什么要同时存在mac地址和ip地址呢?那现在就来随便扯扯吧. 这个问题其实是可以分成两个问题的:Q1:如果只有mac地址,没有ip地址可以么? 众所周知 ...
- 三十天学不会TCP,UDP/IP编程--MAC地址和数据链路层
这篇文章主要是来做(da)推(guang)介(gao)的!由于这两年接触到了比较多的这方面的知识,不想忘了,我决定把他们记录下来,所以决定在GitBook用半年时间上面写下来,这是目前写的一节,后面会 ...
- tcp/ip 卷一 读书笔记(3)为什么既要有IP地址又要有MAC地址
网络层 首先明确一点,并不是所有的网络之间传输数据都需要mac地址和ip地址,比如说点对点线路之间的通信就没有MAC地址,网络层使用ipx协议时就没有ip地址,但是在当前的主流网络中,我们都使用ip地 ...
- 转:为什么根据IP地址查询物理所在地,而不是mac地址?
来自 https://mp.weixin.qq.com/s/aOZQGMnMI2nkX4-qcJL4WQ 读者 不是说mac地址是计算机网卡唯一的地址吗?这样不是可以直接定位到某一台机器吗?为什么要用 ...
- IP地址和MAC地址绑定的必要性
计算机网络是一个共通的网络,世界上任何计算机都可以互相访问. 实现的原理基于网络通讯的互联网交互五层模型. 计算机网络的历史发展 当计算机网络技术初始利用的时代,几台计算机通过集线器连接,就可以实现网 ...
- 为什么有mac地址还学要有IP地址??
历史原因:早期的以太网只有集线器 ,没有交换机,所以发出去的包能被以太网内的所有机器监听到,因此要附带上MAC地址,每个机器只需要接受与自己MAC地址相匹配的包. 个人感觉上面的说法并不是太准确.找明 ...
- linux 通过 mac地址 查询 ip 和 清除arp 缓存
问题重述: 今天,突然找不到vm 的ip 了,但是可以从网卡状态上看到其 mac 地址,并且确定主机是启动状态,网络状态良好(后来发现因为子网掩码的问题,导致虚拟机和网关之间不通信,从而导致其他网络的 ...
- 网络知识===关于MAC地址和IP不能互相替代,缺一不可的原因
最近在看书<图解TCP/IP>书中分别谈到了IP和MAC地址.于是我就有两个疑惑, 为什么有了IP地址,我们还要获取MAC地址? 为什么我们初始不直接使用MAC地址作为终点地址?还要那么复 ...
随机推荐
- Linux聚合网络
Linux聚合网络 作者:Eric 微信:loveoracle11g 链路聚合 [root@server1 ~]# ifconfig | grep eno [root@server1 ~]# ls / ...
- windows下安装、卸载mysql服务
将下载下来的mysql解压到指定目录下(如:d:\mysql)安装服务在命令行输入d:\mysql\bin\mysqld -installnet start mysql卸载服务在命令行输入net st ...
- 10 Skills Every SharePoint Developer Needs
10 Skills Every SharePoint Developer Needs(原文) This blog post guides you through the essential skill ...
- 零基础学习python_类和对象(36-40课)
今天我们开始学习面向对象的知识咯,之前我对面向对象也学的懵懵的,因为感觉知道好像又不是特别清楚,接下来我们一起来学习类和对象吧.零基础的课程我都是看小甲鱼的视频学的,没基础的可以去这个网址下载视频学习 ...
- Unity3D Update() 和 FixedUpdate()区别
Unity3D中 Update()与FixedUpdate()的区别是什么呢?从字面上理解,它们都是在更新时会被调用,并且会循环的调用.但是Update会在每次渲 染新的一帧时,被调用.而FixedU ...
- mysql安装卸载-windows
安装:(注意点) 官网download安装包 choose setup type --> custom 安装路径 detailed configuration developer machin ...
- Exchange Tech Issues 参考网站
Exchange Tech Issues: https://www.experts-exchange.com/ DAG部署: http://blog.51cto.com/4096415/958671
- linux 打压缩包
tar命令 解包:tar zxvf FileName.tar 打包:tar czvf FileName.tar DirName gz命令 解压1:gunzip FileName.gz 解压2:gzip ...
- 51.纯 CSS 创作一个雷达扫描动画
原文地址:https://segmentfault.com/a/1190000015283286 感想:linear-gradient() 刷新了我的认知,它可以并列多个而不会被覆盖,并列使用时用 , ...
- OpenGL Hello World
▶ OpenGL 的环境配置与第一个程序 ● CUDA 中自带 OpenGL 需要的头文件和库,直接拉进项目里边去就行 ● VS项目属性右键,属性,C/C++ 目录,包含目录,添加 CUDA 的头文件 ...