Irix > Netzwerke mit IRIX? Aber Sicher!
Perl Skript: Dynamische IP -> Umleitung
Indigo2001:
Und schon wieder brauche ich eure Hilfe!
Ich moechte gerne per Internet auf meine Indy zugreifen (Webserver / FTP...). Da ich leider nur ueber eine Waehlverbindung verfuege (dynamische IP -- T-DSL) habe ich mich nun bei einem der unzaehligen kostenlosen Dienste, fuer eine solche Umleitung auf die jeweilige dynamische IP, angemeldet. ;D
Der auserkorene Anbieter (http://www.dynip.de) stellt fuer Unix auch ein Perl Skript zur Verfuegung, welches den Update der IP bewerkstelligen soll. Da ich jedoch keinerlei Ahnung von Perl habe bitte ich um eure Hilfe.
Koennt ihr einen Blick auf das Skript werfen und dieses Irix tauglich abaendern. Ich waere euch auf ewigen Dank verpflichtet.
System: Irix 6.2
Schon im Voraus herzlichen Dank
Erich
#!/usr/bin/perl
############################################
# #
# dynIP.de Authentication Client 1.0 #
# (c) by Joerg 'brainy' Staedele #
# Trusted Network #
# #
############################################
# #
# http://www.dynip.de #
# #
############################################
# Config
##########
my $USERNAME = "fill in your username";
my $PASSWORD = "fill in your password, case sensitive";
# Leave this untouched!
###################################################################
my $SERVER_PORT = 8188;
my $SERVER_NAME = 'auth.dynip.de';
my $IP = pop @ARGV;
use IO::Socket;
use strict;
if (defined (my $remote = IO::Socket::INET->new(
Proto => 'tcp',
PeerAddr => $SERVER_NAME,
PeerPort => $SERVER_PORT)))
{
print "Connected to $SERVER_NAME.\n";
while (<$remote>)
{
if ($_ =~ /^101/)
{
print $remote "IP $IP\n" if ($IP);
print $remote "USER $USERNAME\n";
} elsif ($_ =~ /110/) {
print $remote "PASS $PASSWORD\n";
} elsif ($_ =~ /999/) {
print "Server closed connection.\n\n";
exit 0;
} elsif ($_ =~ /^[4,5]+\d+\s*(.*)/) {
print "An Error occured:\n\t$1\n";
} elsif ($_ =~ /^150\s*(.*)/) {
print "Server says:\n\t$1\n";
}
}
} else {
print "An Error occured:\n\tCan't connect to $SERVER_NAME:$SERVER_PORT\n";
exit 0;
}
SmellyCat:
Hi,
meine Lieblingsscpritsprache ;D
Simpel ist nicht viel zu tun ausser:
#!/usr/bin/perl
Den Pfad Deiner Perl Executable eintragen (bei mir /usr/freeware/bin/perl)
Wäre vielleicht ein "#!/pfad/irgendwo/perl -w" nicht schlecht - so hast Du norm. keine Probs.
my $USERNAME = "fill in your username";
my $PASSWORD = "fill in your password, case sensitive";
Auch klar, einfach Deine Namen etc. eintragen, auf Leerstellen und Umlauten achten, besonders sollen nicht unbedingt Perl Steuerzeichen drinnen sein, am besten Plaintest und Zahlen nehmen so kann nix schief gehen.
Ich sehe kein Programmaufruf etc. mehr der Dir Probleme machen könnte. Ausser eben die Usernamen, sie sind Scalar also keine Umlaute etc. wie schon gesagt (vorallem kein @ " / ! $ ')...
Aus dem Ding eine Executable machen (-rwxr-xr--) oder es mit "perl <name>" ausführen...
Gibt's denn explizite Probleme?
bye
Mats
Jerry:
Moin,
sorry, aber ich hätt' dyndns.org gewählt (hab ich auch ;) )
Zum einen sind die Services nachgewiesenermaßen schnell und stabil und
zum zweiten gibt's dabei so narrensichere clients auch und gerade für UNIX/Linux, daß jegliches Basteln mit Perl-Scripten entfällt... (-> die Variante für die Tippfaulen unter uns...)
Gruss
Jerry
(sich an die eigene Nase fassend)
Zum Test: steinbruch.homeunix.net (dassis meine Kiste zuhause im Keller...)
Indigo2001:
Hallo Mats,
ich erhalte folgende Fehler: :'(
IRIS 12# perl dynip-client.pl
Syntax error in file dynip-client.pl at line 4, next 2 tokens "my $SERVER_PORT "
Syntax error in file dynip-client.pl at line 11, next 2 tokens "my $remote "
Syntax error in file dynip-client.pl at line 34, next token "}"
Syntax error in file dynip-client.pl at line 37, next token "}"
Execution of dynip-client.pl aborted due to compilation errors.
IRIS 13#
Woran kann das liegen?
cu, erich
Indigo2001:
Hallo Jerry,
dyndns.org klingt interessant.
Welchen Client hast du bei dir am laufen?
Was muss ich bei Irix 6.2 beachten? ???
cu, erich
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln