网络工程3(子网通信,为什么要使用mac和ip)

文章目录

  • [一. 子网如何通讯](#一. 子网如何通讯)
    • [1. 子网内部通信](#1. 子网内部通信)
    • [2. 子网外部通信](#2. 子网外部通信)
  • [二. 交换机和路由器的连接](#二. 交换机和路由器的连接)
  • [三. 为什么不只使用mac地址或ip地址进行网络通信](#三. 为什么不只使用mac地址或ip地址进行网络通信)
    • [1. 首先要明确的是,不管是只用mac或只用ip通信](#1. 首先要明确的是,不管是只用mac或只用ip通信)
  • [四. 子网设备如何获得ip](#四. 子网设备如何获得ip)
  • [五. 不同网段的主机无法直接通信的原因](#五. 不同网段的主机无法直接通信的原因)

一. 子网如何通讯

1. 子网内部通信

通过arp请求找到目标主机的mac,然后通过交换机或集线器将数据包转发到对应主机。

2. 子网外部通信

当在子网中没有找到目标设备mac时,主机就会默认向默认网关发送arp请求(因为默认网关的ip是知道的),然后获取到默认网关的mac。之后通过网关的路由表向外发送数据包。

二. 交换机和路由器的连接

交换机连接到路由器的一个网关(端口),设备会向路由器广播ip请求,然后路由器作为dhcp服务器或者设置静态ip,通过交换机分配给设备。

三. 为什么不只使用mac地址或ip地址进行网络通信

1. 首先要明确的是,不管是只用mac或只用ip通信

  • (1)他们都不存在子网,因为子网需要ip和mac相互配合
  • (2)他们都是直接通信,不存在NAT转换,arp请求,每个mac和ip都是独一无二的
  • (3)只用mac会导致mac表溢出
  • (4)只用ip会导致ip地址枯竭
  1. 如果只使用mac地址通信。

    就不会使用路由器(路由表),只需要使用交换机。但是这样每增加一个设备,每台交换机mac表都需要增加一条记录。第一可能造成mac表溢出,第二会在广播的时候占用大量资源和时间写入mac表

  2. 如果只使用ip通信。

    就不会存在子网,因为子网需要ip和mac相互配合。这样一来所有的ip都是公网ip,很快就会枯竭

    同时,我们只需要使用路由器的路由表不断跳即可实现通信。

四. 子网设备如何获得ip

  1. 通过dhcp服务器,只要是同一网关的子网设备都可以通过dhcp服务器(路由器)分配一个私网ip
  2. 通过静态ip,主机本身就可以自己手动设置ip,只要设置合理在网络拓扑中利用arp协议就可以实现通信。这里要注意:1.设置静态ip如果网关设置错误但ip正确,只是不能向外通信,子网内可以通信。因为有交换机2. 如果ip设置错误,网关正确子网内部不能通信但可以向外通信。

五. 不同网段的主机无法直接通信的原因

因为它们的网络部分不同,主机会认为目标主机不在本地子网内,不会向目标主机发送 ARP 请求 ,而是向默认网关路由器发送arp请求。

路由表是没有私网路由的,所以这些数据包将无法被正确转发。

相关推荐
treesforest5 小时前
AI安全系统如何识别异常访问?IP风险识别正在成为关键能力
网络·人工智能·tcp/ip·安全·web安全
江华森7 小时前
TCP/IP 协议栈实战 — 7 个实验详解
网络·tcp/ip·智能路由器
酉鬼女又兒8 小时前
零基础入门计算机网络运输层:端到端通信核心作用、端口号分类规则、复用分用工作机制及UDP与TCP协议全方位对比详解
网络·网络协议·tcp/ip·计算机网络·考研·udp·php
dog2508 小时前
不要再继续优化 TCP
网络协议·tcp/ip·php
Shepherd06199 小时前
【IT 运维】Apache 使用 mod_remoteip 恢复 Cloudflare 后的真实访客 IP
运维·tcp/ip·apache
C++ 老炮儿的技术栈10 小时前
Qt工控实战:自研机器人TCP长连接客户端(粘包处理+心跳保活+自动重连完整源码解析)
qt·tcp/ip·机器人
行走__Wz12 小时前
【网工入门-eNSP模拟-07】单臂路由
网络·智能路由器
CS_SKILL12 小时前
腾讯后台社招一面:系统调用、TCP 可靠性、URL 到 DNS,再加一个计时函数设计题
网络·tcp/ip·面试·腾讯校招·后台开发面经
xxwxx__12 小时前
51单片机 + ESP8266 TCP通信实战:从零实现WiFi远程控制
c语言·嵌入式硬件·tcp/ip·51单片机
不方便,你要方便吗?13 小时前
华为数通 HCIA 到 HCIE 学习大纲(第二部分:HCIP 篇)
智能路由器