计算机网络之MAC和IP地址
MAC地址
在局域网中,硬件地址,又称为物理地址或MAC地址。
目前现在的局域网中实际上使用的都是6字节的MAC地址,所以每一个以太网设备都具有唯一的MAC地址。
MAC地址的格式
假设传输使用的是IP数据,V2的MAC帧较为简单,由五个字段组成,前面的两个字段分别为6字节的目的地址和源地址,第3个字段是类型,主要用来标识上一层用的是什么协议,第四个字段是数据字段,最后的一个字段是4字节的帧检验序列FCS,主要是检验整个MAC帧,但是不包括物理层插入的八字节的前同步码和帧开始符号。
从图上也能看到传输媒体时实际要比实际传送多8个字节,其中它也由两个字段构成,第一个字段时前7个字节的前同步码,作用是使接收端的适配器在接收MAC帧,实现位对齐,第二个字段是帧开始符号,即告诉适配器需要接收MAC信息帧了。
MAC只负责某一区间之间的通信传输,和IP不太一样,IP数据包是需要发送到最终目的地址,而MAC负责主机到源地址的上一级路由,以此不断在区间传输,然后最终可以送到最终目的地址。
IP协议
网络协议IP是TCP/IP体系中两个最主要的协议之一,也是互联网重要的标准协议之一
配套协议有:
地址解析协议ARP
网际控制报文协议ICMP
网际组管理协议ICMP
IP协议与其配套协议的图如下,各层都有对应的一些协议
将网络连接起来需要一些中间设备,包括转发器、网桥、桥接器、交换机、路由器、网关。
IP地址
IP地址在整个互联网范围内是唯一的,可以记作:
IP 地址 ::= {<网络号>, <主机号>}
假设IP地址是32位,需要假设需要n位网络位,则剩余需要(32 - n)位。
IP地址可以分成五类地址:
A类地址
B类地址
C类地址
D类地址
E类地址
C类地址可以表示的主机数:
2
8
−
2
=
254
2^8 - 2 = 254
28−2=254
之所以减2的是因为主机号全为1代表该网络下的全部主机,全为0代表的是某个网络
地址解析协议ARP
ARP协议:已经知道IP地址,可以找出其对应的硬件地址MAC地址。
RARP协议:可以根据硬件地址的主机可以通过RARP协议找出其IP地址。
ARP原理:可以在主机ARP高速缓存中存放一个从IP地址到硬件地址的映射表(ARP高速缓存(ARP cache))
ARP主要是ARP请求和ARP响应:主机会通过广播发送ARP请求,同一个链路的设备收到ARP请求,会拆开ARP请求包的内容,如果ARP请求的目标IP地址和自己的IP地址一致,这个设备就可以将这个MAC地址塞入ARP响应包返回给主机。
RARP协议:这时候需要架设一台RARP服务器,将这个设备接入到网络
比如一个设备想知道这个的IP地址,我的MAC地址是XXX,请告诉我,我的IP地址应该是什么?
RARP服务器接到这个消息后返回MAC地址为XXX的设备,IP地址为XXX给这个设备。
IP数据报的格式
IP数据报由首部和数据两部分组成,由首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。
IPV4:
IPV6的报文格式
IPV4和IPV6格式对比:
优势:
更大的地址空间
扩展的地址层次结构
灵活的首部格式
改进的选项
允许协议继续扩充
支持资源的预分配
IPV6首部改成8字节对齐
改进:
取消了首部检验和字段。这样可以加快路由器处理数据报的速度,在数据链路层和网络层都需要校验
取消了标识、标志和片偏移字段,这些功能已经包含在分片扩展首部中
取消选项字段,用扩展首部来选项功能
齐
改进:
取消了首部检验和字段。这样可以加快路由器处理数据报的速度,在数据链路层和网络层都需要校验
取消了标识、标志和片偏移字段,这些功能已经包含在分片扩展首部中
取消选项字段,用扩展首部来选项功能
计算机网络之MAC和IP地址的更多相关文章
- 重学计算机网络(二) - 曾记否,查IP地址
先献上几个梗 1.1.1.1 不是测试用的,原来一直没分配,现在被用来做一个DNS了,宣传是比谷歌等公司的dns服务 更保护用户隐私. IP地址255.255.255.255,代表有限广播,它的目标是 ...
- 计算机网络-4-1-2-分类的IP地址
有关IP最重要的文档就是互联网的正式标准RFC 791 IP地址及其表示方法 整个互联网就是一个单一,抽象的网络,IP地址就是给互联网上的每一台主机(或者路由器)的每一个接口分配一个在全世界范围内都是 ...
- 计算机网络【3】—— IP地址分类与子网划分
一.IP地址分类
- mac下ip地址重定向
在终端临时使用最高权限用vim编辑/etc下的hosts文件,若提示Password: 输入开机登录密码并回车: yanguobindeMacBook-Pro:~ yanguobin$ sudo vi ...
- linux 下查看硬件信息(mac,IP地址,硬盘型号,序列号等)
一.查看网卡mac地址 #安装lshw [root@server ~]# yum install lshw #使用方法 [root@rsync-server ~]# lshw -c network * ...
- mac ping ip地址
Mac下有个类似于Windows下CMD的模式叫做终端,但是这个模式和Windows下的CMD有着很大的差别. 工具/原料 Mac电脑一台 方法/步骤 首先通过菜单栏的搜索功能找到“终端”,也可以 ...
- 计算机网络之IP地址与MAC地址
IP地址 IP地址(Internet Protocol Address): 缩写为IP Adress,是一种在Internet上的给主机统一编址的地址格式,也称为网络协议(IP协议)地址. 它为互联网 ...
- IP地址和硬件地址 ARP协议
ip地址使用在网络层以上,是一个逻辑地址,物理地址是数据链路层和物理层使用的 在发送数据的时候,数据是从上层往下层发送的,通过tcp报文->ip数据报->mac数据帧 IP地址放在数据报的 ...
- IP 地址分类
1.1 网络IP地址分类 网络通讯过程中数据封装与解封过程(网际互联通讯过程) TCP/IP模型 1)应用层 总结记录一些常见网络协议以及对应的端口号(FTP HTTP telnet) 2)主机到主机 ...
- 网络编程概述和IP地址的获取方法
java网络通信概述 一.网络通信步骤: 主机1 主机2 QQ-------QQ FEIQ-----FEIQ 1.找到对方IP. 2.找到对方端口号.数据要发送到对方的应用程序上.为了标识这些应用程序 ...
随机推荐
- C++ || 用类 写交换函数 ||函数指针传递
点击查看代码 #include <iostream> using namespace std; void swap(int* a,int* b) //函数参数为指针形式 { int p = ...
- K8S多节点部署
一.k8s多节点部署(接上篇博客) 1.环境准备 服务器 ip 组件 k8s集群master01 192.168.142.3 kube-apiserver.kube-controller-manage ...
- Hash中的bucket什么意思?
这个好理解.无序容器的内部是由一个个的bucket(桶)构成的,每个bucket里面由相同hash的元素构成. 因此无序容器的搜索是先根据hash值,定位到bucket,然后再在bucket里面搜索符 ...
- Go_day04
Go基础语法 指针 指针式存储另一个变量内存地址的变量 &a 取出a的内存地址 *b 若指针b存放的式a的地址 那么 *b就直接指向a的内存 可以直接操作其中的值 指针的使用 func mai ...
- 老系统的奇葩问题-tomcat7启动失败
好多年的tomcat7系统了 当时部署安装为了服务 直接启动 就这么简单 好多年没动过了 这次修改了些东西 需要重启 却报错了... 解决: 把服务删除 使用bat启动 成功. 原因:可能是多个 ...
- MySQL存储过程札记
DELIMITER // CREATE PROCEDURE GetAllProducts() BEGIN SELECT * FROM products; END //DELIMITER ; 第一个命令 ...
- #HDU2255#奔小康赚大钱(KM模板题)
Problem Description传说在遥远的地方有一个非常富裕的村落,有一天,村长决定进行制度改革:重新分配房子.这可是一件大事,关系到人民的住房问题啊.村里共有n间房间,刚好有n家老百姓,考虑 ...
- 声网自研传输层协议 AUT 的落地实践丨Dev for Dev 专栏
本文为「Dev for Dev 专栏」系列内容,作者为声网大后端传输协议负责人 夏天. 针对实时互动应用对网络传输带来的新需求和新挑战,声网通过将实时互动中的应用层业务需求与传输策略的分层和解耦,于 ...
- vite项目生产环境去掉console信息【转载】
环境变量引入 通常去掉console为生产环境,即需要引入环境变量.具体请看这篇文章: vite项目初始化之~环境变量 注意 与webpacak相比,vite已经将这个功能内置到了,所以我们只需要配置 ...
- consumer goods cloud 之后续慢慢看系列
继之前的内容和帮助文档之外,整理一些其他有用的CG资源,有时间可以深入学习一下. 零售执行: https://rise.articulate.com/share/R9_PIF3mcNMuAi4iUtA ...