计算机网络基础(网络层IP/ARP)

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 互联网上的每台主机都有两个地址一个是物理地址(设备的地址)另一个是逻辑地址。物理地址在主机生产时已经被设置好了,逻辑地址是在主机接入互联网时被分配的一个唯一的IP。而网络层的作用就是保证网络中计算机之间的能正确的查找到主机的逻辑地址。

前言


互联网上的每台主机都有两个地址一个是物理地址(设备的地址)另一个是逻辑地址。物理地址在主机生产时已经被设置好了,逻辑地址是在主机接入互联网时被分配的一个唯一的IP。而网络层的作用就是保证网络中计算机之间的能正确的查找到主机的逻辑地址。

IP(Internet Protocol)

网络异常,图片无法展示
|
整个的因特网就是一个单一的、抽象的网络。IP地址就是给因特网上的每一个主机(或路由器)的每一个接口分配一个在全世界范围是唯一的32位的标识符。IP地址的结构使我们可以在因特网上很方便地进行寻址。IP地址现在由因特网名字和 数字分配机构ICANN (Internet Corporation for Assigned Names and Numbers)进行分配。在了解IP协议之前我们先来了解一下虚拟互联网络。所谓虚拟互连网络也就是 逻辑互连网络,它的意思就是互连起来的各种物理网络的异构性本来是客观存在的,但是我们利用IP协议就可以使这些性能各异的网络在网络层上看起来好像是一个统一的网络。

  • 网络互连的实现:通过各种不同的设备(转发器-物理层 网桥或桥接器-数据链路层 路由器-网络层 网关-上层)将网络连接起来,使不同的主机间可以进行通信
  • IP地址分类:分为A B C(因特网) D(多播使用,一对多) E(保留)五类
  • 按照因特网的观点,一个网络是指具有相同网络号net-id的主机的集合,因此,用转发器或网桥连接起来的若干个局域网仍为一个网络,因为这些局域网都具有同样的网络号。具有不同网络号的局域网必须使用路由器进行互连
  • A类:A类地址的主机号占3字节,因此每一个A类网络中的最大主机数是224 - 2,即16777 214,IP地址空间共有2的32次方(即4 294 967 296)个地址。整个A类地址空间共有231个地址,占有整个IP地址空间的50%
  • B类:B类地址的网络号字段有2字节,但前面两位(10)已经固定了,只剩下14位可以进行分配。
  • C类:C类地址有3个字节的网络号字段,最前面的3位是(1 10),还有21位可以进行分配。
网络类别 最大可指派数 第一个可指派数 最后一个可指派 最大主机数
A 126 1 126 16777214
B 16383 128.1 191.255 65534
C 2097 151 192.0.1 223.255.255 254
  • IP地址的特点:
  • 每一个IP地址都由网络号主机号两部分组成。
  • 实际上IP地址是标志一个主机(或路由器)和一条链路的接口。
  • 按照因特网的观点,一个网络是指具有相同网络号net-id的主机的集合,因此,用转发器或网桥连接起来的若干个局域网仍为一个网络,因为这些局域网都具有同样的网络号。具有不同网络号的局域网必须使用路由器进行互连
  • 在IP地址中,所有分配到网络号的网络(不管是范围很小的局域网,还是可能覆盖很大地理范围的广域网)都是平等的。所谓平等,是指因特网同等对待每一个IP地址。
  • 物理地址(MAC地址)和IP地址:
  • 物理地址是数据链路层和物理层使用的地址,而IP地址是网络层和以上各层使用的地址,是一种逻辑地址(称IP地址是逻辑地址是因为IP地址是用软件实现的)。
  • IP 地址放在 IP 数据报的首部,而硬件地址则放在 MAC 帧的首部。在网络层和网络层以上使用的是 IP 地址,而数据链路层及以下使用的是硬件地址。

ARP

  • 地址解析协议ARP(ARP是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题)
  • 已经知道了一个机器(主机或路由器)的IP地址,需要找出其相应的硬件地址。地址解析协议ARP就是用来解决这样的问题的
  • 每一个主机都设有一个ARP高速缓存(ARPcache),里面有本局域网上的各主机和路由器的IP地址到硬件地址的映射表
  • 处理流程:ARP进程在本局域网上广播发送一个ARP请求分组=》在本局域网上的所有主机上运行的ARP进程都收到此ARP请求分组。=》主机B的IP地址与ARP请求分组中要查询的IP地址一致,就收下这个ARP请求分组,并向主机A发送ARP响应分组(其格式见[COME06]),并在这个ARP响应分组中写入自己的硬件地址
  • ARP四种典型的情况
  • 发送方是主机(如H1),要把IP数据报发送到同一个网络上的另一个主机(如H2)。
  • 发送方是主机(如H1),要把IP数据报发送到另一个网络上的一个主机(如H3或H4)。
  • 是用来将IP地址解析为MAC地址的协议。主机或三层网络设备上会维护一张ARP表,用于存储IP地址和MAC地址的映射关系,一般ARP表项包括动态ARP表项和静态ARP表项。
  • 作用:将IP地址解析为MAC地址。
    在局域网中,当主机或其它三层网络设备有数据要发送给另一台主机或三层网络设备时,需要知道对方的网络层地址(即IP地址)。但是仅有IP地址是不够的,因为IP报文必须封装成帧才能通过物理网络发送,因此发送方还需要知道接收方的物理地址(即MAC地址),这就需要一个通过IP地址获取物理地址的协议,以完成从IP地址到MAC地址的映射。地址解析协议ARP即可实现将IP地址解析为MAC地址。
  • 分类:动态ARP 静态ARP 免费ARP 代理ARP
