Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >JavaEE初阶---网络原理(四)--IP协议/DNS协议

JavaEE初阶---网络原理(四)--IP协议/DNS协议

作者头像
阑梦清川
发布于 2025-02-24 07:15:41
发布于 2025-02-24 07:15:41
380
举报
文章被收录于专栏:学习成长指南学习成长指南

1.初识网络层(了解即可)

网络层做的事情就是下面的两个:

1)地址管理:就是对于这个地址的分配;

2)路由选择:两个节点之间的路径有很多,我们需要进行规划;

​ 网络层主要就是学习这个IP协议:

image-20241030215156220
image-20241030215156220

​ IP-v4:这个图上面的4位版本;

​ IP-v6:如果上面的这个是6位版本就是我们的IP-v6;

​ 上面的两个就是最常见的两个情况

3)16位总长度:IP数据包的总长度;

​ IP协议支持拆包组包的功能,协议自己是支持的,不需要我们自己手动实现;

4)16位标识:如果一个大包需要拆成多个小包,我们的小包的这个属性就是一样的;

​ 13位偏移:越小数据越靠前,越大数据越靠后,对于我们的数据进行排序;

​ 3位标记:是不是最后一个包,是否可以拆包;

​ 上面的三个就是我们的IP协议实现的拆包组包的相关的设计~~

5)8位生存时间:我们的这个数据包还可以生存多久数据包转发经过路由器,经过一个,这个TTL就会-1,表 示我们可以经过的这个路由器的个数,经过这个之后还没有到达我们的目的地,就会被丢弃;

我们的数据包被创建出来的时候,这个TTL就会被分配一个固定的数值,然后被我们使用;

6)8位协议:查看我们的数据包是UDP数据包还是TCP数据包;

7)下面的这个是我们的IP里面最重要的,我们的这个IP地址就是一个32位的数据,只不过为了理解,写成了点分式的形式;

image-20241030221244544
image-20241030221244544

2.地址管理

IP地址,就是一个32位的整数,这个是有限的,但是我们的这个上网设备很多,但是又不可以重复,因此就会出现这个IP地址不够用的情况;近几年更是出现了物联网的情况,因此这个IP地址的使用就显得捉襟见肘;

如何缓解这个IP地址不够用的问题:

2.1动态分配

1)动态分配:提高IP地址的利用率,这个方案不可以根治我们的这个问题,只能说是一个过渡方案,但是这个方式在现在还是广泛存在的;

2.2网络地址转换

2)网络地址转换NAT:一个IP地址代表一批设备,而不是一个IP一个设备;

IP地址分为两类:

2.1)内网IP:10. 或者是172.16.-----172.31.或者是172.168.

​ 内网IP之间是可以重复的;就是不同的局域网里面的这个IP是可以重复的,在这个局域网李米娜,我们的这个IP是不可以重复的;

2.2)外网IP:不可以重复,一个外网IP就是一个设备;

网络地址转换的过程:我们的一个局域网里面的这个电脑,经过这个运营商服务器的时候会进行这个IP的转换,我们的转换之后的这个IP才是可以进入这个广域网的,然后传输给我们的这个服务器;

我们的这个服务器收到的就是我们的转换之后的IP地址;

我们的这个服务器返回响应的时候,根据这个端口号分配给这个局域网里面的不同的电脑;

即使我们的局域网里面的这个不同设备的端口号也是一样的,这个时候经过路由器进行转换的时候,这个IP和这个端口号都会进行转换,否则我们到时候这个响应返回的时候无法根据这个端口号进行设备的区分,因此这个端口号会进行转换,但时候相应的时候再转换回去;路由器会记住这个端口号转换前后的这个映射的关系,方便到时候返回的时候可以把这个响应发送到对应的设备;

image-20241031085242804
image-20241031085242804

2.3IP-v6最终解

IP-V6使用16字节表示网络上面的地址;

4字节:2^(4*8);

