面试网络基础知识 — IP地址

面试网络基础知识 --- IP地址

一、简介

IP地址(Internet Protocol Address)是指 互联网协议地址 ,又译为 网际协议地址。由四段组成,每个字段是一个字节,即4个字节、 每个字节有8位,最大值是255 ( 2 8 2^8 28=256:0~255) 。

子网掩码又叫网络掩码、地址掩码,子网掩码32位与IP地址32位相对应,左边是网络位,用二进制数字"1"表示,1的数目等于网络位的长度 ;右边是主机位,用二进制数字"0"表示,0的数目等于主机位的长度

  • 作用:
    1. 唯一标识网络设备
      • IP地址为互联网上的每台主机或网络接口分配‌唯一的逻辑地址‌ ,类似于现实中的邮寄地址,确保数据能够准确送达目标设备。
        • ‌‌逻辑地址与物理地址的区别‌:IP地址是网络层的逻辑标识,而物理地址(如MAC地址)由链路层协议使用。
      • ‌唯一性要求‌:同一网段内不允许重复的主机号,否则会导致通信冲突。
    2. 实现数据路由与传输
      • IP地址是路由器进行路径选择的关键依据,支持数据包从源到目的地的跨网段传输。
      • ‌与传输层协议的关系‌:IP仅负责路由,数据传输的可靠性由TCP/UDP等协议实现。
    3. 支持网络管理与安全控制
      • ‌访问控制‌:管理员可通过IP地址限制资源访问权限
      • ‌‌日志与审计‌:服务器记录IP地址以追踪用户活动,用于安全分析和合规审计。
      • ‌‌地理位置定位‌:IP可提供设备的大致位置信息(如城市或区县),但精度有限。
    4. 互联网运行的基础
      • ‌‌协议依赖‌:TCP/IP协议簇 依赖IP地址实现主机间通信,是互联网运行的底层逻辑。
      • ‌‌地址枯竭与IPv6‌:IPv4的43亿地址限制促使了IPv6的推出,以支持更多设备接入。

‌总结‌:IP地址的核心功能是 标识寻址,同时衍生出路由、管理、安全等扩展用途,其设计理念体现了分层网络架构的灵活性。

二、IP分类

IP地址 = 网络号+主机号

  • IP地址由两部分组成,即网络地址和主机地址:

    1. 网络号 net-id,它标志主机(或路由器)所连接到的网络,网络地址表示其 属于互联网的哪一个网络

    2. 主机号 host-id,它标志该主机(或路由器),主机地址表示其 属于该网络中的哪一台主机

假如两台计算机的网络部分是一模一样 的就说这两台计算机是处于 同一个子网

  • IP 地址可分为 A , B , C 三类以及特殊地址 D , E ;
类型 地址范围 作用
A类 1 .0.0.0 - 127.255.255.255 主要用于大型机构(如国家级网络)
B类 128.0.0.0 - 191.255.255.255 主要用于中型网络
C类 192.0.0.0 - 223.255.255.255 主要用于小型局域网
D类 224.0.0.0 - 239.255.255.255 主要用于多播通信,不分网络和主机号
E类 240.0.0.0 - 255.255.255.255 是实验保留地址

子网掩码又叫网络掩码、地址掩码,子网掩码32位与IP地址32位相对应 ,左边是网络位,用二进制数字"1"表示,1的数目等于网络位的长度 ;右边是主机位,用二进制数字"0"表示,0的数目等于主机位的长度

根据子网掩码计算网络内可用P地址个数(也即主机台数)

第8位 第7位 第6位 第5位 第4位 第3位 第2位 第1位
128 64 32 16 8 4 2 1
  • 已知某主机的 IP地址 是 192.168.100.200,子网掩码 为 255.255.255.192,其网络内可用的 IP地址 个数为多少?
    1. 将子网掩码 255.255.255.192转换为二进制 11111111.11111111.11111111.11000000
    2. 子网掩码共有 26 位,还有6位可用。即 2 6 2^6 26 - 2,等于 62,即有 62 个 IP地址 可用(也即网络内最多允许62台主机)

注:-2 是因为主机不包括网络地址(主机号全为0)和广播地址(主机号全为1)

