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地址会发生什么情况?的更多相关文章

  1. 网络编程懒人入门(九):通俗讲解,有了IP地址,为何还要用MAC地址?

    1.前言 标题虽然是为了解释有了 IP 地址,为什么还要用 MAC 地址,但是本文的重点在于理解为什么要有 IP 这样的东西.本文对读者的定位是知道 MAC 地址是什么,IP 地址是什么. (本文同步 ...

  2. 网络协议 2 - IP 地址和 MAC 地址

    了解完网络协议,我们会发现,网络通信的五层模型里,有两个很重要的概念:IP 地址和 MAC 地址. 那么 IP 地址是怎么来的,又是怎么没的?MAC 地址与 IP 地址又有什么区别? 这回答上面问题前 ...

  3. mac地址和ip地址要同时存在么?

    刚再整理笔记的时候,突然想到了一个问题,网络中为什么要同时存在mac地址和ip地址呢?那现在就来随便扯扯吧. 这个问题其实是可以分成两个问题的:Q1:如果只有mac地址,没有ip地址可以么? 众所周知 ...

  4. 三十天学不会TCP,UDP/IP编程--MAC地址和数据链路层

    这篇文章主要是来做(da)推(guang)介(gao)的!由于这两年接触到了比较多的这方面的知识,不想忘了,我决定把他们记录下来,所以决定在GitBook用半年时间上面写下来,这是目前写的一节,后面会 ...

  5. tcp/ip 卷一 读书笔记(3)为什么既要有IP地址又要有MAC地址

    网络层 首先明确一点,并不是所有的网络之间传输数据都需要mac地址和ip地址,比如说点对点线路之间的通信就没有MAC地址,网络层使用ipx协议时就没有ip地址,但是在当前的主流网络中,我们都使用ip地 ...

  6. 转:为什么根据IP地址查询物理所在地,而不是mac地址?

    来自 https://mp.weixin.qq.com/s/aOZQGMnMI2nkX4-qcJL4WQ 读者 不是说mac地址是计算机网卡唯一的地址吗?这样不是可以直接定位到某一台机器吗?为什么要用 ...

  7. IP地址和MAC地址绑定的必要性

    计算机网络是一个共通的网络,世界上任何计算机都可以互相访问. 实现的原理基于网络通讯的互联网交互五层模型. 计算机网络的历史发展 当计算机网络技术初始利用的时代,几台计算机通过集线器连接,就可以实现网 ...

  8. 为什么有mac地址还学要有IP地址??

    历史原因:早期的以太网只有集线器 ,没有交换机,所以发出去的包能被以太网内的所有机器监听到,因此要附带上MAC地址,每个机器只需要接受与自己MAC地址相匹配的包. 个人感觉上面的说法并不是太准确.找明 ...

  9. linux 通过 mac地址 查询 ip 和 清除arp 缓存

    问题重述: 今天,突然找不到vm 的ip 了,但是可以从网卡状态上看到其 mac 地址,并且确定主机是启动状态,网络状态良好(后来发现因为子网掩码的问题,导致虚拟机和网关之间不通信,从而导致其他网络的 ...

  10. 网络知识===关于MAC地址和IP不能互相替代,缺一不可的原因

    最近在看书<图解TCP/IP>书中分别谈到了IP和MAC地址.于是我就有两个疑惑, 为什么有了IP地址,我们还要获取MAC地址? 为什么我们初始不直接使用MAC地址作为终点地址?还要那么复 ...

随机推荐

  1. Linux在线安装git

    一.先检测是否已安装git#rpm -qa | grep zlib-devel 二.提前 安装gcc#yum install gcc 三.具体安装命令 Git下载路径:https://www.kern ...

  2. java使用jedis访问CentOS中的redis

    pom.xml <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</ ...

  3. C# webbrowser全掌握(二)

    全篇引用单元mshtml; 路径:C:\windows\assembly\GAC\Microsoft.mshtml\7.0.3300.0__b03f5f7f11d50a3a\Microsoft.msh ...

  4. 我推荐阅读的微信公众号-IT类

    微信,正深刻影响着我们的生活,每个使用微信的人,从微信这个窗口去了解这个世界. 微信公众号,微信生态圈是核心功能之一,每天都有大量的文章创作.传播.转发出来,海量的信息扑面而来,微信阅读成为微信使用者 ...

  5. Windows 2016 无域故障转移群集部署方法 超详细图文教程 (二)

    上一章我们配置了一台设备,接着根据那个配置,配置其它设备.这里我配置了三台设备: 创建故障转移群集,并添加设备. 之前的操作都是每台服务器都要做的,而这个操作,只需要任选一台去做即可,我这里选d1 1 ...

  6. 关于QTcreator出现不能包含头文件的解决

    调试出现不能包含“某某.h文件”当增加次文件时候,还会出现另一个不能包含“某某.h”文件. 问题解决:由于VS2015和QT的冲突导致(不完全),下载不关联VS的QT版本再进行安装就可以啦.

  7. GNU C语言开发环境

    1. GNU C 编译器 2. GNU make 项目管理工具 3. 创建和使用函数库 4. GNU C 函数库(glibc) 1.GNU C 编译器 使用 c语言 编写的代码,运行前必须经过编译和链 ...

  8. Jnlp

    java web start解析jnlp文件,从网络宿主中,下载应用程序jar包,并运行. xxx.jnlp <?xml version="1.0" encoding=&qu ...

  9. Maven下载私服上的jar包

    1.配置M2_HOME/conf/settions.xml <server> <id>maven-public</id> <username>admin ...

  10. AWS 相关阅读

    http://www.infoq.com/cn/articles/aws-s3-dive-in http://baike.baidu.com/link?url=Jo9OQmjxXZLxyhc6JvaD ...