ARP协议

  • ARP--地址解析协议(Address Resolution Protocol),实现通过 对方的IP地址(域名) 寻找对方的 MAC地址 ARP的功能

本地电脑查看 IP 和 MAC 对应关系:cmd  > arp -a

ARP协议的工作流程:MAC地址(理解为电脑的物理地址)

  1. 主机A 首先查看自己的 ARP表,如果找到了的 主机B 的 MAXAC地址,则直接对 IP 数据包进行帧封装,发送给主机B;
  2. 如果 主机A 在 ARP表 中找不到 主机B的MAC地址,则将缓存该数据报文,然后以广播方式发送一个 ARP请求报文。ARP请求报文 中带上 源IP地址 和 源MAC地址(主机A),目标IP地址 和 目标MAC地址 为 主机B的 IP地址 和 全0的MAC地址。广播,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即主机B)会对该请求进行处理。
  3. 主机B 比较 自己的IP地址 和 ARP请求报文中的目标IP地址,当两者相同时进行如下处理:将ARP请求报文中的发送端(即主机A)的IP地址 和 MAC地址 存入自己的 ARP表中。之后以 单播方式 发送ARP响应报文给 主机A,其中包含了自己的 MAC地址。
  4. 主机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进制

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协议、路由协议 均属于网络层协议的更多相关文章

  1. 网络基础知识-TCP/IP协议各层详解

    TCP/IP简介 虽然大家现在对互联网很熟悉,但是计算机网络的出现比互联网要早很多. 计算机为了联网,就必须规定通信协议,早期的计算机网络,都是由各厂商自己规定一套协议,IBM.Apple和Micro ...

  2. 网络基础二 tcp/ip协议簇 端口 三次握手 四次挥手 11种状态集

    第1章 概念介绍 1.1 VLAN 1.1.1 什么是VLAN VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成 ...

  3. 网络基础之 tcp/ip五层协议 socket

    1 网络通信协议(互联网协议) 1.1 互联网的本质就是一系列的网络协议 1.2 osi七层协议 1.3 tcp/ip五层模型讲解 1.3.1 物理层 1.3.2 数据链路层 1.3.3 网络层 1. ...

  4. 【Linux网络基础】TCP/IP 协议簇(各个常见协议介绍)

    一.应用层协议 1. FTP   协议所在层次:应用层协议 名称:FTP协议 协议端口:20,21 协议说明: FTP(File Transfer Protocol,文件传输协议)是TCP/IP协议组 ...

  5. 网络基础之TCP/IP协议族

    一.TCP/IP协议族 1.什么是协议? 计算机与网络设备相互通信依赖于相同的方法,比如,双方通信基于何种语言等.而把通信所依赖的这一切方法统称为规则,而我们就把这种规则称为协议. 协议中存在各种各样 ...

  6. 【Linux网络基础】TCP/IP协议簇的详细介绍(三次握手四次断开,11种状态)

    一.TCP/IP协议簇(DoD参考模型) 用于简化OSI层次,以及相关的标准. 传输控制协议(tcp/ip)簇是相关国防部DoD所创建的,主要用来确保数据的完整性以及在毁灭性战争中维持通信 是由一组不 ...

  7. 三分钟网络基础-ARP协议

    什么是 ARP 协议 地址解析协议 ARP (Address Resolution Protocal):在同一局域网下,根据已知道的主机或路由器的 IP 地址,找出其相应的硬件地址. 高速缓存 每一个 ...

  8. Linux网络基础协议和ip管理

    1.简述osi七层模型和TCP/IP五层模型 osi七层模型分别是:物理层.数据链路层.网络层.传输层.会话层.表示层.应用层. 1)物理层:这一层的主要功能是二进制传输数据,界定连接器和网线的规格: ...

  9. 网络基础 外网IP,内网IP,虚拟机的网络设置

    外网IP,内网IP的关系 在这三类地址中,绝大多数的IP地址都是公有地址,需要向国际互联网信息中心申请注册.但是在IPv4地址协议中预留了3个IP地址段,作为私有地址,供组织机构内部使用. 这三个地址 ...

随机推荐

  1. cvtColor(src, src_gray, CV_BGR2GRAY)报错

    利用cvtColor 进行灰度转换时,不能将  灰度图 转为灰度图,所以在转换前,需对原始图像进行判断. 将这个改成以下 int main(int argc, char* argv[]) { Mat ...

  2. python之路之课后作业

    以下代码只包含管理员代码,用户代码和管理员相似 #!/usr/bin/env python # -*- coding: utf-8 -*- import sys import os sys.path. ...

  3. 2.7.1 元素定位:selenium消息框处理 (alert、confirm、prompt)

    来源:http://blog.csdn.net/cui_angel/article/details/7784211        http://www.cnblogs.com/tobecrazy/p/ ...

  4. koa2第一天

    router.get("/hello",async(ctx )=>{ const a=await new Promise(reslove=>reslove(123)) ...

  5. bzoj3744: Gty的妹子序列 (BIT && 分块)

    强制在线的区间询问逆序对数 如果不是强制在线 就是可以用莫队乱搞啦 强制在线的话 用f[i][j]记录第i块到第j个点之间的逆序对数 用s[i][j]记录前i块中小于等于j的数字个数 离散化一下 BI ...

  6. BLUE引擎检查放入装备的名称全名脚本

    格式:CHECKDLGITEMNAME 名称 检查条件需要配合QUERYITEMDLG命令 ;========================================== [@main]#AC ...

  7. ASP.NET/C# Razor视图引擎深入浅出

    在ASPX中我们使用 <% %>在里面编写C#代码在Razor中我们将会使用@{}编写C#代码1.基础——@+属性显示计算1+2的值:<span>1+2=@(1+2)</ ...

  8. Bugku-CTF加密篇之python(N1CTF) [HRlgC2ReHW1/WRk2DikfNBo1dl1XZBJrRR9qECMNOjNHDktBJSxcI1hZIz07YjVx]

    python(N1CTF)  

  9. Hadoop服务的端口50070无法访问的问题

    Hadoop启动之后,遇到一个奇怪的问题: VMware虚拟机中Hadoop服务的端口50070无法访问的问题---通过127.0.0.1:50070.localhost:50070.主机名:5007 ...

  10. 仿QQ聊天程序(java)

    仿QQ聊天程序 转载:牟尼的专栏 http://blog.csdn.net/u012027907 一.设计内容及要求 1.1综述 A.系统概述 我们要做的就是类似QQ这样的面向企业内部的聊天软件,基本 ...