use strict;
use warnings;
use IO::Socket;

# Das Programm erwartet einen Kommandozeilenparameter
die "Usage: $0 <IP-Adresse>\n" if ($#ARGV != 0);

my $port = $ARGV[0];
my ($sock, $answer, $i);

$sock = createsocket();
print $sock "VERSION\r\n";
print "Version -----------------\n";
for (1..3)
  {
  $answer = <$sock>;
  print "        ",$answer;
  }
print "-------------------------\n";
print $sock "GETIP\r\n";
$answer = <$sock>;
print "IP-Adresse: ",$answer;
print $sock "GETMASK\r\n";
$answer = <$sock>;
print "Netzmaske.: ",$answer;
print $sock "GETGW\r\n";
$answer = <$sock>;
print "Gateway...: ",$answer;
print "-------------------------\n";

close($sock);
exit;

sub createsocket
  {
	my $remote_port = '50290';
	my $socket = IO::Socket::INET -> new(PeerAddr => $port,
        	                             PeerPort => $remote_port,
        	                             Proto    => "tcp",
        	                             Type     => SOCK_STREAM)
       or die "Couldn't connect to $port:$remote_port: $@\n";
  return $socket;
  }