两台PC机网线直连通信,对于初学者来说可能会很疑惑为什么能通信,或者为什么不能通信;其实主要是对主机通信原理不了解;刚好前几天遇到个网线直连的问题,顺便就写个blog,属于扫盲帖,老司机可以直接跳过...
        我们知道一般主机都有三个参数: IP, 子网掩码网关;平时应用层通信的时候好像只用到了IP,其他两个并不怎么涉及,下面就会讲到这子网掩码和网关到底有什么用,和本文的主题有什么关系;

上图是两台主机的一般通信流程图,简要说明下:
        1. 同网段的情况:
         如流程图上左边的分支,因为是同网段的,所以可以通过ARP广播获取到主机B的MAC地址,获取到主机B的MAC地址后就可以直接通信了( 同一子网有对端的MAC地址就可以通信);
        2. 不同网段的情况:
        如流程图上右边的分支,因为是不同网段,主机A认定需要通过路由才能找到主机B,所以先找网关MAC,把arp广播包发给网关,再由网关去转发...(以下省略1000字);

再来讲一下直连主机通信的情况(其实是一样的):
        同网段情况:主机A发现主机B是同网段后,直接发送ARP广播,由于没有路由器,只有一根网线连接主机B,所以ARP广播包只能发给主机B,主机B分析ARP广播包后,发现ARP包中的IP与自己的IP一致,所以就返回自己的MAC地址,这样主机A知道了主机B的MAC地址,当然就可以通信了;
        不同网段的情况:主机A发现主机B是不同网段后,直接发送ARP广播给网关,但是由于只有一根网线连到主机B,主机B收到这个ARP广播包后, 发现ARP包中的IP(这个IP是主机A的网关的地址) 与自己(主机B)不一致,直接丢弃;主机A就无法知道主机B的MAC地址,当然就无法通信了。

想让直连的不同网段的AB主机通信也很简单,让主机B不丢弃主机A发的广播包就行,所以只要主机A发送的ARP包里的IP刚好是主机B的IP,而此时ARP包里的IP就是主机A的网关IP,因此只要把主机AB的网关互填对方的IP地址,双方就可以通信了。

PS: 以上流程忽略了arp表

主机直连通信(扫盲贴)相关推荐

  1. 两不同网段主机直连通信过程的建立(3个实验详细分析)

    网络界流行一种说法:不同网段主机不能直接通信.今天我们就来让两台不同网段的主机直连能够通信,并做详细详细解释. 这里插讲一个技术:免费ARP--Gratuitous ARP.翻译也许不准确. Grat ...

  2. 【网络通信与信息安全】之深入解析两台主机之间的通信过程和原理

    一.前言 本文通过在 Docker 容器中执行命令,来深入了解两台主机之间的通信过程.阅读完本文,您将熟悉以下内容: Docker 的基本操作: 创建 socket 并发送 HTTP 请求: 路由表. ...

  3. VMware下主机与虚拟机通信问题

    VMware下主机与虚拟机通信问题 背景: 服务器:Dell PowerEdgeR710 主机系统:CentOS-5.5 虚拟机:VMware Workstation 7.1.0 虚拟机下打开4个co ...

  4. 同一交换机不同网段的主机为什么不能通信

    同一交换机不同网段的主机为什么不能通信?想不通!!大伙发表下意见. 没有创建VLAN,把PC的IP分别设置成不同网段的IP, 例如PC 1:192.168.1.1 ,PC 2:192.168.2.1  ...

  5. Linux虚拟机之间的通信以及与Windows主机之间的通信

    Linux虚拟机之间的通信以及与Windows主机之间的通信 参考 1.打开vm,选择编辑选项,打开其下的虚拟网络编辑器,如下图所示: 2.查看电脑主机的ip地址,win+R输入cmd回车,进入cmd ...

  6. 两个主机之间如何通信

    同一局域网内通信:用ARP来解决 地址解析协议ARP解决这个问题的方法是在主机ARP高速缓存中应存放一个从IP地址到硬件地址的映射表,并且这个映射表还经常更新动态. 每一个主机都设有一个ARP高速缓存 ...

  7. eNSP:实现不同网段主机之间的通信(直连路由)

    直连路由,顾名思义,就是两台主机直接和路由器相连.我们要实现PC1和PC2之间的通信,具体配置步骤如下: interface GigabitEthernet 0/0/1 #在路由器R1中我们进入0/0 ...

  8. windows备份与还原和两个主机的相互通信

    DAY02Windows 实验一: 实验名称:windows系统的备份与还原 实验描述:为了保证系统的安全对系统做备份与还原操作系统 实验拓扑: 实验步骤: 步骤一:将急救大师软件安装在虚拟机的系统上 ...

  9. a查询计算机主机路由表信息,计算机网络主机A向其他主机B进行通信的流程

    当主机A要与主机B通信时,地址解析协议可以将主机B的IP地址如(192.168.1.2)解析成主机B的MAC地址,以下为 工作流程: 第1步:根据主机A上的路由表内容,IP确定用于访问主机B的转发IP ...

最新文章

  1. 关于数学里的一些知识
  2. 上传图片-服务端-创建文件系统服务工程
  3. mysql jdbc百度_mysql8.0 jdbc连接注意事项
  4. PS 如何去掉图片中的水印
  5. 职高计算机专业c语言_C语言程序设计(全国高职高专计算机系列精品教材)
  6. php微信发送客服消息,微信公众号利用客服消息和模板消息实现微信群发
  7. python元组元素的提取_Python 元组
  8. python 杨辉三角居中打印_利用python打印杨辉三角
  9. 《代码大全》读书笔记
  10. JS 事件捕获、事件冒泡以及事件委托图文详解
  11. 小程序性能优化——文件的本地存储10M优化算法
  12. pureftp部署和优化
  13. 计算机模拟多孔碳,华南农业大学刘应亮教授课题组:废弃板栗壳制备多孔碳材料,用于用于储能设备...
  14. 使用UUP DUMP下载多版本Windows镜像
  15. 相量与正弦量的数学变换原理
  16. STM32的USB速度,终于确定了传输极限,为以后的产品设计提供了数据。
  17. 工厂方法模式--实现计算器
  18. Sketch of heart and QRS complex 心脏及QRS波群简图
  19. 分类机器学习中,某一标签占比太大(标签稀疏),如何学习?
  20. WWW 2020 | 多维时间序列间的异常关联与因果推断

热门文章

  1. dos模拟器存档_互联网档案馆最近收录了几千款DOS游戏
  2. 创业公司应该怎么分配员工期权?
  3. 微信小程序仿探探图片滑动效果(代码可下载,含注释)
  4. 郑州有哪些牛逼的互联网企业
  5. 【青少年编程】【三级】判断奇偶数
  6. 记录go-redis使用集群时,报错:CROSSSLOT Keys in request don‘t hash to the same slot
  7. 【2019-总结】初中毕业暑假集训No.2
  8. MDT 测评 | 小米 10 Pro — 屏幕素质报告
  9. 用最简单的方式整合JFreechart和Structs并修改背景色
  10. BIM家装族库丨RPC族