网络编程——MAC地址、IP地址和子网掩码

news2024/11/29 10:38:31

MAC地址、IP地址和子网掩码

一、MAC地址:硬件身份证

1、MAC地址的概念

MAC地址,即媒体访问控制地址(Media Access Control Address),是一个用于唯一标识网络设备的物理地址。每个网络接口卡(NIC)都会被分配一个全球唯一的MAC地址,它通常由48bit的值12个十六进制数字组成,被分为6组,用冒号或连字符隔开。前三组是厂商ID后三组是设备ID,MAC地址既是硬件的身份证,也可以看作是设备的数字指纹。

2、MAC地址的作用

设备识别: 在局域网(LAN)中,设备使用MAC地址来识别彼此,确保数据包被正确地发送到目标设备。
帧识别: 在以太网通信中,数据帧中包含源MAC地址和目标MAC地址,帮助交换机和路由器决定数据包的传递路径。
网络管理: 网络管理员可以根据MAC地址设置访问控制列表(ACL),限制或允许特定设备访问网络资源。

二、IP地址

1、IP概念

IP地址是一种Internet上的主机编址方式,也称为网际协议地址IP地址是任意一台主机在网络中的唯一标识

2、IP地址分类

IPV4:占32位
IPV6:占128位

3、IPV4地址的组成

IPV4一般使用点分十进制来表示,如:192.168.16.209

使用32bit,由(网络ID,主机D)两部分组成
子网ID:IP地址中由子网淹码中1盖的连续位
主机ID:IP地址中由子网掩码中0覆盖的连续位

4、IP地址的特点

子网ID不同的网络不能直接通信,如果要通信则需要路由器转发
主机ID 全为0的IP地址表示网段地址
主机ID 全为1的IP 地址表示该网段的广播地址

5、IPV4地址分类

A类网络

以0开头的是A类网络 – 美国高校、国内大型公司
默认8bit子网ID,第一位位0
范围:0.0.0.0 ~ 127.255.255.255

B类网络:

以10开头的是B类网络 – 私有IP
默认16bit子网ID,前两位为10
范围:128.0.0.0 ~ 191.255.255.255

C类网络 :

以110开头的是C类网络 – 私有IP 前3个字节为网络号,后1个字节为主机号
默认24bit子网ID,前三位为110
范围:192.0.0.0 ~ 223.255.255.255

D类网络 :

以1110开头的是D类网络 – 一般用于设置组播IP
前四位为1110
范围:224.0.0.0 ~ 239.255.255.255

E类网络

以11110开头,保留为今后使用
前五位为11110
范围:240.0.0.0 ~ 255.255.255.255

全0地址不能使用,主机号全为1的为广播地址

6、私有IP地址

公有IP (可直按连按 Internet):经由InterNIC所统一规划的IP私有IP(不可直接连接Iternet ):主要用于局城网络内的主机联机规划
在这里插入图片描述

7、回环(环回)地址

通常 127.0.0.1 称为回坏地址
功能:主要是测试本机的网络配置,能ping通127.0.0.1说明木机的网卡和IP协议安装都没有问题
注意:
127.0.0.1~127.255.255.254中的任何地都将回环到本地主机中不属于任何一个有类别地址类,它代表设备的本地虚拟接口,主要用于本主机测试用的

三、子网掩码

1、子网掩码概念

子网掩码 (subnet mask) 又叫网络码、地址码是一个 32bit 由1和0 组成的数值,并且1和0分别连续

2、作用

指明IP 地址中哪些位标识的是主机所在的子网以及哪些位标识的是主机号

3、特点

必须结合IP 地址一起使用,不能单独存在
IP 地址中由子网掩码中 1 覆盖的连续位为子网ID,其余为主机ID

4、子网掩码的表现形式

192.168.220.0/255.255.255.0
192.168.220.0/24
手动进行配置如下(linux)

ifconfig ethe 10.0.31.96 netmask 255.255.255.0

