搜索
首页运维安全如何分析TCP及IP的网络层相关封包与数据

  1. TCP/IP的网络层相关封包与数据

    1)  IP封包的封装:IPv4有32位,IPv6有128位。IP封包最大可以为65535bytes。其结构如下图:

如何分析TCP及IP的网络层相关封包与数据

    需要额外说明的有:

        服务类型:主要分为,PPP,表示此IP封包的优先度,目前很少是使用;D,若为0表示一般延迟(delay),若为1表示为低延迟;T,若为0表示为一般传输量,若为1表示为高传输量;R,若为0表示为一般可靠度,若为1表示为高可靠度;UU:保留尚未被使用;总共合起来为格式为PPPDTRUU。

        旗标:格式为DM,其中,D,若为0表示可以分段,若为1表示不可分段;M,若为0表示此IP为最后分段,若为1表示非最后分段。

        分段偏移:表示目前这个IP分段在原始IP封包中所占的位置。透过TotalLength,Identification,Flags以及Fragment Offset才能将小的IP分段在收受端组合起来。

        存活时间:范围0-255,当IP封包通过一个路由器时,TTL会减一,当TTL为0时,这个封包将会被丢弃。

        协议代码:各个代码的含义为,1,ICMP(InternetMessage Control);2,IGMP(Internet Group Management Protocol);3,GGP(Gateway-to-GatewayProtocol);4,IP(IP in IP encapsulation);6,TCP(Transmission Control Protocol);8,EGP(ExteriorGateway Protocol);17,UDP(Use Data Program)。

        表头检查码:用来检查这个IP表头的错误检查码之用。

        目标地址:目标IP地址

        其他参数:额外选项,提供包括安全处理机制,路由记录,时间戳,严格与宽松之来源路由等。

        补齐项目:由于Options的内容不一定有多大,但IP每个数据都必须是32bits,所以,若Options的数据不足32bits时,则有padding补齐。

        2)  IP地址的组成与分级:

        IP组成:网络号码和主机号码。

        同一网域(网段):在同一个物理网段内,主机的IP具有相同的网络号和独立的主机号。而主机号全为0和全为1(广播地址)的IP是不可用的。同一网段内的主机如果设定相同的网域IP范围(不可重复)可以透过CSMA/CD的功能直接在区网内用广播进行网络的联机(亦即可以直接网卡对网卡传递数据)。在同一个物理网段之内,如果两部主机设定成不同的IP网段,则由于广播地址的不同,导致无法透过广播的方式来进行联机。此时要透过路由器(router)来进行沟通才能将两个网域连接在一起。

        IP分级:整个IP分为五个等级,如下图:

        如何分析TCP及IP的网络层相关封包与数据

        D类:一般用来作为群播的特殊功能只用(最常用在大批计算机的网络还原)。

        E类:保留没有使用的网段。

    3)  IP种类与获取方式

        IP种类:公共IP,由InterNIC统一规划的IP,这种IP才能连上Internet;私有(保留)IP:不能连上Internet的IP,主要用于局域网络内的主机联机规划。

        私有IP分类:A类,10.0.0.0~10.255.255.255;B类,172.16.0.0~172.31.255.255;C类,192.168.0.0~192.168.255.255

        自动取得网络参数:在局域网络内会有一部主机专门负责管理所有计算机的网络参数,当其他主机网络启动时,会主动向该服务要求IP参数,若取得网络相关参数后,主机就能够自行设定好所有服务器给你的网络参数,从而连上Internet。

    4)  Netmask,子网与CIDR(Classless Interdomain Routing)

        Netmask:网络号码全取1而主机号码全取0的IP地址。

        Network:该网段的第一个IP地址,即网络号码为网络号码,而主机号码全为0

        网域表示方法:常用Network以及Netmask来表示一个网域。192.168.0.0/255.255.255.0或192.168.0.0/24(其中24表示网络号占24位)

        无等级网域间路由(无类域间路由):将网络号借用来作为主机号,以使得多个网域写成一个,这种打破原本IP代表等级的方式就被称为无等级网域间路由(可以减少路由信息,从而提升性能)。

    5)  路由的概念:当一部主机发送数据到另一台主机时,这台主机会查看本身的路由信息并与数据的目标地址比较,若找到目标IP,则发送到指定的机器,否则传送到默认网关,再进行传输。重复此过程,直到数据到达目的地。

    6)  route [-n]:观察路由表的指令,参数

        a)-n:将主机名以IP的方式显示。

        b)数据显示解读,

        Destination:Network的意思

        Gateway:默认网关,若为0.0.0.0表示不需要额外的IP

        Genmask:Netmask

        Flags:旗标,U,代表该路由可用;G,代表该网络需要经由Gateway来帮忙传递;H:代表该行路由为一部主机,而非一整个网络

        Iface:接口(interface)即网卡代号。

    7)  ARP(Address Resolution Protocol,网络地址解析协议),RARP(Revers ARP,反向地址解析协议。

    8)  arp [-nd];arp –s hostname(IP) Hardware_address:获取本机的ARP表格内的IP/MAC对应的数据,参数:

        a)-n:以主机IP的形态显示

        b)-d:将hostname的hardware_address由ARP table当中删除掉。

        c)-s:设定某个IP或hostname的MAC到ARP table中(用于建立静态的ARP)。

    9)  ICMP(Internet Control Message Protocol,因特网讯息控制协议):是一个错误侦测与回报的机制,最大的功能就是可以确保我们网络的联机状态与联机的正确性。ICMP也是网络层重要的封包之一,不过,这个封包并非独立存在,而是纳入到IP封包中,也就是说,ICMP同样是透过IP封包来进行数据传送的。ICMP比较常见的ICMP的类别:

        0:Echo Reply,代表一个响应信息

        3:Destination Unreachable,表示目的地不可到达

        4:Source Quench(当router的负载过高时,此类别码可用来让发送端停止发送讯息)

        5:Redirect,(用来重新导向路由路径信息)

        8:Echo Request,请求响应消息

        11:Time Exceeded for a Datagram,当数据封包在某些路由传送的现象中造成超时状态,此类别码可告知来源该封包已被忽略的讯息

        12:Parameter Problem on a Datagram,当一个ICMP封包重复之前的错误时,会回复来源主机关于参数错误的讯息。

        13:Timestamp Request,要求对方送出时间讯息,用以计算路由时间差异,以满足同步性协议的要求

        14:Timestamp Replay,此讯息纯粹是响应TImestamp Request用的

        15:Information Request,在RARP协议应用之前,此讯息用来在开机时,取得网络信息。

        16:Information Replay,用以响应Information Request讯息

        17:Address Mask Request,这讯息是用来查询子网mask设定信息

        18:Address Mask Reply,响应子网mask查询讯息的。

    ping和trcaceroute两个指令可以透过ICMP封包来确认与回报网络主机的状态,

以上是如何分析TCP及IP的网络层相关封包与数据的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:亿速云。如有侵权,请联系admin@php.cn删除

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器