16字节:2^(16*8)—这个数据其实就是非常非常大的;-----从根本上解决问题;

实际上这个IP-v6的普及程度非常低的,虽然他们的这个诞生时间相近;

IP-V4和我们的IP-v6不兼容,我们只能买新的路由器替换掉原理的这个,才可以使用我们的这个IP-v6,这个也是我们的这个IP-v6没有很大程度上进行普及的原因;

3.网段划分

IP地址====网络号(标识局域网)++主机号(标识这个局域网里面的设备);

192.168.1.10:这个IP里面的这个前面的三个部分就是我们的网络号,最后一个部分就是主机号(使用这个点号座位分隔符,分割为了4个部分);

相邻的局域网之间的这个网络号不可以是一样的;

4.以太网协议–数据链路层

数据链路层:通过网线,光纤进行通信进行通信----以太网,横跨数据链路层和物理层;

以太网数据帧:帧头+载荷+帧尾;

image-20241031095239639
image-20241031095239639

目的地址:这个里面的目的地址指的不是我们上面说的这个IP地址,而是一套新的机制—mac地址;

MAC地址是6字节,表示的这个数据的范围比我们的IP地址大了很多,目前来说,这个MAC地址还是够用的,不像我们的IP地址出现这个不够用的情况;

IP地址:整条路线的这个源IP和目的IP;

MAC地址:就是我们的这个局部非源IP和目的IP;

北京------》天津------》上海:

这个例子里面,我们的这个北京到天津的过程中;我们的源IP就是北京,但是目的不一定,如果是这个IP地址,这个时候就是上海,但是如果是我们的这个MAC地址,这个时候就是我们的天津;

因此这个IP地址是从全局进行考量,进行路径的规划,我们的这个MAC地址则是从局部进行处理的,这个是两者的区别;

5.DNS应用层协议

IP地址描述网络上面不同设备的位置;

IP地址不适合进行宣传,我们使用域名进行宣传www.baidu.com这样的就是域名;

域名IP之间的这个相互转换,根据可以接受的域名转换为这个IP,域名需要进行购买,100左右一年;

有的域名比较贵,例如我们熟知的靓号:8888,6666之类的这个;

之前使用host文件表示记录这个域名和IP之间的关系,但是这个方法现在已经不再使用了;

后来我们搞了这个DNS服务器,这个是一组服务器,我们想要对于这个IP和域名之间的这个转换进行更新的时候,直接对于这个一组服务器进行操作,但是又有新的问题:

如果对于这组服务器的访问量过大,这个时候我们的这组服务器是不是会出现问题,这个是经常常见的,因此我们出现了下面的两个解决方案:

1)开源:让这个网络运行商进行我们的这个镜像服务器的搭建,就是这个数据内容是一样的,但是不是直接和我们的原本的服务器进行交互,而是去和我们的镜像服务器去交互,这样就可以让我们的这些镜像服务器去缓解我们的真实的服务器的压力;