默认的子网掩码
A类IP地址子网掩码:255.0.0.0
B类IP地址子网掩码:255.255.0.0
C类IP地址子网掩码:255.255.255.0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/843431.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

I帧、P帧、B帧、GOP、IDR 和PTS, DTS之间的关系

一.视频传输原理 视频是利用人眼视觉暂留的原理,通过播放一系列的图片,使人眼产生运动的感觉。单纯传输视频画面,视频量非常大,对现有的网络和存储来说是不可接受的。为了能够使视频便于传输和存储,人们发现视频有大量…

用P2PNet进行大豆计数

文章目录 介绍在大豆数据集上可视化结果环境准备数据集结构数据链接模型训练模型推理代码介绍 这个仓库包含了P2PNet(Rethinking Counting and Localization in Crowds: A Purely Point-Based Framework)在大豆数据集上的pytorch实现。 在大豆数据集上可视化结果 环境准备 …

虚继承中对象占用的内存空间

1、虚继承中对象占用的内存空间1 #include <iostream> using namespace std;class AA {void show() {}int max(int a, int b) { return a > b ? a : b; } }; //函数并不占用内存空间class A {}; //占位符class B {int c; }; //含有一个int型数据成员class C :vi…

如何使用本地mock数据

当后端同事接口数据还未完成&#xff0c;我们前端开发需要使用数据时&#xff0c;怎么办呢&#xff1f;这里可以自己本地mock数据先用着啦&#xff01;仅在开发时使用 1. 创建一个 xxx.js文件&#xff0c;对外暴露一个数组&#xff1b; 对新建js文件编写导出&#xff0c;返回数…

创建线程、线程的挂起与恢复、线程的优先级与终止线程

目录 一、创建线程 CreateThread函数&#xff1a; 下面是示例&#xff1a; ​编辑 ThreadProc函数解释&#xff1a; DWORD的本质是 unsigned long PVOID的本质是 void* 二、线程的终止 1.WaitForSingleObject()函数&#xff1a; 示例如下&#xff1a; 2.ExitThread()函…

ChatGPT 作为 Python 编程助手

推荐&#xff1a;使用 NSDT场景编辑器 助你快速搭建可编辑的3D应用场景 简单的数据处理脚本 我认为一个好的起点是某种数据处理脚本。由于我打算让 ChatGPT 之后使用各种 Python 库编写一些机器学习脚本&#xff0c;这似乎是一个合理的起点。 目标 首先&#xff0c;我想尝试…

Elasticsearch同时使用should和must

问题及解决方法 must和should组合查询&#xff0c;should失效。使用must嵌套查询&#xff0c;将should组成的bool查询包含在其中一个must查询中。 SearchRequest request new SearchRequest(); request.indices("function_log");SearchSourceBuilder sourceBuilde…

第56步 深度学习图像识别:CNN梯度权重类激活映射(TensorFlow)

基于WIN10的64位系统演示 一、写在前面 类激活映射&#xff08;Class Activation Mapping&#xff0c;CAM&#xff09;和梯度权重类激活映射&#xff08;Gradient-weighted Class Activation Mapping&#xff0c;Grad-CAM&#xff09;是两种可视化深度学习模型决策过程的技术…

一文教你看懂Golang协程调度【GMP设计思想】

一文教你看懂Golang协程调度【GMP设计思想】 1 Golang调度器的由来 1.1 单进程的问题&#xff1a;进程阻塞、CPU浪费时间 单一执行程序、计算机只能一个任务一个任务来进行处理进程阻塞所带来的CPU浪费时间 1.2 多进程、多线程问题&#xff1a;设计复杂、高内存、CPU占用 设计…

面试热题(倒数第k个结点)

输入一个链表&#xff0c;输出该链表中倒数第k个节点。为了符合大多数人的习惯&#xff0c;本题从1开始计数&#xff0c;即链表的尾节点是倒数第1个节点。 例如&#xff0c;一个链表有 6 个节点&#xff0c;从头节点开始&#xff0c;它们的值依次是 1、2、3、4、5、6。这个链表…

