文章目录
最重要的20%
理解 IP(Internet Protocol)协议的关键部分可以帮助你掌握其大部分知识。以下是 IP 协议中最重要的 20% 内容:
-
IP地址:IP地址是Internet上唯一标识计算机或其他网络设备的地址。IPv4使用32位地址,而IPv6使用128位地址。
-
IPv4和IPv6:IPv4是Internet上最常用的IP地址版本,但IPv6正在逐渐取代它,因为IPv4地址空间有限,而IPv6提供了更大的地址空间。
-
子网掩码:子网掩码用于将IP地址分成
网络部分和主机部分
。它帮助确定一个IP地址属于哪个网络
。 -
路由:IP协议负责在Internet上
路由数据包
。路由器是负责转发数据包的设备,它们使用IP地址来确定数据包的最终目的地
。 -
IP数据报:IP数据报是通过Internet传输的数据包。它包含源和目标IP地址,以及数据本身。
-
IP协议的分组服务:IP协议提供了两种基本的分组服务:无连接服务(如UDP)和可靠的连接服务(如TCP)。
-
服务质量(QoS):IP协议支持服务质量的指定,以确保不同类型的数据获得适当的优先级和处理。
-
NAT(Network Address Translation):NAT允许
私有网络使用单个公共IP地址
访问Internet,它通过将私有IP地址转换为公共IP地址
来实现。 -
DHCP(Dynamic Host Configuration Protocol):DHCP允许计算机在
连接到网络时自动获取IP地址和其他网络配置信息【动态分配】
。 -
ICMP(Internet Control Message Protocol):ICMP用于在IP网络上发送错误消息和控制消息。
-
IP多播:IP多播允许一台计算机向多个目标发送数据包,而不是单独发送给每个目标。
-
IP安全:IPsec是一组协议,用于保护Internet传输中的数据,包括身份验证、数据加密和数据完整性验证。
-
IP地址分配:IP地址可以通过
静态分配或动态分配
来分配给设备。动态分配通常使用DHCP完成。 -
IP地址类型:IP地址可以是
公有的或私有的
。公有IP地址可由Internet上的任何计算机访问,而私有IP地址通常局限于局域网内部。 -
IP路由表:路由器使用路由表来决定如何将数据包从源路由到目的地。
-
IP协议栈:IP协议是Internet协议栈中的核心组件之一,它位于网络层,负责数据包的路由和转发。
-
TTL(Time To Live):TTL是IP数据包中的字段,指定数据包在网络上可以传输的最大跳数,用于防止数据包在网络中无限循环。
-
IP地址归属地查询:可以通过查询IP地址归属地数据库来确定IP地址的物理位置和所属的网络。
-
IP地址的分配和管理机构:IP地址由互联网分配机构(例如ICANN)负责分配和管理。
-
IPv6过渡技术:IPv6过渡技术允许IPv4和IPv6网络共存,并实现从IPv4向IPv6的平稳过渡。
根据历史的脉络看IP协议
理解IP协议和相关技术的发展历史可以帮助我们更深入地理解它们的重要性和功能。让我们沿着时间线来探索:
-
1970s - 1980s: IP协议的早期阶段始于ARPANET,这是互联网的前身之一。最初的IP版本是IPv4,它于1981年由IETF(互联网工程任务组)定义。
-
1990s: 互联网的普及加速了IPv4地址空间的耗尽。为了解决这个问题,IPv6的开发工作开始了。1998年,IETF发布了IPv6的第一个正式规范。
-
2000s: 在这个时期,IPv6的部署推进缓慢,主要是因为IPv4仍然可以满足互联网的需求,而且迁移到IPv6需要庞大的投资和升级。然而,IPv6的重要性逐渐被认识到,各种IPv6过渡技术也开始被研究和实施。
-
2000s - 2010s: 互联网的快速增长导致IPv4地址的短缺问题日益突出。为了缓解IPv4地址短缺的压力,NAT(网络地址转换)技术得到广泛应用,允许多个设备共享单个公共IP地址。
-
2010s: IPv6的部署逐渐加速,尤其是在移动设备和新兴市场的发展中。一些主要的互联网服务提供商开始支持IPv6,并且IPv6的采用率逐步提高。
-
2010s - 现在: 随着IPv4地址池的枯竭越来越严重,对IPv6的需求变得更加迫切。许多互联网服务提供商、企业和组织开始积极采用IPv6,并且全球范围内的IPv6流量逐渐增加。同时,IPv6过渡技术得到了进一步的发展和实施,以实现IPv4和IPv6之间的平稳过渡。
通过这个历史脉络,我们可以看到IP协议和相关技术是如何随着互联网的发展不断演变和完善的。IPv6的引入和部署,以及与之相关的过渡技术,标志着互联网进入了一个新的阶段,为未来的互联网发展奠定了坚实的基础。
好的,让我们更细致地探讨每个具体的IP技术以及它们解决的问题,按照它们的发展和解决方案一环扣一环地进行:
-
IPv4(Internet Protocol Version 4):
- 问题: IPv4是互联网最初采用的主要协议,它定义了32位的IP地址空间,可以提供约
42亿
个唯一的IP地址。然而,随着互联网的迅速发展,IPv4地址空间的限制开始变得明显,导致IPv4地址短缺问题日益严重。 - 解决方案: IPv4的主要解决方案是采用
网络地址转换(NAT)
技术。NAT允许多个私有IP地址映射到单个公共IP地址,从而实现了多个设备共享一个公共IP地址的功能,缓解了IPv4地址短缺问题。
- 问题: IPv4是互联网最初采用的主要协议,它定义了32位的IP地址空间,可以提供约
-
IPv6(Internet Protocol Version 6):
- 问题: 为了解决IPv4地址空间有限的问题,IPv6协议被设计出来。IPv6采用128位地址空间,提供了远远超过IPv4的地址容量,可以支持大规模的互联网连接。
- 解决方案: IPv6的推出是对IPv4地址枯竭问题的长期解决方案。IPv6不仅扩展了地址空间,还提供了更多的安全性和其他改进,例如自动配置、移动性支持等。
-
NAT(Network Address Translation):
- 问题: IPv4地址短缺导致了NAT的广泛应用。NAT解决了IPv4地址短缺问题,但也引入了一些问题,如限制了对内部网络的访问和不透明的网络拓扑。
- 解决方案: 对于IPv4网络,NAT是一种临时解决方案。随着IPv6的部署,NAT的重要性逐渐减弱。但在IPv4到IPv6过渡期间,NAT仍然是一种重要的转换技术。
-
DHCP(Dynamic Host Configuration Protocol):
- 问题: 在IPv4网络中,手动配置IP地址和其他网络参数对于大规模部署来说是不切实际的,容易出错。
- 解决方案: DHCP允许网络中的计算机自动获取IP地址、子网掩码、默认网关等网络配置信息,大大简化了网络管理和部署的工作。
-
ICMP(Internet Control Message Protocol):
- 问题: 在IP网络中,需要一种机制来传递控制消息和诊断信息,以及处理网络中的错误情况。
- 解决方案: ICMP提供了一种在IP网络上发送错误消息和控制消息的机制,例如ping命令就是基于ICMP协议的。
-
IPv6过渡技术:
- 问题: 在IPv4向IPv6过渡的过程中,需要一些过渡技术来确保网络的连通性和平稳过渡。
- 解决方案: IPv6过渡技术包括双栈(Dual-Stack)、隧道技术(Tunneling)和NAT64等,这些技术允许IPv4和IPv6网络共存,并且在IPv4和IPv6之间进行数据包转换和传输,帮助网络逐步向IPv6过渡。
通过这样一环扣一环地探讨,我们可以更清晰地了解每个IP技术的发展背景、解决的问题以及相互之间的联系。
DHCP分配的地址只是局域网吗?
DHCP分配的IP地址可以是局域网的,也可以是外部网络(Internet)的。
在大多数情况下,DHCP服务器通常会在局域网内部运行,它们分配的IP地址是局域网的IP地址。这些IP地址是在局域网内部使用的,通常是私有IP地址范围内的地址(如192.168.x.x、10.x.x.x等),用于内部通信和连接到局域网上的设备之间的通信。
然而,有些情况下,DHCP服务器也可以分配公共IP地址,这些地址可以直接访问互联网。这通常发生在企业、机构或互联网服务提供商(ISP)的网络中,他们的DHCP服务器会分配公共IP地址给连接到网络上的设备,以便这些设备可以直接访问互联网。
总的来说,DHCP服务器分配的IP地址可以是局域网的,也可以是外部网络的,这取决于网络的配置和需要。
ifconfig参数解析
这些数据是通过执行ifconfig命令返回的网络接口信息,让我来解释一下:
-
enp2s1:这是一个以太网网络接口的名称。
-
flags=4163<UP,BROADCAST,RUNNING,MULTICAST>:这些是网络接口的标志,表示该接口当前处于启用(UP)、支持广播(BROADCAST)、正在运行(RUNNING)和支持多播(MULTICAST)状态。
-
mtu 1500:这是网络接口的最大传输单元(Maximum Transmission Unit),指定了该接口一次可以传输的最大数据包大小。
-
inet 10.118.9.172:这是分配给该网络接口的IPv4地址。
-
netmask 255.255.252.0:这是子网掩码,用于确定该IP地址所属的子网。
-
broadcast 10.118.11.255:这是广播地址,用于向同一子网中的所有设备广播消息。
-
inet6 fe80::3c8e:4707:c30:b38:这是分配给该网络接口的IPv6地址。
-
prefixlen 64:这是IPv6地址的前缀长度,指定了网络部分的长度。
-
scopeid 0x20:这是IPv6地址的作用域ID,表示该地址的使用范围。
-
ether 00:16:3e:00:50:74:这是以太网接口的物理地址(MAC地址)。
-
txqueuelen 1000:这是发送队列的长度,表示可以缓存的传输数据包的数量。
-
RX packets 107268116 / bytes 35489654381:这是接收到的数据包数量和总字节数。
-
RX errors 0 / dropped 100 / overruns 0 / frame 0:这是接收到的数据包的错误统计信息。
-
TX packets 16293991 / bytes 8656755314:这是发送的数据包数量和总字节数。
-
TX errors 0 / dropped 0 / overruns 0 / carrier 0 / collisions 0:这是发送的数据包的错误统计信息。
-
lo:这是一个本地回环接口,用于本地通信。
-
flags=73<UP,LOOPBACK,RUNNING>:这是本地回环接口的标志,表示该接口当前处于启用、回环和运行状态。
-
mtu 65536:这是本地回环接口的最大传输单元。
-
inet 127.0.0.1:这是本地回环接口的IPv4地址,常用于本地通信。
-
inet6 ::1:这是本地回环接口的IPv6地址。
-
loop txqueuelen 1000:这是本地回环接口的发送队列长度。
-
RX packets / bytes 和 TX packets / bytes:这是本地回环接口的接收和发送数据包统计信息。
这些信息提供了关于你计算机上网络接口的详细情况,包括其配置、状态和数据传输统计。
什么是以太网?
以太网是一种局域网(LAN)技术
,用于在局域网内部传输数据。它是最常见和广泛使用的有线局域网技术之一。
基本上,以太网是一种计算机网络技术,它允许在局域网上连接多台计算机、服务器、打印机和其他网络设备,以便它们之间可以进行数据通信和资源共享
。
以下是以太网的一些关键特点:
-
CSMA/CD协议:以太网使用载波侦听多路访问/冲突检测(Carrier Sense Multiple Access with Collision Detection,CSMA/CD)协议,以协调多台设备之间的数据传输。这意味着设备在发送数据之前会监听网络以确保没有其他设备在发送数据,如果发现冲突,则会等待一段时间后重新尝试发送。
-
物理介质:以太网可以在各种不同的物理介质上运行,包括双绞线、光纤和同轴电缆等。其中最常见的是以太网双绞线,通常用于连接个人计算机和网络交换机之间。
-
拓扑结构:以太网支持多种拓扑结构,包括星型、总线型和环型等。其中,星型拓扑结构是最常见的,它将所有设备连接到一个中心网络设备(如交换机)上。
-
速度和带宽:以太网的速度和带宽可以根据需求而变化。最常见的以太网速度包括10 Mbps、100 Mbps、1 Gbps(千兆以太网)和10 Gbps(10千兆以太网)等。
-
协议栈:以太网是OSI(Open Systems Interconnection)模型中数据链路层的协议,它通常与其他网络协议栈结合使用,如TCP/IP协议栈。
总的来说,以太网是一种灵活、可靠且广泛使用的局域网技术,它为组织和个人提供了便捷的数据通信和资源共享的方式。
IP地址的分配原理
是什么,解决什么问题
互联网中有数百万台的主机和路由器,为了确切的标识
它们,TCP/IP建立了一套编址方案,为每台主机和路由器分配一个全网唯一的地址,即IP地址。任何两台主机的ip地址不能相同,但是允许一个主机拥有多个ip地址。
怎么组成的
ip地址是由32位二进制数,即4个字节组成的,由网络号和主机号两个字段组成。总的来说,寻址的过程是:先按网络号把网络找到,再按主机号把主机找到。
为了便于对ip地址进行管理,同时还考虑到网络的差异很大,ip地址分为5类,即A类到E类。
- A类地址网络号占用一个字节,但是由于有一位是类别位,只有7位可供使用,但是由于规定,网络字段全0是个保留字段表示本网络,而127(01111111)是另外一个保留字段,作为本地软件的环回测试。我们常见的127.0.0.1表示本机,原因也是出自这里。所以A类地址可以指派的网络号个数为(2^7-2).
- B类网络地址网络号有两个字节,前两位为10已经固定,只剩下14位可用,由于这14位无论怎么取值都不会使得网络号为全0或者全1,但是实际上规定,B类不指派128.0.0.0,所以最小网络地址为128.1.0.0。因此B类地址可指派的网络号个数为(2^14-1).
- C类地址有3个字节的网络字段号,前三位固定110,只有剩下21位可用,同样C类地址192.0.0.0也不指派,可指派的最小网络地址也是192.0.1.0。因此C类地址可指派的网络号个数为(2^21-1)
目前大量使用的是A、B、C三类地址,当某单位申请一个ip地址时,实际上只是申请到了一个网络号,具体主机号由本单位自行分配。
子网技术
现在所有的主机都支持子网编址,不是把ip地址看成单纯的网络号+主机号,而是把主机号再分成一个子网号和一个主机号。这个分配的过程就是管理员建立子网的过程。
举个例子,假设这里有个B类网络地址(130.252),在剩下的16bit中,8bit用于子网号,8bit用于主机号,格式如下所示。
这样就允许有254个子网,每个子网有254台主机。
子网对于外部来说隐藏了内部网络组织的细节。在我们的网络例子中,所有的ip地址都有一个B类网络号130.252。但是其中有超过30多个子网,多于400台主机分配在这些子网中,由一台路由器提供Internet的接,在各子网之间用路由器互连。
掩码技术
同一网段
私有地址
最后让我们来模拟一下我们上网的流程。
小明是个大学生,电信公司分给他宿舍楼一个ip是118.168.14.117,宿舍楼网络管理员给小明同学分配的私有ip是192.168.1.150。这天小明打开了浏览器想要搜索明天天气怎么样,这时的数据发给了路由器,然后路由器把数据发送给了百度的服务器(私有ip转换为公网ip)。百度接收到之后返回了一段数据到了路由器(百度以为是路由器的公网ip请求的),然后路由找到小明的私有ip(公网ip转换到私有ip),将数据发给了小明,这就是小明真实上网的流程。
网关
上述小明的例子中,路由器作为公网和私网的桥梁,这时路由器便充当了网关的角色。实际上路由器并不是内外网的连接点,网关才是
,这里路由器可以完成网关的功能完成网络的互连
罢了。
网关就是一个网络连接到另一个网络的“关口”
,也就是网络关卡,又称网间连接器、协议转换器。网关是一个网络层
上的概念,既可以用于局域网互连,也可以用于广域网互连。
由于历史的原因,许多有关TCP/IP的文献曾经把网络层使用的路由器称为网关,在今天很多局域网采用都是路由来接入网络,因此通常指的网关就是路由器的IP
!