网络基础:ARP 协议、IP协议、路由协议 均属于网络层协议
ARP协议
- ARP--地址解析协议(Address Resolution Protocol),实现通过 对方的IP地址(域名) 寻找对方的 MAC地址 ARP的功能
本地电脑查看 IP 和 MAC 对应关系:cmd > arp -a

ARP协议的工作流程:MAC地址(理解为电脑的物理地址)
- 主机A 首先查看自己的 ARP表,如果找到了的 主机B 的 MAXAC地址,则直接对 IP 数据包进行帧封装,发送给主机B;
- 如果 主机A 在 ARP表 中找不到 主机B的MAC地址,则将缓存该数据报文,然后以广播方式发送一个 ARP请求报文。ARP请求报文 中带上 源IP地址 和 源MAC地址(主机A),目标IP地址 和 目标MAC地址 为 主机B的 IP地址 和 全0的MAC地址。广播,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即主机B)会对该请求进行处理。
- 主机B 比较 自己的IP地址 和 ARP请求报文中的目标IP地址,当两者相同时进行如下处理:将ARP请求报文中的发送端(即主机A)的IP地址 和 MAC地址 存入自己的 ARP表中。之后以 单播方式 发送ARP响应报文给 主机A,其中包含了自己的 MAC地址。
- 主机A 收到 ARP响应报文后,将主机B 的 MAC地址 加入到自己的 ARP表中以用于后续报文的转发,同时将 IP数据包 进行封装后发送出去。

