Użytkownik A.L.E.C <alec1(a)poczta.onet.pl> napisał:
>Repalf wrote:
>> 48c48
>> < my $bmask = 2**32 <<(32-$prefix);
>> ---
>> > my $bmask = ((2**32-1) <<(32-$prefix));
>
>> a co było źle:
>> 1) maska podsieci obliczana od wartości 1.0.0.0.0 a nie od
>> 255.255.255.255
>
>ale w czym jest problem? Pytam bo nie wiem o co chodzi, a w innych skryptach
>też jest ta funkacja i może trzebaby wszędzie poprawić. Dzięki.
problem jest w tym, że zapis 2**32 to nie 255.255.255.255 tylko 1.0.0.0.0 tzn. że jest o 1 za duży,bo nie ma adresów IPv4 o długości 5 bajtów. Tą funkcję wypadałoby poprawić we wszystkich wystąpieniach. A swoją drogą to zastanawiam się jak to może Wam działać? Mi wystakiwał błąd "Eeediot". Jak zacząłem debuggować to odkryłem właśnie ten błąd.