File /usr/share/perl5/Net/Server.pm, line 1487: if ($#{ $prop->{cidr_allow} } != -1) { require Net::CIDR; return 1 if Net::CIDR::cidrlookup($prop->{peeraddr}, @{ $prop->{cidr_allow} }); }
Assume config contains this: cidr_allow 192.168.163.0/24 At this point I can see that $prop->{cidr_allow} is ['192.168.163.0/24'] meanwhile $prop->{peeraddr} is '::ffff:192.168.163.47' This is an IPv4-Mapped IPv6 Address Poor Net::CIDR::cidrlookup() thinks that ::ffff:192.168.163.47 is an IPv6 address and complains: Invalid netblock: 192.168.163.255-0.0.0.0.0.0.0.0.0.0.255.255.193.6.222.47 at /usr/share/perl5/Net/Server.pm line 831 A workaround may be cutting '::ffff:' prefix from front of IPv4 addresses before giving them to cidrlookup(). Giving IPv4-Mapped IPv6 Address in the config file might be an other solution but cidr_allow ::ffff:192.168.163.0/120 does not work yet, because process_conf() cuts off the first colon if found thinking user wrote like this: cidr_allow: blahblahblah So if I write this: cidr_allow: ::ffff:192.168.163.0/120 it works finally. But how ugly is it. :-( Gabor -- No smoke, no drugs, no vindoze. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org