Line 16: |
Line 16: |
| | | |
| { | | { |
− | local $/=undef;
| + | local $/=undef; |
− | open FILE, "ipv6.html" or die "Couldn't open ipv6 file: $!";
| + | open FILE, "ipv6.html" or die "Couldn't open ipv6 file: $!"; |
− | $scan = <FILE>;
| + | $scan = <FILE>; |
− | close FILE;
| + | close FILE; |
| } | | } |
| my $te = new HTML::TableExtract(); | | my $te = new HTML::TableExtract(); |
| $te->parse($scan); | | $te->parse($scan); |
| | | |
− | # my $pingtable = $te->table(0,0); | + | my $pingtable = $te->table(0,0); |
− | my $porttable = $te->table(0,1); | + | my $udpporttable = $te->table(0,1); |
| + | my $tcpporttable = $te->table(0,2); |
| + | |
| + | # Ping result |
| + | foreach my $row ($pingtable->rows) |
| + | { |
| + | foreach my $ele ( @$row ) |
| + | { |
| + | # <TD TITLE="IPv6 ping">ICMPv6 ECHO REQUEST returned : </TD><TD style="background-color:yellow">ECHO REPLY</TD> |
| + | if (defined $ele) |
| + | { |
| + | if ($ele =~ m/ECHO(.*)REPLY$/) |
| + | { |
| + | printf("PING response was %sREPLY\n",$1); |
| + | } |
| + | } |
| + | } |
| + | } |
| | | |
| # Currently prints out the OPEN ports | | # Currently prints out the OPEN ports |
− | foreach my $row ($porttable->rows) | + | foreach my $row ($udpporttable->rows) |
| { | | { |
− | foreach my $ele ( @$row )
| + | foreach my $ele ( @$row ) |
− | {
| + | { |
− | # Port 7 = RFSD
| + | # Port 7 = RFSD |
− | if (defined $ele)
| + | if (defined $ele) |
− | {
| + | { |
− | if ($ele =~ m/Port\s+(\d+)\s+=\s+([A-Z]+)/)
| + | if ($ele =~ m/Port\s+(\d+)\s+=\s+([A-Z]+)/) |
− | {
| + | { |
− | my $port = $1;
| + | my $port = $1; |
− | my $state = $2;
| + | my $state = $2; |
− | if ($state =~ m/OPEN/)
| + | if ($state =~ m/OPEN/) |
− | {
| + | { |
− | printf("PORT %5d was %s\n",$port,$state);
| + | printf("UDP PORT %5d was %s\n",$port,$state); |
− | }
| + | } |
− | }
| + | } |
− | }
| + | } |
− | }
| + | } |
| } | | } |
| + | |
| + | foreach my $row ($tcpporttable->rows) |
| + | { |
| + | foreach my $ele ( @$row ) |
| + | { |
| + | # Port 7 = RFSD |
| + | if (defined $ele) |
| + | { |
| + | if ($ele =~ m/Port\s+(\d+)\s+=\s+([A-Z]+)/) |
| + | { |
| + | my $port = $1; |
| + | my $state = $2; |
| + | if ($state =~ m/OPEN/) |
| + | { |
| + | printf("TCP PORT %5d was %s\n",$port,$state); |
| + | } |
| + | } |
| + | } |
| + | } |
| + | } |
| + | |
| | | |
| | | |
Line 52: |
Line 90: |
| | | |
| $ ./scrape.pl | | $ ./scrape.pl |
− | PORT 22 was OPEN | + | PING response was REPLY |
− | PORT 25 was OPEN | + | UDP PORT 123 was UDPOPEN |
− | PORT 80 was OPEN | + | TCP PORT 80 was OPEN |
− | PORT 443 was OPEN | + | TCP PORT 443 was OPEN |
− | $ | + | $ |
− | | + | |
| This website publishes a [http://ipv6.chappell-family.com/html/privacy_policy.html Privacy Policy.] Continued use of this website implies your consent to the storage of data outlined in the policy. | | This website publishes a [http://ipv6.chappell-family.com/html/privacy_policy.html Privacy Policy.] Continued use of this website implies your consent to the storage of data outlined in the policy. |
| | | |