【发布时间】:2025-12-18 10:35:01
【问题描述】:
所以我想将网络位(CIDR)转换为二进制
我试图在谷歌上搜索,但它什么也没给我,只给我 ipcalculator 和其他东西
但我读了一些文章,告诉我如何将十进制转换为二进制
问题是我需要弄清楚如何将网络位更改为十进制
for example i use 28(/28) the netmask should be 255.255.255.240 i just want to use the 240
so that i can convert it to binary it should give me 11110000
我试图在谷歌上查找如何做到这一点,但只告诉我如何将二进制转换为十进制
谁能给我一个链接或教我怎么做
或者有另一种方法,比如我不必将网络位转换为十进制
我会不断更新我的进度
【问题讨论】:
-
我现在尝试使用 list、array 和 dict 方法,所以我不必将网络位转换为十进制
-
IPv4 掩码和 IPv4 地址一样,实际上是一个 32 位无符号整数,点分十进制表示法只是为了便于人类阅读。八位字节没有意义。您可以将掩码设置为
0xffffffff并将其向左移动(32 - length)次,然后将其转换为二进制字符串,对于28的掩码长度,您将得到0b11111111111111111111111111110000。此时,您可以获取字符串的任何部分,例如,最后八个字符将是掩码的最后一个八位字节。
标签: python networking binary converters subnet