IP基础知识总结

IP他负责的是把IP数据包在不同网络间传送,这是网络设计相关的,与操作系统没有关系。所以这部分知识,不是网络的重点。IP和路由交换技术联系紧密。但是要作为基本知识点记住。

一、基本概念

        网络层作用:实现主机与主机之间通信。

        IP作用:在复杂网络环境中将数据包 发送给目的主机。

IP与MAC都是针对俩个主机之间通信,有啥区别?

答:MAC负责直连的俩设备之间的通信传输;IP负责非直连的俩网络之间的通信传输。

网络中数据包传输中也是如此,源IP地址和目标IP地址在传输过程中是不会变化的(前提:没有使用 NAT 网络),只有源 MAC 地址和目标 MAC 一直在变化。

IP分类

        优点:路由器主机解析IP地址时通过首四位0、10、110、1110、1111,即可判断出属于哪一类IP,进而快速得知网络号和主机号。咱们人也可以根据IP范围快速得到IP地址属于哪一类。

         缺点:同一网络下无地址层次,缺少地址灵活性;无法与现实世界匹配。

公有&私有IP地址

公有 IP 地址是由 ICANN 组织管理,公有 IP 地址在整个互联网范围内保持唯一。(万维网使用)

私有IP地址是由内部的 IT 人员管理。(局域网使用)

因此公有IP不可能相同,不同公有IP网段中可能存在相同的私有IP!

192.168开头就是私有地址,范围:192.168.0.0 ~ 192.168.255.255

本地回环地址:127.0.0.1 永远只会寻找当前本机

无分类地址CIDR

        形式 a.b.c.d/x,其中 /x 表示前 x 位属于网络号,后32-x为主机号。

        x即为子网掩码位数

子网划分

        作用:对网络地址合理利用,避免浪费IP地址。

        子网划分是将主机地址分为两个部分:子网网络地址和子网主机地址

 IP分片与重组

每种数据链路的最大传输单元 MTU 都是不相同的,以太网的 MTU 是 1500 字节。

当 IP 数据包大小大于 MTU 时, IP 数据包就会被分片。

分片与重组,均由主机完成。

在分片传输中,一旦某个分片丢失,则会造成整个 IP 数据报作废,所以 TCP 引入了 MSS 也就是在 TCP 层进行分片不由 IP 层分片。UDP尽量不要传超过MTU的数据包。

MSS=MTU-20字节TCP报头-20字节IP报头

二、IP协议相关技术(六)

  • DNS 域名解析
  • ARP 与 RARP 协议
  • DHCP 动态获取 IP 地址
  • NAT 网络地址转换
  • ICMP 互联网控制报文协议
  • IGMP 因特网组管理协议

DNS域名解析

        IP与域名相互映射,因此可以相互推导。

        在实际中,客户机向本地域名服务器查询是递归查询,本地域名服务器向其他域名服务器是迭代查询。主机请求信息一次,本地域名服务器请求信息多次。

递归查询是:客户机发送一条查询请求到本地域名服务器,发现缓存中没有主机名和IP地址对的信息,那么本地域名服务器就往上继续查询,发送一个查询报文,如果在某一级域名服务器找到了主机名和IP地址对信息,就直接返回。如果找不到,那么这个域名服务器又会作为客户机去请求上一级域名服务器,直至根域名服务器,根名称服务器收到DNS请求后,把所查询得到的所请求的DNS域名中发送给顶级域名服务器,让顶级域名服务器去往下级域名服务器请求查找,如果找到了就原路返回。某域名服务器-->...->顶级域名服务器-->根域名服务器-->下一级域名服务器-->...-->本地域名服务器-->客户机。

递归查询是A访问B,B再访问C,C访问D,直到查询到,然后依次返回,D返回给C,C再返回给B,B再返回A。

迭代查询是A访问B,B把C的地址返回给A,A再去请求查询C,C再把D的地址返回给A,A再去访问D。

ARP(地址解析协议)

        由IP地址广播得到MAC地址。

RARP(地址逆解析协议)由MAC地址得到IP地址。需要假设RARP服务器。

DHCP(动态获取IP)

        通常都是通过 DHCP 动态获取 IP 地址,大大省去了配 IP 信息繁琐的过程。

        DHCP 客户端进程监听的是 68 端口号,DHCP 服务端进程监听的是 67 端口号