2)节流:我们让这个访问的设备进行数据缓存,例如我们这个电脑想要一段时间里面10次访问这个服务器,这个时候我们把这个第一次访问的数据存储到我们的这个本地缓存里面去,后续的这个操作直接在我们的这个本地缓存的基础上面进行操作,而不是直接和这个服务器进行交互;(让这个域名的更换,没有那么频繁);

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-10-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【网络原理】——带你认识IP~(长文~实在不知道取啥标题了)
IP报头,单位为4个字节,4位 范围[0101-1111],换算为10进制,[5,15],所以报头最大为60字节,最小固定为20字节
三三是该溜子
2024/12/30
1640
【网络原理】——带你认识IP~(长文~实在不知道取啥标题了)
【JavaEE初阶】TCP/IP协议(二)
如果一个IP数据报携带的数据载荷太长了,超过64kb,就会在网络层针对数据进行拆分。把一个数据拆分成多个IP数据报。再分别发送给接收方,再重新拼装。 接收方:数据链路层,针对两个数据帧进行分用,得到两个IP数据报,交给网络层,网络层针对这俩IP数据报进行解析,把里面的载荷拼成一个,交给传输层。
xxxflower
2023/10/16
2480
【JavaEE初阶】TCP/IP协议(二)
Linux网络IP协议
网络层是在复杂的网络环境中确定一个合适的路径. IP协议本质是提供一种能力,将数据跨网络从A主机传输到B主机。 前置认识
有礼貌的灰绅士
2025/04/23
1150
Linux网络IP协议
【IP 协议】深入解析网络通信关键要素:IP 协议、DNS 及相关技术
8 位服务类型:包括 3 位优先权字段(已弃用),4 位 TOS 字段和 1 位保留字段(必须置为 0),4 位 TOS 字段分别表示:最小延时(数据从 A 到 B 消耗时间短),最大吞吐量(数据从 A 到 B单位时间内传输数量多),最高可靠性,最小成本(设备上消耗的资源少),这四个相互冲突,只能选择一个
2的n次方
2024/10/15
3880
【IP 协议】深入解析网络通信关键要素:IP 协议、DNS 及相关技术
【JavaEE】网络原理详解
“1234|180E40N”或者“1234,180E40N”等都可以为自定义格式,我们在这字符串里面用什么样的分隔符都是可以灵活进行选择的,只要确保客户端和服务器, 使用同一套规则进行通信即可。 自定义格式的可维护性比较差,当属性多了的时候,放眼看上去一片混乱
E绵绵
2025/04/04
820
【JavaEE】网络原理详解
Linux网络-IP协议
网络层就是为了解决不同网络有不同的规范要求的差异问题,寻找一个不同网络间都能共同遵守的网络通信规范,以便不同网络间能相互识别,并接受对方的网络请求。也就是一个中转站的作用,两个毫无交集的网络通过这个中转站来建立交集
用户9645905
2022/11/15
4.2K0
Linux网络-IP协议
【JavaEE】网络原理之初识
其能通过路由器去使几台电脑去连接在一块,但数量是有限的。 一般家用路由器,常见的是5 个网口:1WAN + 4LAN 要想让这几个电脑能够在同一个局域网中上网,就需要把他们连接到LAN 口,WAN 口是用来连上级的路由器的。 那么能不能让一个路由器连接的电脑更多呢? 有个叫交换机的东西: 可以扩展路由器的端口,我们把路由器的LAN口连在交换机上,交换机上有一定数量的LAN口从而可以连一定数量的电脑,这样就可以扩展电脑的数量。
E绵绵
2025/03/16
460
【JavaEE】网络原理之初识
浅谈TCP/IP四层网络模型
就好比以前的台式电脑,想要上网,除了有网线,还需要有Modem,然后把网线连接到Modem,这样才可以上网。这种就是从物理上,通过网线这种物理层次的东西让电脑与电脑之间实现通信。美国的海底光缆也是物理层的一种表现。通过网线也好,海底光缆也好,它们之间传输的都是0和1的电路信号
Ryan_小鱼
2025/03/20
2990
网络原理一> ip协议相关特性
3位标志位:描述了其中一个标志位,是否触发了拆包操作,还有一个标志位描述当前数据包是否是最后一个
用户11305962
2025/02/05
1240
网络原理一> ip协议相关特性
大白话聊OSI七层模型和TCP/IP四层模型
小伙伴们可能有疑问,这个东西还用写文章吗,太基础了吧,网上文章多的是,随便一搜索就能找到。
HUC思梦
2020/10/28
10.9K0
大白话聊OSI七层模型和TCP/IP四层模型
网络基础:网络IP 、子网掩码 、路由器 、DNS知识分享
IP地址的子网掩码设置不是任意的。如果将子网掩码设置过大,也就是说子网范围扩大,那么,根据子网寻径规则,很可能发往和本地主机不在同一子网内的目标主机的数据,会因为错误的判断而认为目标主机是在同一子网内,那么,数据包将在本子网内循环,直到超时并抛弃,使数据不能正确到达目标主机,导致网络传输错误;如果将子网掩码设置得过小,那么就会将本来属于同一子网内的机器之间的通信当做是跨子网传输,数据包都交给缺省网关处理,这样势必增加缺省网关(文章下方有解释)的负担,造成网络效率下降。因此,子网掩码应该根据网络的规模进行设置。如果一个网络的规模不超过254台电脑,采用“255.255.255.0”作为子网掩码就可以了,现在大多数局域网都不会超过这个数字,因此“255.255.255.0”是最常用的IP地址子网掩码;假如在一所大学具有1500多台电脑,这种规模的局域网可以使用“255.255.0.0”。
全栈程序员站长
2021/04/07
1.3K0
网络基础:网络IP 、子网掩码 、路由器 、DNS知识分享
【JavaEE初阶】入门视角-网络原理的基础理论的了解
独立模式:所谓的独立模式就是计算机之间是相互独立的状态,但是这种状态效率是非常低的,可以看到这里的其他两位人员要等上一个人员处理完之前才能够进行操作;
用户11288949
2024/10/17
1250
【JavaEE初阶】入门视角-网络原理的基础理论的了解
【Linux网络】网络基础:数据链路层协议
前言: 在当今这个信息化高速发展的时代,网络已经成为我们生活、工作中不可或缺的一部分。从发送一封电子邮件到观看一部在线电影,从远程办公到云计算服务,网络无处不在地连接着我们。然而,在这看似简单便捷的网络背后,隐藏着复杂而精细的通信机制。数据链路层协议,作为网络协议栈中的关键一环,正是这些机制中不可或缺的重要组成部分。
Eternity._
2024/12/24
1550
【Linux网络】网络基础:数据链路层协议
Netty基础—3.基础网络协议
首先是七层模型和四层模型,然后是一次请求的全过程,接着是传输层的TCP连接(三次握手和四次挥手),然后就是传输层TCP协议上的Socket编程,最后是应用层的HTTP协议。
东阳马生架构
2025/05/19
1000
【JavaEE】——初始网络原理
意识把一个网口扩展成多个,但扩展出来的多个网口彼此间会影响。而交换机则不会出现这种情况
三三是该溜子
2024/12/30
590
【JavaEE】——初始网络原理
【Linux网络】网络层IP协议,数据链路层:以太网、ARP协议
但是随着互联网的飞速发展,这种划分方案的局限性很快显现出来,A 类地址很容易浪费,于是提出了新的划分方案:CIDR(Classless Interdomain Routing)
_小羊_
2025/03/02
1590
【Linux网络】网络层IP协议,数据链路层:以太网、ARP协议
TCP/IP协议族
物理层(RS-232、V.35)和 数据链路层(HDLC、X.25)涉及到在通信信道上传输的原始比特流,它实现传输数据所需要的机械、电气、功能性及过程等手段,提供检错、纠错、同步等措施,使之对网络层显现一条无错线路;并且进行流量调控。Bits、Frames
mcxfate
2020/08/02
8390
二、三、四层交换技术的原理是啥?建议收藏!
二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。具体的工作流程如下:
网络技术联盟站
2021/07/02
1.1K0
网络协议详解
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送消息时将包含目标IP地址的ARP请求广播道网络上的所有主机,并接受返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。
mathor
2018/10/10
1.4K0
网络原理(六)——其他重要协议和技术
其他重要协议和技术 DNS(Domain Name System) DNS是一整套从域名映射到IP的系统 DNS背景 TCP/IP中使用IP地址和端口号来确定网络上的一台主机的一个程序. 但是IP地址
海盗船长
2020/08/27
6040
相关推荐
【网络原理】——带你认识IP~(长文~实在不知道取啥标题了)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档