当前位置: 首页 > news >正文

个人备案网站描述北京微网站

个人备案网站描述,北京微网站,山东市网站建设,防火门 东莞网站建设文章目录 一、引言二、IP 基础知识1、IP 地址2、路由3、IP报文4、IP报文的分片与重组 三、IP 属于面向无连接型四、IP协议相关技术1、DNS2、ICMP3、NAT技术4、DHCP 一、引言 TCP/IP的心脏是网络层。这一层主要由 IP 和 ICMP 两个协议组成。网络层的主要作用是“实现终端节点之… 文章目录 一、引言二、IP 基础知识1、IP 地址2、路由3、IP报文4、IP报文的分片与重组 三、IP 属于面向无连接型四、IP协议相关技术1、DNS2、ICMP3、NAT技术4、DHCP 一、引言 TCP/IP的心脏是网络层。这一层主要由 IP 和 ICMP 两个协议组成。网络层的主要作用是“实现终端节点之间的通信”。这种终端节点之间的通信也叫做点对点通信end-to-end。IP 的作用是在复杂的网络环境中将数据包发送给最终的目的主机。ICMP 主要的功能包括确认 IP 包是否成功送达目标地址、报告发送过程中 IP 包被废弃的原因和改善网络设置等。 数据链路层的主要作用是在互连同一种数据链路的节点之间进行包传递。而一旦跨越多种数据链路就需要借助网络层。网络层可以跨越不同的数据链路即使是在不同的数据链路上也能实现两端节点之间的数据包传输。 数据链路层提供直连的两个设备的通信功能。与之相比作为网络层的IP则负责在没有直连的两个网络之间进行通信传输。 比如计划去一个遥远的地方旅行并为此制定了一个详细的行程计划。在他的行程中他需要依次乘坐飞机、地铁和公交车才能到达目的地。为了完成这段旅程需要购买不同交通工具的票务比如飞机票和地铁票。 这些票务都有一个特定的使用范围比如飞机票是从一个机场飞往另一个机场地铁票则是在地铁网络内的某一段线路中使用。这个“使用范围”就好比计算机网络中的数据链路层它负责在特定的网络段内传输数据。 在旅途中每一段行程的移动就相当于数据链路层的工作它确保了能够在那个特定的区间内比如从机场到地铁站从一个节点移动到另一个节点。这里的出发地点可以类比为数据链路层的源MAC地址而目的地则相当于目的MAC地址。 至于整个旅行行程表它则类似于网络层的作用。网络层负责确定数据如何从一个远程网络传输到另一个远程网络。在这个例子中行程表的起始点就好比源IP地址而行程的最终目的地则相当于目的IP地址。网络层行程表)规划了整个旅程的路径确保能够从起点顺利到达终点。 在网络中数据包传输中也是如此源IP地址和目标IP地址在传输过程中是不会变化的前提没有使用 NAT 网络只有源 MAC 地址和目标 MAC 一直在变化。 二、IP 基础知识 IP大致分为三大作用模块它们是IP寻址、路由以及IP分包与组包。 1、IP 地址 为了识别通信对端必须要有一个类似于地址的识别码进行标识。比如数据链路的MAC地址。MAC地址正是用来标识同一个链路中不同计算机的一种识别码。作为网络层的IP也有这种地址信息。一般叫做IP地址。IP地址用于在“连接到网络中的所有主机中识别出进行通信的目标地址”。 因此在进行TCP/IP通信时用IP地址识别主机和路由器。为了保证正常通信有必要为每个设备配置正确的IP地址也就是说要针对每块网卡至少配置一个或一个以上的IP地址 。在互联网通信中全世界都必须有正确的IP地址。否则无法进行正常的通信。 不论一台主机与哪种数据链路连接其IP地址的形式都保持不变。以太网、无线局域网等都不会改变IP地址的形式而数据链路的MAC地址的形式不一定必须一致。 而且在网桥或交换集线器等物理层或数据链路层数据包转发设备中不需要设置IP地址。因为这些设备只负责将IP包转化为0、1比特流转发或对数据链路帧的数据部分进行转发而不需要应对IP协议。 IPIPv4 地址由32位整数来表示。TCP/IP通信要求将这样的IP地址分配给每一个参与通信的主机。IP地址在计算机内部以二进制方式被处理。32位整数表示最多可以允许43亿台计算机连接到网络。但实际上IP地址并非根据主机台数来分配的而是每一台主机上的每一块网卡都得配有IP地址。 通常一块网卡只设置一个IP地址其实一块网卡也可以配置多个IP地址。此外一台路由器通常都会配置两个以上的网卡因此可以设置两个以上的IP地址。 根据一种可以更换IP地址的NAT技术可连接计算机数超过43亿台。 IP地址由网络号和主机号两部分标识组成。如 192.168.128.11/24中的/24表示从第一位开始到第24位属于网络号。在这个例子中 192.168.128是该IP的网络号。 网络号在数据链路的每个段配置不同的值。网络号必须保证相互连接的每个段的地址不相重复。而相同段内相连的主机必须有相同的网络号。IP地址的主机号则不允许在同一个网段内重复出现。由此可以通过设置网络地址和主机地址在相互连接的整个网络中保证每台主机的IP地址都不会相互重叠。即IP地址具有了唯一性。 上图中当IP包被转发到途中某个路由器时正是利用目标IP地址的网络号进行路由。因为即使不看主机号只要一见到网络号就能判断出是否为该网段内的主机。 IP地址分为四个级别A类、B类、C类、D类、E类未被使用。它是根据IP地址中从第一位到第四位的比特列对齐网络号和主机号进行区分。 A类地址A类地址的第一个字节最高位为网络地址其余三个字节为主机地址。第一个字节的范围是1到126二进制表示为0xxxxxxx。A类地址适用于大型网络因为它们可以包含大量的主机约1600万台。用十进制表示的话0.0.0.0127.0.0.0 是A类的网络地址。示例10.0.0.1 B类地址B类地址的前两个字节为网络地址后两个字节为主机地址。第一个字节范围是128到191二进制表示为10xxxxxx。用十进制表示的话128.0.0.0191.255.0.0是B类的网络地址。B类地址适用于中等规模的网络。示例172.16.0.1 C类地址C类地址的前三个字节为网络地址最后一个字节为主机地址。第一个字节范围是192到223二进制表示为110xxxxx。用十进制表示的话192.168.0.0239.255.255.0是C类的网络地址。C类地址适用于小型网络每个网络最多可以有254个主机。示例192.168.1.1 D类地址D类地址用于组播即数据同时发送给一组主机。第一个字节范围是224到239二进制表示为1110xxxx。用十进制表示的话224.0.0.0239.255.255.255是D类的网络地址。D类地址不分配给单个主机而是用于组播通信。示例224.0.0.1 E类地址E类地址是保留地址用于科学研究或将来可能的用途。第一个字节范围是240到255二进制表示为1111xxxx。目前没有具体的E类地址分配给任何组织。 注意除了以上五类地址还有一个特殊地址范围是127.0.0.1到127.255.255.255这是环回地址通常用于本地机器上的软件测试。 环回地址是在同一台计算机上的程序之间进行网络通信时所使用的一个默认地址。计算机使用一个特殊的 IP 地址 127.0.0.1 作为环回地址。与该地址具有相同意义的是一个叫做 localhost 的主机名。使用这个 IP 或主机名时数据包不会流向网络。 在分配IP地址时关于主机标识有一点需要注意。即要用比特位表示主机地址时不可以全部为0或全部为1。因为全部为只有0在表示对应的网络号或IP地址不可获知的情况下才使用。而全部为1的主机地址通常作为广播地址。因此在分配过程中应该去掉这两种情况。这也是为什么C类地址每个网段最多只能有25428-2254个主机地址的原因。 广播地址 广播地址用于在同一个链路中相互连接的主机之间发送数据包。将IP地址中的主机号部分全部设置为1就成为了广播地址。 一个IP地址只要确定了其分类也就确定了它的网络标识和主机标识。例如A类地址前8位除首位“0”还有7位、B类地址前16位除首位“10”还有14位、C类地址前24位除首位“110”还有21位分别是它们各自的网络标识部分。网络标识相同的计算机必须同属于同一个链路。 子网与子网掩码 网络标识相同的计算机必须同属于同一个链路。例如架构B类IP网络时理论上一个链路内允许6万5千多台计算机连接。然而在实际网络架构当中一般不会有在同一个链路上连接6万5千多台计算机的情况。因此这种网络结构实际上是不存在的。这就引出了子网掩码。 子网划分是在一个较大的网络中创建多个较小网络的过程。它是通过将IP地址的网络部分进一步划分为子网来实现的这样做可以更有效地管理网络提高网络性能并且有助于更好地利用IP地址空间。 子网掩码是一个32位的二进制数字主要用于将一个大的IP网络划分为若干较小的子网络子网。它和IP地址结合使用以确定一个IP地址中的网络部分和主机部分。 子网掩码由一系列的1和一系列的0组成其中1代表网络位0代表主机位。以下是常见的子网掩码及其对应的二进制表示 A类地址的默认子网掩码是255.0.0.0。255.0.0.0 对应于 11111111.00000000.00000000.00000000A类地址默认子网掩码。B类地址的默认子网掩码是255.255.0.0。255.255.0.0 对应于 11111111.11111111.00000000.00000000B类地址默认子网掩码。C类地址的默认子网掩码是255.255.255.0。255.255.255.0 对应于 11111111.11111111.11111111.00000000C类地址默认子网掩码 通过子网掩码我们可以将A类、B类、C类的网络地址细分出更小粒度的网络。也就是将原来A类、B类、C类等分类中的主机地址部分用作子网地址可以将原网络分为多个网络。 因此一个IP地址就有了两个识别码一个是IP地址另一个是子网掩码。 它对应IP地址网络标识部分的位全部为“1”对应IP地址主机标识的部分则全部为“0”。由此一个IP地址可以不再受限于自己的类别而是可以用这样的子网掩码自由地定位自己的网络标识长度。当然子网掩码必须是IP地址的首位开始连续的“1”。 确定网络地址将IP地址与子网掩码进行按位“与”操作可以得到网络地址。确定主机地址将IP地址与子网掩码进行按位“非”操作然后与IP地址进行按位“或”操作可以得到广播地址从而确定主机地址范围。划分子网通过增加子网掩码中的1的位数可以将一个大的网络划分为更小的子网。 以下是如何计算子网掩码的一些示例假设我们需要为一个C类地址192.168.1.0创建一个可以容纳50台主机的子网我们需要确定子网掩码。 首先确定所需的主机位数。50台主机需要足够的位数来表示至少需要6位26 64 50。C类地址有24位网络位和8位主机位。为了得到6位主机位我们需要从8位中借用2位给网络位。因此新的子网掩码将是255.255.255.192二进制为11111111.11111111.11111111.11000000。 子网掩码可以用点分十进制表示也可以用“/”后跟网络位的位数来表示例如 255.255.255.0 可以表示为 /24255.255.255.192 可以表示为 /26 2、路由 路由控制Routing是指将分组数据发送到最终目标地址的功能。即使网络非常复杂也可以通过路由控制确定到达目标地址的通路。一旦这个路由控制的运行出现异常分组数据极有可能“迷失”无法到达目标地址。因此一个数据包之所以能够成功地到达最终的目标地址全靠路由控制。 路由器要有路由发现的算法。 每次跳跃的范围以太网等数据链路中使用MAC地址传输数据帧。此时的一跳是指从源MAC地址到目标MAC地址之间传输帧的区间。也就是说它是主机或路由器网卡不经其他路由器而能直接到达的相邻主机或路由器网卡之间的一个区间。在一跳的这个区间内电缆可以通过网桥或交换集线器相连不会通过路由器或网关相连。 多跳路由是指路由器或主机在转发IP数据包时只指定下一个路由器或主机而不是将到最终目标地址为止的所有通路全都指定出来。因为每一跳在转发IP数据包时会分别指定下一跳的操作直至包达到最终的目标地址。 我们仍可以使用之前旅游的例子IP数据包可以当作旅行者车站、机场可以视为路由器。当某个IP包到达路由器时路由器首先查找其目标地址IP包被转发到途中的某个路由器时实际上是装入数据链路层的数据帧以后再被送出从而再决定下一步应该这个数据包到达哪个路由器然后再把包发送过去。当这个IP包到达那个路由器以后会再次经历查找下一目标地址的过程并由该路由器转发给下一个被找到的路由器。这个过程可能会反复多次直到找到最终的目标地址将数据包发送给这个节点。 发送数据包时所使用的地址是网络层的地址即IP地址。然而仅仅有IP地址还不足以实现将数据包发送到对端目标地址在数据发送过程中还需要类似于“指明路由器或主机”的信息以便真正发往目标地址。保存这种信息的就是路由控制表Routing Table。实现IP通信的主机和路由器都必须持有一张这样的表。它们也正是在这个表格的基础上才得以进行数据包发送的。它包含了网络设备能够到达的网络地址信息以及如何到达这些地址的指示。 IP地址的网络号部分用于进行路由控制。下图说明了在复杂的网络环境中如何利用路由器的路由表来决定数据包的最佳路径从而实现不同子网之间的通信。 路由控制表中记录着网络地址与下一步应该发送至路由器的地址Windows可以使用 netstat -r命令查看路由表Linux下可以使用 netstat -rn或route查看。 在发送IP包时首先要确定IP包首部中的目标地址再从路由控制表中找到与该地址具有相同网络地址的记录根据该记录将IP包转发给相应的下一个路由器。如果路由控制表中存在多条相同网络地址的记录就选择一个最为吻合的网络地址。 eth0 是一个网络接口名称通常用于表示第一块以太网网卡。在Linux系统中网络接口的名称如 eth0、eth1 等代表不同的网络接口或网络适配器。具体来说 eth0: 这是系统中第一个以太网接口的名称。它通常是通过有线以太网连接到网络的网卡。如果系统中有多个以太网接口第二个接口可能被命名为 eth1第三个为 eth2以此类推。 以太网接口: eth0 是传统的命名方式表示通过以太网协议进行连接的接口。以太网是一种常见的局域网技术用于计算机和网络设备之间的有线连接。 现代命名: 在较新的Linux系统中网络接口的命名方式已经变得更加复杂和灵活可能会使用像 enp0s3 或 ens33 这样的名称这些名称是基于网络接口的硬件位置和其他因素动态生成的。 eth0 在网络配置和路由表中表示网络接口用于发送和接收数据包。它可以通过网络配置工具如 ifconfig、ip 命令进行管理和配置。 在 route 命令的输出中各列的含义如下 Destination: 目的地网络地址。这个字段指定了路由的目标网络或主机地址。它可以是一个具体的 IP 地址、一个网络地址或 default默认路由。 Gateway: 网关地址。这个字段指定了数据包应该被转发到的下一个跳点的网关地址。对于默认路由这通常是一个路由器或其他网络设备的地址。 Genmask: 子网掩码。这个字段指定了目的地地址的网络部分的掩码用于确定目的地网络的范围。它定义了哪些部分是网络地址哪些部分是主机地址。 Flags: 路由标志。这个字段显示路由的状态和特性。常见的标志包括 U表示路由是“Up”激活状态。G表示路由是“Gateway”通过网关。H表示目标是一个“Host”主机而不是网络。R表示路由是“Reject”拒绝用于丢弃匹配的流量。 Metric: 度量值。这个字段表示路由的优先级。度量值越小优先级越高。用于在多个路由选项之间进行选择。 Ref: 引用计数。这个字段显示有多少个路由条目引用了这个路由通常用于内部计算。 Use: 使用计数。这个字段显示路由被使用的次数表示流量通过这个路由的频率。 Iface: 网络接口。这个字段显示了用于发送数据包的网络接口名称如 eth0、wlan0 等。 每一列都帮助定义和描述路由条目的不同方面确保网络流量按照预期的路径转发。 以下是 route 命令输出的中文解释 default: 这是默认路由用于匹配所有其他未指定的流量。它通过 _gateway 作为网关子网掩码是 0.0.0.0并且流量通过 eth0 接口转发。 100.100.2.136: 这条路由将目标 IP 为 100.100.2.136 的流量通过 _gateway 转发子网掩码是 255.255.255.255接口为 eth0。 100.100.2.138: 类似于上条路由这条路由将目标 IP 为 100.100.2.138 的流量通过 _gateway 转发子网掩码也是 255.255.255.255接口为 eth0。 172.19.80.0: 这条路由涵盖了子网 172.19.80.0子网掩码是 255.255.240.0流量直接通过 eth0 接口转发。 _gateway: 这条路由表示网关本身子网掩码是 255.255.255.255并且流量通过 eth0 接口转发。 总的来说流量主要通过 eth0 接口转发有些特定 IP 地址和子网的流量通过指定的网关进行转发默认路由用于处理所有其他流量。 3、IP报文 通过IP进行通信时需要在数据起那么加入IP首部信息。IP首部中包含着用于IP协议进行发包控制的所有必要信息。下图是IPv4的数据报格式 版本version占 4 位表示 IP 协议的版本。通信双方使用的 IP 协议版本必须一致。目前广泛使用的IP协议版本号为 4 即 IPv4。 首部长度IHLInternet Header Length占 4 位可表示的最大十进制数值是 15。这个字段所表示数的单位是4字节。因此当 IP 的首部长度为 1111 时即十进制的 15首部长度就达到 60 字节。当 IP 分组的首部长度不是 4 字节的整数倍时必须利用最后的填充字段加以填充。 数据部分永远在 4 字节的整数倍开始这样在实现 IP 协议时较为方便。首部长度限制为 60 字节的缺点是长度有时可能不够用之所以限制长度为 60 字节是希望用户尽量减少开销。最常用的首部长度就是 20 字节即首部长度为 0101这时不使用任何选项。 区分服务TOSType Of Service由8比特构成用来表明服务质量。 总长度表示IP首部与数据结合起来的总字节数单位为字节。总长度字段为 16 位因此数据报的最大长度为 216-165535 字节。 标志IDIdentification由16比特构成用于分片重组。同一个分片的标识值相同不同分片的标识值不同。通常每发送一个IP包它的值也逐渐递增。此外即使ID相同如果目标地址、源地址或协议不同的话也会被认为是不同的分片。 标志flags由3比特构成表示包被分片的相关信息。 第1位标志是预留位必须为0。第2位标志是DF (Don’t fragment)用来表示是否可以进行分片。DF 1 表示不允许分片DF 0 表示可以分片。第3位标志是 MF (More fragment)。代表数据是否分片如果MF位值为1表示后面还有数据还没有传输完毕。如果MF 0表示最后一个分片或者只有一个分片。 片偏移FOFragment Offset由13比特构成用来标识被分片的每一个分段相对于原始数据的位置。第一个分片对应的值为0。由于FO域占13位因此最多可以表示8192213 个相对位置。单位为8字节因此最大可表示原始数据8×8192 65536字节的位置。 生存时间TTL,Time To Live:表示数据报在网络中的寿命占 8 位。该字段由发出数据报的源主机设置。其目的是防止无法交付的数据报无限制地在网络中传输从而消耗网络资源。 路由器在转发数据报之前先把 TTL 值减 1。若 TTL 值减少到 0则丢弃这个数据报不再转发。因此TTL 指明数据报在网络中最多可经过多少个路由器。TTL 的最大数值为 255。若把 TTL 的初始值设为 1则表示这个数据报只能在本局域网中传送。 由此可以避免IP包在网络中无限传递的问题。 协议表示该数据报文所携带的数据所使用的协议类型占 8 位。该字段可以方便目的主机的 IP 层知道按照什么协议来处理数据部分。不同的协议有专门不同的协议号。例如TCP 的协议号为 6UDP 的协议号为 17ICMP 的协议号为 1。 首部校验和Header Checksum由16比特2个字节构成也叫IP首部校验和。该字段只校验数据报的首部不校验数据部分。它主要用来确保IP数据报不被破坏。 源地址Source Address由4个字节构成表示发送端IP地址。 目标地址Destination Address由4个字节构成表示接收端IP地址。 4、IP报文的分片与重组 任何一台主机都有必要对IP分片进行相应的处理。分片往往在网络上遇到比较大的报文无法一下子发送出去时才会进行处理。 不同数据链路有个最大的区别就是它们各自的最大传输单位MTUMaximum Transmission Unit不同。就好像人们在邮寄包裹或行李时有各自的大小限制一样。MTU是网络协议的一个参数它定义了在数据链路层可以传输的最大数据包大小。这个大小通常与网络媒介和技术有关。 MTU的值在以太网中是1500字节。IP的上一层可能会要求传送比这些MTU更多字节的数据因此必须在线路上传送比包长还要小的MTU。 为了解决这个问题IP进行分片处理。顾名思义所谓分片处理是指将较大的IP包分成多个较小的IP包 。分片的包到了对端目标地址以后会再被组合起来传给上一层。即从IP的上层次看它完全可以忽略数据包在途中的各个数据链路上的MTU而只需要按照源地址发送的长度接收数据包。IP就是以这种方式抽象化了数据链路层使得从上层更不容易看到底层网络构造的细节。 经过分片之后的IP数据报在被重组的时候只能由目标主机进行。路由器虽然做分片但不会进行重组。 分片后每个分片都包含独立的IP报头。这是因为即使原始数据包被分片每个分片仍然是独立的IP数据包需要自己的IP报头来包含必要的IP层信息如源IP地址、目的IP地址、协议类型TCP或UDP、分片标志等。 由于每个分片都是独立的IP数据包它们在网络中传输时会受到IP层的处理包括分片和重新组装因此每个分片都有完整的IP报头。这个过程不影响TCP/UDP层的数据每个分片都会包含完整的IP报头以便在接收端能够正确地组装并传递给应用层。 接收方收到大量IP报文这些报文可能来自多个客户端并且其中有的报文进行了分片有的没有。以下是接收方处理这些报文的步骤 判断报文是否分片 没有分片如果报文没有分片它将直接被传输层接收并处理。MF为0而且片偏移为0。分片了如果报文进行了分片接收方会检查每个分片的标志Flags字段中的MFMore Fragments标志。 第一片如果MF标志为1表示还有后续的分片片偏移一定是0中间片中间的分片都具有MF标志为1。片偏移一定不是0最后一片最后一片的分片具有MF标志为0。片偏移一定不是0 保证收到了所有的分片 第一片丢了如果第一片丢失接收方无法正确地确定分片的顺序因为它是第一个分片。接收方通常会等待一段时间以期望第一片能够到达。如果在这段时间内没有收到第一片接收方可能会选择丢弃整个分片数据包。中间丢了如果中间的分片丢失接收方仍然可以正确地组装剩余的分片因为它们都带有MF标志。接收方会等待一段时间以期望丢失的分片能够到达。如果在这段时间内没有收到丢失的分片接收方可能会选择丢弃整个分片数据包。IP报头有数据的大小因此我们可以根据数据的大小和片偏移的大小来计算是否是中间某位置的分片最后一片丢了如果最后一片丢失接收方无法正确地完成分片的组装因为它是最后一个分片。接收方通常会等待一段时间以期望最后一片能够到达。如果在这段时间内没有收到最后一片接收方可能会选择丢弃整个分片数据包 接收方会根据每个分片的标识符字段来确定它们是否属于同一个原始数据包。接收方会按照分片偏移字段中的信息来正确地组装分片。接收方会等待足够长的时间来确保所有的分片都已经到达。如果在一个合理的超时时间内没有收到所有分片接收方可能会丢弃该数据包。 组装分片并发送给传输层一旦接收方确认所有分片都已到达并且可以正确组装它将组装后的数据包传递给传输层。传输层如TCP或UDP会继续处理组装后的数据包确保数据能够正确地传递给应用层。 注意当如果一个 IP 分片丢失整个 IP 报文的所有分片都得重传。 既然 IP 层会分片为什么 TCP 层还需要 MSS 呢 IP 层本身没有超时重传机制它由传输层的 TCP 来负责超时和重传。 当某一个 IP 分片丢失后接收方的 IP 层就无法组装成一个完整的 TCP 报文头部 数据也就无法将数据报文送到 TCP 层所以接收方不会响应 ACK 给发送方因为发送方迟迟收不到 ACK 确认报文所以会触发超时重传就会重发整个 TCP 报文。因此IP 层进行分片传输是很没有效率的。 所以为了达到最佳的传输效能 TCP 协议在建立连接的时候通常要协商双方的 MSS 值当 TCP 层发现数据超过 MSS 时则就先会进行分片当然由它形成的 IP 包的长度也就不会大于 MTU 自然也就不用 IP 分片了。 三、IP 属于面向无连接型 IP 面向无连接即在发包之前不需要建立与对端目标地址之间的连接。上层如果遇到需要发送IP的数据该数据会立即被压缩成IP包发送出去。 在面向有连接的情况下需要事先建立连接。如果对端主机关机或不存在也就不可能建立连接。反之一个没有建立连接的主机也不可能发送数据过来。 而面向无连接的情况则不同。即使对端主机关机或不存在数据包还是会被发送出去。反之对于一台主机来说它会何时从哪里收到数据也是不得而知的。通常应该进行网络监控让主机只接收发给自己的数据包。若没有做好准备很有可能会错过一些该收的包。因此在面向无连接的方式下可能会有很多冗余的通信。 四、IP协议相关技术 1、DNS DNSDomain Name System域名系统是一种分布式的数据库和命名系统它将便于人类记忆的域名如 www.baidu.com 转换为机器能够理解的IP地址如 192.0.2.1。DNS是互联网的关键组成部分因为它使得用户无需记住复杂的IP地址就能访问网络资源。这样我们平常在访问某个网站时不使用IP地址而是用一串由罗马字和点号组成的字符串。 当用户输入主机名域名时DNS会自动检索那个注册了主机名和IP地址的数据库并迅速定位对应的IP地址 。而且如果主机名和IP地址需要进行变更时也只需要在组织机构内部进行处理即可而没必要再向其他机构进行申请或报告。 域名的构成域名是互联网上用于标识特定网站或资源的名称它由多个部分组成每个部分都有特定的含义和作用。 子域名Subdomain 子域名是可选的位于主域名之前通常用于将网站的不同部分或服务进行分类。例如blog.example.com 中的 blog 就是子域名。 主域名Second-Level Domain, SLD 主域名是域名的核心部分通常反映了网站或组织的名称。在 www.example.com 中example 就是主域名。 顶级域名Top-Level Domain, TLD 顶级域名位于域名的最右侧用于指示网站或组织的类型或地理位置。例如.com商业机构、.org非营利组织、.net网络提供商等。 域名的具体构成如下 子域名.主域名.顶级域名例如在域名 www.example.com 中 www 是子域名表示这是一个万维网服务。example 是主域名这是组织或公司的名称。.com 是顶级域名表示这是一个商业机构。 以下是不同类型的顶级域名示例 通用顶级域名gTLDs.com、.net、.org、.info、.biz 等。国家代码顶级域名ccTLDs.us美国、.uk英国、.de德国、.cn中国等。新通用顶级域名New gTLDs.club、.shop、.blog、.app 等。 此外还有一些特殊用途的顶级域名如 .gov政府机构、.edu教育机构、.mil军事机构等。 在启用域名功能之前单凭主机名还无法完全管理IP地址因为在不同的组织机构中不允许有同名的主机。然而当出现了带有层次结构的域名之后每一个组织机构就可以自由地为主机命名了。 我们可以使用dig工具分析DNS 过程。centos下可以通过yum install bind-utils安装dig工具。 [rootzyb ~]# dig www.baidu.com; DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.16 www.baidu.com ;; global options: cmd ;; Got answer: ;; -HEADER- opcode: QUERY, status: NOERROR, id: 47209 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0;; QUESTION SECTION: ;www.baidu.com. IN A;; ANSWER SECTION: www.baidu.com. 203 IN CNAME www.a.shifen.com. www.a.shifen.com. 60 IN A 220.181.38.149 www.a.shifen.com. 60 IN A 220.181.38.150;; Query time: 0 msec ;; SERVER: 183.60.83.19#53(183.60.83.19) ;; WHEN: Thu Sep 26 18:51:40 CST 2024 ;; MSG SIZE rcvd: 90 上面是使用 dig 命令对域名 www.baidu.com 进行DNS查询的结果。 面试题当你在浏览器地址栏输入一个URL后回车将会发生的事情 当在浏览器地址栏输入一个URL并回车后会发生以下一系列事件 域名解析DNS查询浏览器首先检查域名是否在本地缓存中如果没有它会向网络中的DNS服务器发送请求将域名解析为对应的IP地址。建立TCP连接浏览器使用解析得到的IP地址通过互联网与目标服务器建立TCP连接。如果是HTTPS协议还会进行SSL/TLS握手确保数据传输的安全性。发送HTTP请求浏览器向服务器发送一个HTTP或HTTPS请求请求可以包括GET或POST方法以及请求头如用户代理、接受的内容类型等。服务器处理请求服务器接收到请求后根据请求类型如静态资源请求或动态页面请求处理请求。如果是动态页面服务器可能需要查询数据库、执行服务器端脚本等。服务器响应服务器处理完请求后会返回一个HTTP响应响应通常包括状态码如200表示成功404表示未找到等、响应头如内容类型、缓存策略等和响应体通常是HTML页面、图片、视频等资源。浏览器处理响应浏览器接收到服务器的响应后开始解析HTML文档构建DOM树。同时如果遇到外部资源的引用如CSS、JavaScript文件、图片等浏览器会发送额外的HTTP请求来获取这些资源。渲染页面浏览器根据CSS样式和HTML结构渲染页面将内容显示在屏幕上。JavaScript文件执行可能会改变DOM结构或样式进而影响页面的最终呈现。关闭连接如果服务器响应头中指示不需要持久连接如HTTP/1.0浏览器会在接收完资源后关闭TCP连接。如果是持久连接如HTTP/1.1中的Keep-Alive连接可能会保持一段时间以便传输后续请求。 2、ICMP 一个新搭建好的网络往往需要先进行一个简单的测试来验证网络是否畅通。但是 IP协议并不提供可靠传输。如果丢包了IP 协议并不能通知传输层是否丢包以及丢包的原因。ICMP正式提供这类功能的一种协议。 ICMP的主要功能包括确认IP包是否成功送达目标地址通知在发送过程当中IP包被废弃的具体原因改善网络设置等。有了这些功能以后就可以获得网络是否正常、设置是否有误以及设备有何异常等信息从而便于进行网络上的问题诊断。 在IP通信中如果某个IP包因为某种原因未能达到目标地址那么这个具体的原因将由ICMP负责通知。 ICMP的这种通知消息会使用IP进行发送在ICMP中数据以明文的形式像TCP/UDP一样通过IP 进行传输。但ICMP仍是IP层的一部分。收到ICMP包的主机就分解ICMP的首部和数据域以后得知具体发生问题的原因。 ping是最著名的基于ICMP的工具之一用于测试网络连接和延迟。它通过发送ICMP回显请求消息到目标主机并等待目标主机返回ICMP回显应答消息来工作。 3、NAT技术 NATNetwork Address Translation是用于在本地网络中使用私有地址在连接互联网时转而使用全局IP地址的技术。作为一种在IP网络中使用的路由技术它允许一个或多个私有网络中的设备使用一个或几个公共IP地址来访问外部网络。 除了转换IP地址外还出现了可以转换TCP、UDP端口号的NAPT技术由此可以实现用一个全局IP地址与多个主机通信。 私有地址在内部网络如家庭、办公室局域网中使用私有IP地址这些地址在互联网上不可路由。私有地址范围包括 10.0.0.0 - 10.255.255.25510.0.0.0/8172.16.0.0 - 172.31.255.255172.16.0.0/12192.168.0.0 - 192.168.255.255192.168.0.0/16 地址转换当内部网络中的设备需要访问外部网络时NAT设备如路由器会将设备的私有IP地址和端口号映射到一个公共IP地址和不同的端口号。端口号映射NAT不仅可以转换IP地址还可以转换端口号以区分来自同一私有网络但不同设备的通信。 在NATNAPT路由器的内部有一张自动生成的用来转换地址的表。当10.0.0.10向163.221.120.9发送第一个包时生成这张表并按照表中的映射关系进行处理。当私有网络内的多台机器同时都要与外部进行通信时仅仅转换IP地址可不够 当局域网内的主机访问公网时通常情况下局域网的出口路由器会将发往公网的数据包进行地址转换将数据的源IP地址修改为路由器的公网IP地址以便公网主机能够正确地返回响应。 在进行 NAT 转换时路由器会将源 IP 地址和端口号替换为它自己的公网 IP 地址端口号并在其 NAPT 转换表中记录转换信息以便在接收到响应数据包时能够将目标 IP 地址从公网 IP 地址转换为对应的私有 IP 地址并将响应数据包发送回相应的局域网主机。 具体而言当路由器接收到返回的数据包时它会检查数据包的目标 IP 地址端口号。然后根据NAPT转换表中的映射关系找到对应的私有 IP 地址端口号。接着路由器会将数据包的目标 IP 地址端口号修改为对应的私有 IP 地址端口号并将数据包发送到局域网内的相应主机。 4、DHCP 如果逐一为每一台主机设置IP地址会非常繁琐的事情。特别是在移动使用笔记本电脑、智能终端以及平板电脑等设备时每移动到一个新的地方都要重新设置IP地址。 为了 实现自动设置IP地址、统一管理IP地址分配就产生了DHCPDynamic Host Configuration Protocol协议。有了DHCP计算机只要连接到网络就可以进行TCP/IP通信。也就是说DHCP让即插即用指只要物理上一连通无需专门设置就可以直接使用这个物理设备 变得可能。而DHCP不仅在IPv4中在IPv6中也可以使用。当子网中新增主机时需要给其分配IP地址当子网当中有主机断开网络时又需要将其IP地址回收便于后续给新增主机分配。 使用DHCP之前首先要架设一台DHCP服务器一般用该网段的路由器充当DHCP服务器 。然后将DHCP所要分配的IP地址设置到服务器上。此外还需要将相应的子网掩码、路由控制信息以及DNS服务器的地址等设置到服务器上。
http://www.dnsts.com.cn/news/123678.html

