zoukankan      html  css  js  c++  java
  • 协议那些事(三)

    简单的ip address 又包含哪些信息呢?

    查看IP信息的命令

    • Windows下 ipconfig
    • Linux下 ifconfig 或 IP addr 【如果你的Linux被裁减过 这两个命令均没有 那你需要先安装一下net-tools和IProute2工具】

    ifconfig与ip addr的区别

    • ifConfig 与ipconfig类似 显示的是基础的IP配置信息 如下

    • ip addr则是会显示当前机器上的所有网卡信息【网卡的ip地址 可有可没有 非一定存在】 具体信息如下

    网卡名称后的
    net_device flags--网络设备的状态标识

    • UP--网卡处于启动状态

    • BROADCAST--该网卡有广播地址 可发送广播包

    • MULTICAST--网卡可发送多播包

    • LOWER_UP--L1是启动的 插着网线

    • mtu 1500--最大传输单元MTU上线是1500(以太网默认值) MTU是二层MAC层的概念 表示MAC头+正文(Ip头+TCP头+Http头)总长不超过1500字节 超过则需要分片传输

    • qdisc--queueing discipline 排队规则 即接口数据包加入规则 分为两种

      • pfifo--不对包做处理 包采取先入先出的方式通过队列
      • pfifo-fast--包括三个band 每个band里依旧是先进先出通过 通过band将包的优先级进行划分 band0优先级最高 其次是band1 band2; IP头里有一个字段TOS--Type of service表示包的优先级 根据TOS划分包的band

    IP地址

    • IP地址就是网卡在网络世界的通讯地址 比拟为现实世界门牌号【具有定位功能】

      • IPv4 是32位 比如10.100.122.2 IPv4又分为五类


        其中D类是组播地址 此类地址表示某个组的主机都能收到 比如公司常用的邮件组

      • IPv6 是128位 如 inet6 fe80::f816:3eff:fec7:7975/64 IPv6的出现是因为IPv4的划分最大主机数过少不够用

    • 这里我们要区分公有ip 和私有IP

      • 通常我们办公司、家里、学校的ip地址都是私有IP 这些私有ip容许组织内部IT人员自己管理、自己分配、可重复 比如每个小区都可以有3001可重复 但是出了小区就要使用公有IP地址 区分到底是哪个小区
      • 公有ip--是被某个组织统一分配的 我们要用需要花钱买 比如我们想建一个网站 还想被外部人员访问 我们就需要有一个公有IP
    • 又因为IPv4的划分规则 使C类最大主机数过低 而B类主机数又过多 会造成浪费 所以又出现了无类型域间选路(CIDR)

      • 它将32位地址一分为2 比如 10.100.122.2/24 -- 【/24】表示 32位的ip 前24位表示 网络号 后32-24=8位表示主机号 则第一地址就是10.100.122.1
      • CIDR的存在
        • 造就广播地址 比如 10.100.122.2/24 的广播地址就是 10.100.122.255 意味着多有 10.100.122网络里的机器都可以收到
        • 子网掩码 比如 10.100.122.2/24 的子网掩码就是 255.255.255.0
      • 将IP地址与子网掩码进行位运算(AND)可以得到网络号

    CIOR的常见误区

    EG: 求16.158.165.91/22 第一个地址、子网掩码和广播地址
    • 错误答案: 第一地址 16.158.165.1
    • 正解: /22表示 前22位(不是24位啦)表示网络号 前16位是16.158 又22-16=6
      所以 165也就是10100101的前6位是网络号 于是16.158.<101001>为网络号(余位补0 即16.158.<101001><00> --16.158.164) <01>.91为主机号
      所以第一地址 16.158.164.1
      子网掩码 255.255.<111111><00>.0--255.255.252.0 【缺位补0】
      广播地址 16.158.<101001><11>.255--16.158.167.255 【缺位补1】
  • 相关阅读:
    7.3---直线是否相交(CC150)
    7.2---蚂蚁相遇问题(CC150)
    5.6---交换整数的奇数位和偶数位(CC150)
    5.5---整数A转成整数B(CC150)
    5.2---小数的二进制表示(CC150)
    5.1---二进制数插入(CC150)
    4.6---找二叉树中序后继(CC150)
    4.5---判断是否是二叉排序树BST(CC150)
    4.4---建立二叉树的链表
    linux中查看java进程
  • 原文地址:https://www.cnblogs.com/Alicia-meng/p/14242713.html
Copyright © 2011-2022 走看看