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

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: 互联网上的每台主机都有两个地址一个是物理地址(设备的地址)另一个是逻辑地址。物理地址在主机生产时已经被设置好了,逻辑地址是在主机接入互联网时被分配的一个唯一的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来找硬件地址,直接使用硬件地址不更好么?
  • 不同网络硬件地址格式啥的都不一致
  • 使用硬件地址则需要更复杂的硬件地址转换

总结


相关文章
|
22小时前
|
域名解析 网络协议 关系型数据库
【网络原理】——带你认识IP~(长文~实在不知道取啥标题了)
IP协议详解,IP协议管理地址(NAT机制),IP地址分类、组成、特殊IP地址,MAC地址,数据帧格式,DNS域名解析系统
|
2天前
|
数据采集 安全 搜索推荐
HTTP代理IP纯净度 提升用户网络体验的核心竞争力
随着互联网发展,使用HTTP动态代理IP的需求日益增加。高纯净度的代理IP在隐私与安全、网络体验和业务运营方面至关重要。它能保护用户信息、提高数据安全性、确保访问速度和连接稳定,并提升业务效率与信誉度。
14 2
|
1月前
|
网络协议 网络安全 数据安全/隐私保护
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
计算机网络概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等
52 4
|
1月前
|
网络协议 定位技术 网络架构
IP 路由:网络世界的导航仪
IP 路由:网络世界的导航仪
41 3
|
1月前
|
数据采集 Java API
java怎么设置代理ip:简单步骤,实现高效网络请求
本文介绍了在Java中设置代理IP的方法,包括使用系统属性设置HTTP和HTTPS代理、在URL连接中设置代理、设置身份验证代理,以及使用第三方库如Apache HttpClient进行更复杂的代理配置。这些方法有助于提高网络请求的安全性和灵活性。
|
7月前
|
缓存 网络协议 网络架构
【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)
【计算机网络】第三章 数据链路层(MAC地址 IP地址 ARP协议)
174 1
|
1月前
|
网络协议 安全 NoSQL
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练等具体操作详解步骤;精典图示举例说明、注意点及常见报错问题所对应的解决方法IKUN和I原们你这要是学不会我直接退出江湖;好吧!!!
网络空间安全之一个WH的超前沿全栈技术深入学习之路(8-2):scapy 定制 ARP 协议 、使用 nmap 进行僵尸扫描-实战演练、就怕你学成黑客啦!
|
2月前
|
缓存 网络协议 Linux
Python渗透测试之ARP毒化和协议应用
Python渗透测试之ARP毒化和协议应用
38 0
|
4月前
|
网络协议
用户态协议栈04-定时arp-table的实现
用户态协议栈04-定时arp-table的实现
|
4月前
|
缓存 网络协议
用户态协议栈02-arp reply实现
用户态协议栈02-arp reply实现