相关文章:

  • 网站seo快速排名松江网站建设品划网络
  • 网站中做背景图片位置咋写沈阳网络教育
  • 网站关键词数量创建网站快捷方式到桌面
  • 技术支持 金华网站建设网站推广渠道及特点
  • 家装设计网站排行榜前十名wordpress 5.0.2 发布失败
  • 网站建设 精品课程上海千家美装饰公司地址
  • 贵州省城乡与住房建设部网站wordpress重置主题设置
  • 创业开网站建设公司深圳商业网站建设系统
  • 网站开发成本核算企业网站模板包含什么
  • 网站app免费下载软件大全有什么网站可以做
  • 用dreamwever做网站徐州做网站软件
  • 备案需要写网站建设方案书qq推广怎么做
  • 河南省建设科技协会网站WordPress汉化卡片式主题
  • 外贸主动营销网站建设深圳快速网站制作服务
  • js特效网站sem优化师
  • 长沙房地产网站建设led网站建设
  • 网站建设最基础的是什么wordpress 手机播放不了视频
  • 做网站服务器在哪买电影网站制作
  • 怎样做专业网站电子商务基础平台有哪些
  • 岳阳网站建设企业中山网站定制公司
  • 怎么黑网站的步骤江苏省城乡和住房建设厅网站首页
  • 国外的ui设计思想网站苏州公司建设网站制作
  • 西地那非是什么药上海网站建设优化
  • 网站建设公司如何推广哈尔滨建设网站公司
  • 网站建设服务费如何做会计分录网站建设与管理是学什么
  • 建设网站公司那里好相关的热搜问题解决方案wordpress 开发 知乎
  • 顺德新网站制作建设网站选多大的空间合适
  • 知名网站开发哪里有php做网站导购模板
  • 旅游网站制作我的网站怎么做
  • 中小微企业建设网站wordpress图片主题 简约