Код: Выделить всё
if ( $ip =~ /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/
&& ($1 < 256 && $2 < 256 && $3 < 256 && $4 < 256 ) ) {
# $ip – правильный IP адрес
} else { # $ip – неверный IP адрес}
Перл работает на базе Freebsd 10.3 и
Код: Выделить всё
# perl -v
This is perl 5, version 24, subversion 1 (v5.24.1)
Код: Выделить всё
#!/usr/local/bin/perl
#cgi-bin/on.pl?id=172.16.***.***
print ("Content-type: text/html\n\n");
use strict;
use CGI ':standard';
use Encode;
my $id = param ('id');
my $IP = $ENV{'REMOTE_ADDR'};
if ( $id =~ /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/
&& ($1 < 256 && $2 < 256 && $3 < 256 && $4 < 256 ) ) {
print("$id – правильный IP адрес"."\n");
} else { print("$id – неверный IP адрес"."\n") }
Не подскажете, что я не так сделал.