类型 适用环境 特点
动态ARP 拓扑结构复杂 通信实时性要求高 动态ARP表项由ARP协议通过ARP报文自动生成和维护,可以被老化,可以被新的ARP报文更新,也可以被静态ARP表项覆盖。
静态ARP 网络结构简单,局域网 静态ARP表项是由网络管理员手工建立的IP地址和MAC地址之间固定的映射关系。静态ARP表项不会被老化,不会被动态ARP表项覆盖。
免费ARP 自身IP改变 主机被分配了IP地址或者IP地址发生变更后,必须立刻检测其所分配的IP地址在网络上是否是唯一的,以避免地址冲突。主机通过发送ARP Request报文来进行地址冲突检测,这种操作被称为免费ARP。
Proxy ARP 通信的主机位于不同的网络 当两台通信主机位于不同网络时,但由于主机A未设置网关,所以他将会以广播的形式发送ARP Request报文,请求B的MAC地址,但是广播报文无法被路由器转发,所以主机B无法收到主机A的请求报文。
  • 在主机A和B的通信中ARP的请求工作流程如下:
  • 查询路由表是否有对应的IP有则继续通信,没有则进行下一个
  • 查询不到后,主机A在局域网内发送要查找的ip地址的广播内容,局域网内的所有主机接收到广播检查IP是否是自己的IP,如果不是,则丢弃。
  • 当B主机确定A请求报文中的IP与自己匹配,则将A的IP和MAC地址添加到本地缓存表中。
  • B主机同时会向A主机回复一个含自身MAC地址的请求报文。
  • A主机收到报文后会将B主机的IP和MAC地址存入自身的ARP缓存表中
  • 继续通信
  • 为何需要IP并用ARP来找硬件地址,直接使用硬件地址不更好么?
  • 不同网络硬件地址格式啥的都不一致
  • 使用硬件地址则需要更复杂的硬件地址转换

总结


相关文章
|
27天前
|
存储 缓存 网络协议
|
7天前
|
网络协议 网络安全 数据安全/隐私保护
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
【10月更文挑战第27天】计算机主机网关的作用类似于小区传达室的李大爷,负责将内部网络的请求转发到外部网络。当小区内的小不点想与外面的小明通话时,必须通过李大爷(网关)进行联系。网关不仅帮助内部设备与外部通信,还负责路由选择,确保数据包高效传输。此外,网关还参与路由表的维护和更新,确保网络路径的准确性。
24 2
|
8天前
|
网络协议 安全 NoSQL
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练等具体操作详解步骤;精典图示举例说明、注意点及常见报错问题所对应的解决方法IKUN和I原们你这要是学不会我直接退出江湖;好吧!!!
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
|
1月前
|
缓存 监控 网络协议
计算机网络的常用的网络通信命令(Windows)
本文介绍了网络技术中常用的命令,如ping用于检测网络连通性,ipconfig查看TCP/IP配置,netstat监控网络状态,arp显示和修改ARP缓存,at安排任务执行,tracert追踪路由,以及nbtstat获取NetBIOS信息。
26 1
|
16天前
|
存储 缓存 Ubuntu
配置网络接口的“IP”命令10个
【10月更文挑战第18天】配置网络接口的“IP”命令10个
43 0
|
21天前
|
安全 区块链 数据库
|
25天前
|
运维 安全 网络协议
Python 网络编程:端口检测与IP解析
本文介绍了使用Python进行网络编程的两个重要技能:检查端口状态和根据IP地址解析主机名。通过`socket`库实现端口扫描和主机名解析的功能,并提供了详细的示例代码。文章最后还展示了如何整合这两部分代码,实现一个简单的命令行端口扫描器,适用于网络故障排查和安全审计。
|
2月前
|
缓存 网络协议 网络架构
网络抓包分析【IP,ICMP,ARP】以及 IP数据报,MAC帧,ICMP报和ARP报的数据报格式
本文详细介绍了如何使用网络抓包工具Wireshark进行网络抓包分析,包括以太网v2 MAC帧、IP数据报、ICMP报文和ARP报文的格式,以及不同网络通信的过程。文章通过抓包分析展示了IP数据报、ICMP数据报和ARP数据报的具体信息,包括MAC地址、IP地址、ICMP类型和代码、以及ARP的硬件类型、协议类型、操作类型等。通过这些分析,可以更好地理解网络协议的工作机制和数据传输过程。
网络抓包分析【IP,ICMP,ARP】以及 IP数据报,MAC帧,ICMP报和ARP报的数据报格式
|
28天前
|
网络协议 网络架构
【第三期】计算机网络常识/网络分层模型与数据包封装传输过程
【第三期】计算机网络常识/网络分层模型与数据包封装传输过程
43 0
|
5天前
|
存储 安全 算法
网络安全与信息安全:漏洞、加密技术及安全意识的重要性
如今的网络环境中,网络安全威胁日益严峻,面对此类问题,除了提升相关硬件的安全性、树立法律法规及行业准则,增强网民的网络安全意识的重要性也逐渐凸显。本文梳理了2000年以来有关网络安全意识的研究,综述范围为中国知网中篇名为“网络安全意识”的期刊、硕博论文、会议论文、报纸。网络安全意识的内涵是在“网络安全”“网络安全风险”等相关概念的发展中逐渐明确并丰富起来的,但到目前为止并未出现清晰的概念界定。此领域内的实证研究主要针对网络安全意识现状与问题,其研究对象主要是青少年。网络安全意识教育方面,很多学者总结了国外的成熟经验,但在具体运用上仍缺乏考虑我国的实际状况。 内容目录: 1 网络安全意识的相关