4步获取IP: DHCP 交互中,全程都是使用 UDP 广播通信

  • 客户端首先发起 DHCP 发现报文(DHCP DISCOVER) 的 IP 数据报,由于客户端没有 IP 地址,也不知道 DHCP 服务器的地址,所以使用的是 UDP 广播通信,其使用的广播目的地址是 255.255.255.255(端口 67) 并且使用 0.0.0.0(端口 68) 作为源 IP 地址。DHCP 客户端将该 IP 数据报传递给链路层,链路层然后将帧广播到所有的网络中设备。
  • DHCP 服务器收到 DHCP 发现报文时,用 DHCP 提供报文(DHCP OFFER) 向客户端做出响应。该报文仍然使用 IP 广播地址 255.255.255.255,该报文信息携带服务器提供可租约的 IP 地址、子网掩码、默认网关、DNS 服务器以及 IP 地址租用期
  • 客户端收到一个或多个服务器的 DHCP 提供报文后,从中选择一个服务器,并向选中的服务器发送 DHCP 请求报文(DHCP REQUEST进行响应,回显配置的参数。
  • 最后,服务端用 DHCP ACK 报文对 DHCP 请求报文进行响应,应答所要求的参数

路由器不会转发广播包,一般主机与DHCP服务器不会在一个局域网,因此使用DHCP中继代理

DHCP中继代理作用:对不同网段的 IP 地址分配也可以由一个 DHCP 服务器统一进行管理。

  • DHCP 客户端会向 DHCP 中继代理发送 DHCP 请求包,而 DHCP 中继代理在收到这个广播包以后,再以单播的形式发给 DHCP 服务器。

  • 服务器端收到该包以后再向 DHCP 中继代理返回应答,并由 DHCP 中继代理将此包广播给 DHCP 客户端 。

NAT(网络地址转换)

之前讲了私有IP与公有IP,内网的的私有IP想要与外网的设备通信就需要转换为公有IP,NAT就是进行私有IP与公有IP相互转换。

为了实现私有IP与公有IP 1:N的映射关系,每个私有IP与公有IP映射中在私有IP加入端口号,则可以保证每个私有IP与一个公有IP存在着唯一的映射关系。

 NAT缺点:

  • 外部无法主动与 NAT 内部服务器建立连接,因为 NAPT 转换表没有转换记录。
  • 转换表的生成与转换操作都会产生性能开销。
  • 通信过程中,如果 NAT 路由器重启了,所有的 TCP 连接都将被重置。

解决方法:

1、使用IPv6

2、使用NAT穿透技术

        就是客户端主动从 NAT 设备获取公有 IP 地址,然后自己建立端口映射条目,然后用这个条目对外通信,就不需要 NAT 设备来进行转换了。

ICMP(互联网控制报文协议)

ICMP 主要的功能包括:确认 IP 包是否成功送达目标地址、报告发送过程中 IP 包被废弃的原因和改善网络设置等

ICMP 大致可以分为两大类:

  • 一类是用于诊断的查询消息,也就是「查询报文类型
  • 另一类是通知出错原因的错误消息,也就是「差错报文类型

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

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

相关文章

linux之Ubuntu系列(三)远程管理指令☞SSH 高级应用 RSA非对称加密 以及免密登录,配置别名

对称加密 、非对称加密 1、对称加密中加密和解密使用的秘钥是同一个;非对称加密中采用两个密钥,一般使用公钥进行加密,私钥进行解密。 2、对称加密解密的速度比较快,非对称加密和解密花费的时间长、速度相对较慢。 3、对称加密的…

81. 正则表达式

一、概述二、匹配单个字符三、匹配一组字符四、使用元字符五、重复匹配六、位置匹配七、使用子表达式八、回溯引用九、前后查找十、嵌入条件参考资料 一、概述 正则表达式用于文本内容的查找和替换。 正则表达式内置于其它语言或者软件产品中,它本身不是一种语言或…

uniapp微信小程序使用axios(vue3+axios+ts版)

版本号 "vue": "^3.2.45", "axios": "^1.4.0", "axios-miniprogram-adapter": "^0.3.5", 安装axios及axios适配器,适配小程序 yarn add axios axios-miniprogram-adapter 使用axios 在utils创建utils/…

7个银行的软件测试项目实战,别再说简历项目不知道怎么写了

目录 前言 项目描述1:上海华瑞银行直连票据项目 项目描述2:平安金服风控中台系统 项目描述3:众安创展APP项目 项 目4: 招商银行VTM自助渠道服务系统 项 目5:招商银行票据支付 项 目6: 平安银行风控系…

Virus Total 曝数据泄露大事件:涉及多国情报部门

The Hacker News 网站披露,可疑文件和病毒在线检测平台 VirusTotal 曝出数据泄露事故,一名员工无意中将部分 VirusTotal 注册客户的姓名、电子邮件地址等敏感数据信息上传到了恶意软件扫描平台,此举导致约 5600 名用户数据泄露。 据悉&#x…

《AI大模型:现状与发展,从ChatGPT到xAI的探索》

《AI大模型:现状与发展,从ChatGPT到xAI的探索》 自从GPT-3.5和ChatGPT在2022年底横空出世以来,AI大模型的发展和应用在全球范围内呈现出快速发展的趋势。这种趋势源于AI技术在理解、模拟和预测方面的巨大潜力,也源于人类对于更高效…

【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(备份+恢复篇)

深入探索和分析MySQL数据库的数据备份和恢复实战开发指南 MySQL数据库备份全量备份全量备份应用场景 增量备份binlogbinlog主要作用binlog的作用主要有两个方面 开启binlog日志功能要开启MySQL的binlog日志步骤 mysqlbinlogmysqlbinlog的使用案例 全量备份与增量备份结合按天全…

安全开发-PHP应用留言板功能超全局变量数据库操作第三方插件引用后台模块SessionCookieToken身份验证唯一性

文章目录 开发环境数据导入-mysql架构&库表列数据库操作-mysqli函数&增删改查数据接收输出-html混编&超全局变量第三方插件引用-js传参&函数对象调用身份验证-Cookie使用身份验证-Session使用唯一性判断-Token使用具体安全知识点:Cookie和Session都…

ansible 批量设置主机名

修改之前的主机名 # hostname -i ::1 127.0.0.1 编写hosts文件 在任意位置编写hosts文件 # cat hosts [test] ailog4x10.221.206.227 hostnamepaas-10-221-206-227 ansible_python_interpreter/usr/bin/python3 ansible_ssh_host10.221.206.227 ansible_ssh_port22 ansible…

复习java基础

复习一天有点忘了的知识: 结构化编程 结构化程式设计(英语:Structured programming)是1960年代开始发展起来的一种编程典范。它采用子程序、程式码区块、for循环以及while循环等结构来取代传统的goto。 指导思想 自顶向下、逐步求精、模块化 编程过程 流程图是…

Django配置数据库ORM基础字段选项增删改查F对象Q对象聚合查询原生数据库操作SQL注入

前置条件 MySQL已安装安装pip3 install mysqlclient. #是对C语言操作MySQL数据库的一个简单封装支持Python3安装不上mysqlclient的话,pip3 install pymysql #纯Python实现的一个驱动. 用pymysql的话需要伪装成mysqlclient(因为Django源代码要求mysqlcli…

VUE学习六之绑定样式及条件属性

绑定样式及条件属性 绑定样式条件属性 绑定样式 <!DOCTYPE html> <html><head><meta charset"UTF-8" /><title>绑定样式</title><style>.basic{width: 400px;height: 100px;border: 1px solid black;}.happy{border: 4px…

Appium 安卓环境的配置

目录 前言&#xff1a; 环境准备 写个脚本玩玩 前言&#xff1a; 在使用Appium进行安卓自动化测试之前&#xff0c;需要配置相应的安卓环境。 环境准备 为了避免走弯路&#xff0c;我们先要确保三点&#xff1a; Android SDK API > 17 (Additional features require …

【Python爬虫与数据分析】进阶语法

目录 一、异常捕获 二、迭代器 三、拆包、聚合、映射 四、filter() 函数 五、匿名函数 六、闭包 七、装饰器 一、异常捕获 异常捕获可增强程序的健壮性&#xff0c;即程序在遇到遇到异常的时候并不会做中断处理&#xff0c;而是会将异常抛出&#xff0c;由程序员来分析…

Kafka 入门到起飞 - 核心概念(术语解释)

在kafka之旅&#xff0c;我们会大量讨论Kafka中的术语&#xff0c;那么就让我们先来了解一下这些核心概念 消息(Message)&#xff1a; kafka的数据单元称为消息&#xff0c;相当于DB里的一行数据或一条记录 消息由字节数组组成 批次&#xff1a; 生产者组一批数据再向kafka推送…

C++编程(四) —— OOP

文章目录 前言一、this指针二、构造和析构三、深拷贝浅拷贝浅拷贝深拷贝 编程实践 前言 什么是OOP思想&#xff1f; OOP语言的四大特征&#xff1a; 抽象&#xff0c;封装/隐藏&#xff0c;继承&#xff0c;多态 一、this指针 this指针》类》很多对象 一套成员方法是如何处…

网络层数据链路层协议—网络

文章目录 1.网络层协议—IP协议1.1协议字段 2.数据链路层协议2.1以太网2.2以太网帧2.3mtu2.4ARP协议 1.网络层协议—IP协议 1.1协议字段 &#xff08;1&#xff09;16位标识&#xff1a;mtu规定了需要数据报分片的大小&#xff0c;16位标识来标识原始数据 &#xff08;2&…

键盘控制鼠标移动

记录一下&#xff0c; windows用autohotkeys crtl 方向键 / 空格 &#xff1a;移动鼠标 / 鼠标左击 crtl shift 方向键 / 空格&#xff1a; 快速移动鼠标 / 鼠标右击 ^up::MouseMove,0,-75,0,r ^up::MouseMove,0,-15,0,r ^down::MouseMove,0,75,0,r ^down::MouseMove,0,…

深入学习 Redis - 深挖经典数据类型之 string

目录 前言 一、string 类型 1.1、操作命令 set / get &#xff08;设置 / 获取&#xff09; mset / mget&#xff08;批量 > 设置 / 获取&#xff09; setnx / setex / psetex &#xff08;设置时指定不同方式&#xff09; incr / incrby / decr / decrby/ incrbyfloat…

船舶中压配电板应用弧光保护,可解决母排故障短路问题,对于提高船舶电站的安全性、稳定性,降低经济损失具有重要意义。-安科瑞黄安南

摘要&#xff1a;船舶中压配电板弧光故障导致的设备损坏和停电事故&#xff0c;不仅会造成较大的经济损失&#xff0c;而且严重影响船舶电站的安全稳定运行&#xff0c;威胁船舶电站操作人员的安全。弧光保护是基于电力系统开关柜发生弧光故障时而设计的一套母线保护系统&#…