Как по IP адресу хоста и маске подсети определить адрес подсети. |
[исправить] |
$ip = "192.168.1.43";
$nm = "255.255.255.224";
print "\nip addr = $ip\nnetmask = $nm\n";
($ip1, $ip2, $ip3, $ip4) = split(/\./, $ip);
($nm1, $nm2, $nm3, $nm4) = split(/\./, $nm);
$sb1=$ip1 & $nm1; $sb2=$ip2 & $nm2; $sb3=$ip3 & $nm3; $sb4=$ip4 & $nm4;
print "subnet = $sb1\.$sb2\.$sb3\.$sb4\n\n";
|
|
|
10.07.2002
|
Раздел: Корень / Программисту и web-разработчику / Perl / Полезные подпрограммы на Perl / Работа с сетью и IP адресами на Perl |
1.1, Zaur (?), 04:06, 26/05/2003 [ответить]
| +/– |
Незнаю как у всех но у меня этот пример заработал только после такой модификации:
$ip = "192.168.1.43";
$nm = "255.255.255.224";
print "\nip addr = $ip\nnetmask = $nm\n";
($ip1, $ip2, $ip3, $ip4) = map { int($_)} split(/\./, $ip);
($nm1, $nm2, $nm3, $nm4) = map { int($_)} split(/\./, $nm);
$sb1=$ip1 & $nm1; $sb2=$ip2 & $nm2; $sb3=$ip3 & $nm3; $sb4=$ip4 & $nm4;
print "subnet = $sb1\.$sb2\.$sb3\.$sb4\n\n";
| |
1.2, Надя (?), 22:17, 24/11/2004 [ответить]
| +/– |
Как по IP-адресу можно узнать какие-нибудь сведенья о владельце этого IP-адреса? | |
1.3, Андрей (??), 16:44, 06/04/2005 [ответить]
| +/– |
Как по IP-адресу можно узнать какие-нибудь сведенья о владельце этого IP-адреса?
| |
1.7, Тарас (??), 10:53, 19/04/2011 [ответить]
| +/– |
Надо применить к ним побитовую операцию конъюнкции.
| |
|