perl位址轉換

2021-08-31 22:09:41 字數 999 閱讀 5895

#!/usr/bin/perl -w

#### 將十進位制數轉換成8為二進位制

sub dectobin

#### 將32位二進位制轉換成十進位制

sub bintodec

#### 將二進位制表示的 ip/子網掩碼轉換成十進位制形式

sub ipmask_bin2dec split (/\./,shift);

return $result;

}#### 將十進位制表示的 ip/子網掩碼轉換成二進位制形式

sub ipmask_dec2bin split (/\./,shift);

return $result;

}#### 將 cidr 表示的子網掩碼轉換成十進位制形式

sub ipmask_cidr2dec )(\d)(\d)(\d)/$1.$2.$3.$4/;

print "#####$mask####\n";

return &ipmask_bin2dec($mask);

}my $dec_ip = "192.168.2.1";

my $dec_mask = "255.255.255.128";

my $cidr_num = 25;

#my $bin_ip = &ipmask_dec2bin($dec_ip);

#my $bin_mask = &ipmask_dec2bin($dec_mask);

my $bin_mask2 = &ipmask_cidr2dec($cidr_num);

my $test = &dectobin(32);

print "decimal ip: $dec_ip\n";

print "binary ip: $bin_ip\n";

print "decimal netmask: $dec_mask\n";

print "binary netmask: $bin_mask\n";

print "cidr netmask: $cidr_num = $bin_mask2\n";

perl編碼轉換

gb2312轉utf8的方法 use encode my str 中文 str cnsoftware encode utf 8 decode gb2312 str utf8轉gb2312的方法 use encode my str utf8中文 str cnsoftware encode gb2312...

perl根據ip位址獲取mac位址

有時候需要根據一台主機的ip位址獲取其mac位址,這是可以實現的,但這個ip位址必須是同乙個乙太網內的ip位址。在perl的模組中net arp可以實現這個功能。但是它的arp lookup函式只能從本機的arp快取表中取 被查詢ip 的mac,如果恰恰有,能取到,沒問題。但是如果arp快取沒有 被...

ip位址轉換數字函式 iton IP位址轉換函式

在ascii字串 192.168.0.99 與網路位元組序的二進位制值間轉換位址。涉及函式的標頭檔案為 include 一 只適用於ipv4協議的函式 int inet aton const char string,struct in addr addr 函式成功,返回值1,否則返回零。將strin...