大家好,欢迎来到IT知识分享网。
其实无论作为前端还是后端开发,都会涉及到网络方面的知识,下面是总结的IP的常用计算方式
一,给你一个IP和掩码 如何计算出 它的可使用范围?
在此之前,我们先要知道 IP地址 32位。 IP网络位 + IP主机位 = IP (32位)
给你一个IP和掩码你知道有效IP的个数吗?
2的(32-掩码)次方-2 起始位网关,末位广播,所以掩码为30的有效IP就两个
那它的有效IP 起始IP是多少?末位IP是多少?
例如: 192.168.100.25/28
192.168.100.25/28 /28 = 255.255.255.240 0 00011001 [28位网络位,4位主机位] & ------------------------------------------------ 0 00010000 = 192.168.100.16 网关 广播位的主机位全为1 00011111 = 192.168.100.31/28就是广播位 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 =16个 .16是网关 .31是广播位
例如: 192.168.100.25/30
192.168.100.25/30 /30 = 255.255.255.252 30位网络位 = 252 0 00011001 [30位网络位,2位主机位] & ---------------------------------- 0 00011000 = 192.168.100.24 网关 广播位的主机位全为1 00011011 = 192.168.100.27/30就是广播位 (此时30网络位,2位主机位,主机位置1就是广播位 00011000 -> 00011011) 24 25 26 27 =4个 .24是网关 .27是广播位 可用IP 。25 和 .26
简单的24为掩码的地址范围很好确定,就是1~254 计算试试吧!
单个我们可以借助百度搜索,涉及整个IP段的使用开发时,你就必须要知道这个了!
开发需求解决:
例如:你要存储所有的IP地址,让客户购买, 一个IP是一条数据,这得存储多少表才够用?
二,如何判断两个IP是不是同一网段?
在实际项目中,我们通常会遇到这样的ip地址: ip地址:192.168.1.1 子网掩码:255.255.255.0 ip地址:192.168.1.2 子网掩码:255.255.255.0 我们可以直接的判断,他们是同属于一个网段的ip地址。 那么对于下面这样的呢? ip地址:192.168.1.1 子网掩码:255.255.255.0 ip地址:192.168.1.2 子网掩码:255.255.0.0
将ip地址与子网掩码做与运算,如果得出的结果一样,则这两个ip地址是同一个子网当中!
将ip地址192.168.1.1转换为二进制 将子网掩码255.255.255.0转换成二进制 00000001 00000001 ...00000000 & -------------------------------------------------------- 00000001 00000000 转换成网络号就是:192.168.1.0 将ip地址192.168.1.2转换为二进制 将子网掩码255.255.0.0转换成二进制 00000001 00000010 00000000 00000000 & ----------------------------------------------------- 00000000 00000000 转换成网络号就是:192.168.0.0
它们所以不是一个网段
三,计算有效IP的个数
那么它的IP:就是 8个,一个for 循环解决
100.0 网络 100.1 可用 100.2 可用 100.3 可用 100.4 可用 100.5 可用 100.6 可用 100.7 广播
所写均为自己的笔记,因为懒得记忆
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/119046.html