写出某个网段的网络地址和广播地址?

在面试中被问到如何写出某个网段的网络地址和广播地址时,首先需要明确该网段的 IP地址范围子网掩码

1、理解基本概念

  • 网络地址 :网络地址是IP地址子网掩码 进行与运算的结果,用于 标识网络本身
  • 广播地址:广播地址是网络地址中主机位全部为1的地址,用于向网络内的所有主机发送消息。

2、计算步骤

  1. 确定IP地址和子网掩码
    • 假设给定的网段IP地址为A.B.C.D,子网掩码为255.255.255.M(其中M是一个介于0到255之间的数,决定了子网的大小)。
  2. 将IP地址和子网掩码转换为二进制
    • 将IP地址A.B.C.D和子网掩码255.255.255.M分别转换为二进制形式。
  3. 进行位与运算得到网络地址
    • 将IP地址的二进制表示与子网掩码的二进制表示进行 与运算(AND操作)。结果即为网络地址的二进制表示。
    • 将网络地址的二进制表示转换回十进制形式,得到 网络地址 netAddress
  4. 计算广播地址
    • 广播地址是网络地址中主机位全部为1的地址。因此,首先需要将网络地址的二进制表示中的主机位全部置为1。
    • 主机位的数量由子网掩码决定,即32 - 子网掩码中1的数量
    • 将修改后的二进制地址转换回十进制形式,得到 广播地址 BroadcastAddress

3、示例

第8位 第7位 第6位 第5位 第4位 第3位 第2位 第1位
128 64 32 16 8 4 2 1

假设给定的网段是192.168.1.0/24,其中192.168.1.0是IP地址,/24表示子网掩码为255.255.255.0

  1. IP地址和子网掩码的二进制表示
    • IP地址:11000000.10101000.00000001.00000000(192.168.1.0)
      • 128+64 128+32+8 1 0
    • 子网掩码:11111111.11111111.11111111.00000000
  2. 与运算得到网络地址
powershell 复制代码
# 与运算:有 0为 0,全 1为 1
  11000000.10101000.00000001.00000000
  11111111.11111111.11111111.00000000
--------------------------------------
  11000000 10101000 00000001 00000000
  128+64   128+32+8		1		0
   192       168		1		0
  • 结果:11000000.10101000.00000001.00000000(换算为十进制即192.168.1.0
  1. 计算广播地址
    • 将网络地址的最后一段(主机位)全部置为1:00000000 -> 11111111
    • 结果:11000000.10101000.00000001.11111111(即192.168.1.255)

4、总结

在面试中,当被问到写出某个网段的网络地址和广播地址时,需要按照上述步骤进行计算。关键是要理解网络地址和广播地址的概念,掌握二进制运算的基本方法,并能够准确地将二进制转换为十进制。同时,要注意子网掩码对主机位和网络位的划分作用。

相关推荐
Chenyu_31016 分钟前
09.传输层协议 ——— TCP协议
linux·服务器·网络·c++·网络协议·tcp/ip
流星白龙42 分钟前
【Linux】46.网络基础(3.3)
linux·网络·php
独行soc2 小时前
2025年渗透测试面试题总结-拷打题库08(题目+回答)
java·linux·运维·服务器·python·面试·职场和发展
天天扭码2 小时前
一分钟解决一道算法题——矩阵置零
前端·算法·面试
Zz_waiting.2 小时前
网络原理 - 4(TCP - 1)
服务器·网络·tcp/ip
盖世英雄酱581362 小时前
同事说缓存都用redis啊,数据不会丢失!真的吗?
redis·后端·面试
卡戎-caryon3 小时前
【Linux网络与网络编程】07.应用层协议HTTPS
linux·网络·网络协议·tcp/ip·https·应用层协议
天天扭码3 小时前
偶遇天才算法题 | 拼劲全力,无法战胜 😓
前端·算法·面试
一一Null3 小时前
Android studio—socketIO库return与emit的使用
android·java·网络·ide·websocket·网络协议·android studio
天天扭码4 小时前
面试官:算法题”除自身以外数组的乘积“ 我:😄 面试官:不能用除法 我:😓
前端·算法·面试