百度
360搜索
搜狗搜索

linux怎么转换掩码详细介绍

在 Linux 系统中,子网掩码可以在点分十进制(如 255.255.255.0)和 CIDR 表示法(如 / 24)之间相互转换。下面为你介绍几种不同的转换方法。

手动计算转换

点分十进制转 CIDR

子网掩码由连续的 1 和连续的 0 组成。将点分十进制的子网掩码转换为 32 位二进制数,统计其中 1 的数量,这个数量就是 CIDR 表示法中的数字。
例如,子网掩码 255.255.255.0,转换为二进制是 11111111.11111111.11111111.00000000,其中 1 的数量是 24,所以对应的 CIDR 表示法是 / 24。

CIDR 转点分十进制

已知 CIDR 表示法中的数字,将其转换为 32 位二进制数,前面是相应数量的 1,后面是 0。然后把这个 32 位二进制数按每 8 位一组分开,转换为十进制数并用点分隔。
例如,CIDR 表示法是 / 24,对应的 32 位二进制数是 11111111.11111111.11111111.00000000,转换为十进制就是 255.255.255.0。

使用命令行工具转换

利用
ipcalc工具

ipcalc可以进行 IP 地址和子网掩码的各种计算。若未安装,可使用以下命令安装:
bash

ipcalc

yum ipcalc

点分十进制转 CIDR
bash

ipcalc .1.0 .255.0   Netmask   

上述命令会输出 CIDR 表示法的子网掩码。

CIDR 转点分十进制
bash

ipcalc .1.0/24   Netmask   

此命令会输出点分十进制的子网掩码。

用 Python 脚本转换

你也可以编写 Python 脚本来完成转换。下面是示例代码:
python

运行

 ipaddress

subnet_mask

net ipaddressIPv4Networksubnet_mask strict

netprefixlen

prefixlen

net ipaddressIPv4Networkprefixlen strict

netnetmask

subnet_mask

cidr dotted_decimal_to_cidrsubnet_mask

subnet_maskcidr

prefixlen

dotted_decimal cidr_to_dotted_decimalprefixlen

dotted_decimal

把上述代码保存为一个 Python 文件(如subnet_mask_conversion.py),然后在终端运行:
bash

python3 subnet_mask_conversion.py




912python3 subnet_mask_conversion.py

通过上述方法,你可以在 Linux 系统中方便地进行子网掩码的转换。

阅读更多 >>>  linux命令修改文件编辑权限

网站数据信息

"linux怎么转换掩码"浏览人数已经达到19次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:linux怎么转换掩码的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!