如果找到对方的 MAC地址,是不是所有的机器都能够通信;如果两个地址(192.168.1.85 、192.168.2.34)互相知道了对方的 MAC地址,能够直接通信吗?------不一定,我们就需要 IP协议来判定
IP协议
- IP(Internet Protocol),分配给 用户上网 使用 的 网际协议 的 设备 的 数字标签,分为两大类: IPV4 和 IPv6
- IPv4 地址: 192.168.0.1 --常用
二进制: 11000000.10101000.00000001.00000001
2的七次方 ----> 2的0次方 四段
- IPv6 地址: 1030::C9B4:FF12:48AA:1A2B --16进制
- IPv4 地址: 192.168.0.1 --常用
1. IP地址组成
- IP 地址由 32bit 组成,分成4段并用“.”分隔: 192. 168. 0.1
- 结构: IP地址 = 网络号 + 主机号
- 网络号标识的是一个子网
- 主机号标识的是子网中的某台主机(分配给每一个电脑的 ip)
2. 子网掩码
- 表示方式::255.255.255.0 或者 /24.
- 作用:用来标识子网, 必须跟IP地址一起存在。
- IPv4地址:192. 168. 0.1 + IPv4 子网掩码:255.255.255.0 有三个 255 代表前三个是网络号
3. 示例
第一个机器:193.168.1.1 + 255.255.255.0 三个255前三位是网络号,代表193.168.1 前三位是网络号
第二个机器:193.168.2.4 + 255.255.255.0 三个255前三位是网络号,代表193.168.2 前三位是网络号
这两个机器 网络号 不相同,只有网络号相同才可以通信,上面两个就不能够直接通信
组成:子网掩码跟 IP 地址一样,也是由连续的 1 和 0 组成,连续的 1 表示 网络地址,连续的 0 表示 主机地址。只有 网络地址 相同的主机 在同一个子网,才能直接通信。
路由协议
- 路由协议(Routing protocol)指定数据包转送方式的网上协议。
- 静态路由:手动配置一条路由----都会形成一个路由表 ---默认路由全0 通过网关来上网
- 动态路由:动态学习收敛路由----都会形成一个路由表--了解
- 本地电脑看路由表命令:route print
- 路由表中默认路由全0 的网关来上网
*******请大家尊重原创,如要转载,请注明出处:转载自:https://www.cnblogs.com/shouhu/ 谢谢!!*******
网络基础:ARP 协议、IP协议、路由协议 均属于网络层协议的更多相关文章
- 网络基础知识-TCP/IP协议各层详解
TCP/IP简介 虽然大家现在对互联网很熟悉,但是计算机网络的出现比互联网要早很多. 计算机为了联网,就必须规定通信协议,早期的计算机网络,都是由各厂商自己规定一套协议,IBM.Apple和Micro ...
- 网络基础二 tcp/ip协议簇 端口 三次握手 四次挥手 11种状态集
第1章 概念介绍 1.1 VLAN 1.1.1 什么是VLAN VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成 ...
- 网络基础之 tcp/ip五层协议 socket
1 网络通信协议(互联网协议) 1.1 互联网的本质就是一系列的网络协议 1.2 osi七层协议 1.3 tcp/ip五层模型讲解 1.3.1 物理层 1.3.2 数据链路层 1.3.3 网络层 1. ...
- 【Linux网络基础】TCP/IP 协议簇(各个常见协议介绍)
一.应用层协议 1. FTP 协议所在层次:应用层协议 名称:FTP协议 协议端口:20,21 协议说明: FTP(File Transfer Protocol,文件传输协议)是TCP/IP协议组 ...
- 网络基础之TCP/IP协议族
一.TCP/IP协议族 1.什么是协议? 计算机与网络设备相互通信依赖于相同的方法,比如,双方通信基于何种语言等.而把通信所依赖的这一切方法统称为规则,而我们就把这种规则称为协议. 协议中存在各种各样 ...
- 【Linux网络基础】TCP/IP协议簇的详细介绍(三次握手四次断开,11种状态)
一.TCP/IP协议簇(DoD参考模型) 用于简化OSI层次,以及相关的标准. 传输控制协议(tcp/ip)簇是相关国防部DoD所创建的,主要用来确保数据的完整性以及在毁灭性战争中维持通信 是由一组不 ...
- 三分钟网络基础-ARP协议
什么是 ARP 协议 地址解析协议 ARP (Address Resolution Protocal):在同一局域网下,根据已知道的主机或路由器的 IP 地址,找出其相应的硬件地址. 高速缓存 每一个 ...
- Linux网络基础协议和ip管理
1.简述osi七层模型和TCP/IP五层模型 osi七层模型分别是:物理层.数据链路层.网络层.传输层.会话层.表示层.应用层. 1)物理层:这一层的主要功能是二进制传输数据,界定连接器和网线的规格: ...
- 网络基础 外网IP,内网IP,虚拟机的网络设置
外网IP,内网IP的关系 在这三类地址中,绝大多数的IP地址都是公有地址,需要向国际互联网信息中心申请注册.但是在IPv4地址协议中预留了3个IP地址段,作为私有地址,供组织机构内部使用. 这三个地址 ...
随机推荐
- Java之字符串替换replace()
replace(char oldChar, char newChar)返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 而生成的 import java.uti ...
- JAVA Feign
Feign 是一种声明式.模板化的 HTTP客户端 . 在Spring Cloud中使用 Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程 ...
- java i++与++i的区别
i++是先赋值,然后再自+1:++i是先自+1,后赋值. 用代码表示就是: 若 a = i++; 则等价于 a=i;i=i+1; 而 a = ++i; 则等价于 i=i+1;a=i; 例子: int ...
- 这里有一份热乎乎的git相关操作
文件操作 git init (添加文件): git status (查看文件状态): git diff (查看修改内容): git rm (删除文件): git add (把文件保存在暂存区): gi ...
- c++中sort函数调用报错Expression : invalid operator <的内部原理 及解决办法
转自:https://www.cnblogs.com/huoyao/p/4248925.html 当我们调用sort函数进行排序时,中的比较函数如果写成如下 bool cmp(const int &a ...
- EAC3 spectral extension原理
1.Spectral extension简介 Spectral extension是通过低频的transform coefficients合成高频transform coefficients的过程. ...
- MAKEFILE_LIST/CURDIR/MAKECMDGOALS/MAKEOVERRIDES/MAKEFLAGS
http://blog.chinaunix.net/uid-29460203-id-4191975.html https://www.xuebuyuan.com/1148403.html?mobile ...
- php preg正则表达式的组成部分
定界符号 : 多种都可以,常用为// 原子 : 最小的一个匹配单位 (放在定界符中),在一个正则表达式中,至少要有一个原子 1,打印字符(a-z A-Z 0-9 ~!@#$%^&*()_+.. ...
- EntityFramework 根据时间筛选数据
需求:根据当前时间,获取条件合适的数据,其中截止时间只比较日期. 1. 运行会报错的版本: var lifeWorkEventBatch = clientRepositoryContainer.Lif ...
- 用synchronized实现互斥锁
package seday10;/** * @author xingsir * 互斥锁 * 当使用synchronized锁定多个代码片段,并且他们指定的同步监视器对象是同一个时,那么这些代码片段之间 ...