通过cpolar内网穿透发布网页测试

通过内网穿透发布网页测试 文章目录 通过内网穿透发布网页测试 对于网站开发者来说&#xff0c;对完成的网页进行测试十分必要&#xff0c;同时还要在测试过程中充分采纳委托制作方的意见&#xff0c;及时根据甲方意见进行修改&#xff0c;但在传统的测试方式中&#xff0c;必须…

Scrum是什么意思,Scrum敏捷项目管理工具有哪些?

一、什么是Scrum&#xff1f; Scrum是一种敏捷项目管理方法&#xff0c;旨在帮助团队高效地开展软件开发和项目管理工作。 Scrum强调迭代和增量开发&#xff0c;通过将项目分解为多个短期的开发周期&#xff08;称为Sprint&#xff09;&#xff0c;团队可以更好地应对需求变…

【CSS3】CSS3 2D 转换 - scale 缩放 ③ ( 使用 scale 设置制作可缩放的按钮案例 )

文章目录 一、需求分析二、代码分析三、代码示例四、执行结果 一、需求分析 设置一个 按钮 , 默认状态下显示的样式如下 : 按钮 外部 有 圆形的外边框 ;按钮 中的文本 , 水平居中对齐 , 垂直居中对齐 ; 当鼠标移动到 按钮 上之后 , 鼠标 变为 小手 样式 , 并且 按钮 以 中心位…

实战项目——多功能电子时钟

一&#xff0c;项目要求 二&#xff0c;理论原理 通过按键来控制状态机的状态&#xff0c;在将状态值传送到各个模块进行驱动&#xff0c;在空闲状态下&#xff0c;数码管显示基础时钟&#xff0c;基础时钟是由7个计数器组合而成&#xff0c;当在ADJUST状态下可以调整时间&…

五、PC远程控制ESP32 LED灯

1. 整体思路 2. 代码 # 整体流程 # 1. 链接wifi # 2. 启动网络功能(UDP) # 3. 接收网络数据 # 4. 处理接收的数据import socket import time import network import machinedef do_connect():wlan = network.WLAN(network.STA_IF)wlan.active(True)if not wlan.isconnected(…

LVS集群

目录 1、lvs简介&#xff1a; 2、lvs架构图&#xff1a; 3、 lvs的工作模式&#xff1a; 1&#xff09; VS/NAT&#xff1a; 即&#xff08;Virtual Server via Network Address Translation&#xff09; 2&#xff09;VS/TUN &#xff1a;即&#xff08;Virtual Server v…

手写SpringCloud系列-一分钟理解微服务注册中心(Nacos)原理。

手写SpringCLoud项目地址&#xff0c;求个star github:https://github.com/huangjianguo2000/spring-cloud-lightweight gitee:https://gitee.com/huangjianguo2000/spring-cloud-lightweigh 一&#xff1a;什么是注册中心 1. 总结服务注册中心 我们可以理解注册中心就是一个…

LeetCode 热题 100JavaScript--2. 两数相加

给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外&#xff0c;这两个数都不会以 0 …

手机上的照片怎么压缩?推荐这几种压缩方法

手机上的照片怎么压缩&#xff1f;如果你需要通过电子邮件或短信发送照片&#xff0c;则可能需要将其压缩为较小的文件大小以便于发送。另外&#xff0c;如果您你的手机存储空间有限&#xff0c;可以通过压缩照片来节省空间。下面就给大家介绍几种压缩手机照片的方法。 1、使用…

Spring5.2.x 源码使用Gradle成功构建

一 前置准备 1 Spring5.2.x下载 1.1 Spring5.2.x Git下载地址 https://gitcode.net/mirrors/spring-projects/spring-framework.git 1.2 Spring5.2.x zip源码包下载&#xff0c;解压后倒入idea https://gitcode.net/mirrors/spring-projects/spring-framework/-/…