Programm für ip versenden

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
losnoxos
Beiträge: 38
Registriert: 12.07.2004 15:02:03
Kontaktdaten:

Programm für ip versenden

Beitrag von losnoxos » 14.07.2004 22:21:55

Hi

Ich hätte gerne ein Program was mir alle paar Stunden die T-Online IP meines Servers auf meinen Webspace bei T-Online schickt.

So könnte ich auch von woanders jeder Zeit auf meinen Server über ssh, ftp oder vnc zugreifen.

Kennt da jemand eine möglichkeit.

Wenn das möglich ist würde ich mir gerne eine einzelne html seite machen, wo die ip drin steht und die dann halt alle 10 Stunden aktualisiert auf den webspace geladen wird.

tylerD
Beiträge: 4068
Registriert: 10.07.2002 17:34:13
Wohnort: Halle/Saale
Kontaktdaten:

Beitrag von tylerD » 14.07.2004 22:26:58

Zwar nicht wie du es willst, aber für diesen Zweck eignen sich hervorragend dyndns-Dienste [1]. Dort kann man sich kostenlos regestrieren und bekommt einen eine Subdomain (zum Beispiel bei_mir_zuhause.homelinux.org ) und es gibt eine Menge Clients (zum Beispiel ddclient sogar als Debianpaket) der einem das Updaten der IP auf dem Service automatisch beim Einwählen übernehmen.

cu

[1] http://www.dyndns.org/

fleig
Beiträge: 51
Registriert: 16.02.2003 10:27:53
Wohnort: Zürich
Kontaktdaten:

Beitrag von fleig » 14.07.2004 22:37:55

oder du machst ein kleines script, welches du mittels cron immer wieder aufrufst

im script einen ping (da sieht man auch die eigene ip - oder einen ifconfig - den output gleich mit "| cut fn" auseinander nehmen (n für die entsprechende nummer) müsste sicher gehen.

Ich habe mal so was ähnliches gemacht - ev. finde ich dir dies als muster, falls du es brauchst


ein dyndns wäre natürlich schon der bessere ansatz, aber du fragtest ja nach einem programm :-)

losnoxos
Beiträge: 38
Registriert: 12.07.2004 15:02:03
Kontaktdaten:

Beitrag von losnoxos » 14.07.2004 23:35:10

hi

dyndns kenne ich.DAfür brauche ich aber ja auch was damit die ip auf deren homepage kommt.

ein ifconfig ausdruck wäre perfekt.

aber da müssen dann ja gleich mehrere sachen passieren.

Es muss nach einer bestimmen Zeit ein "Ausdruck" gemacht werden der dann per ftp auf meinen webspace geladen wird.

Wenn du ein Muster hast wäre das sehr nett wenn du mir das geben würdest.

nox@uni.de

fjb

Beitrag von fjb » 14.07.2004 23:50:01

so ein programm läuft doch dann auf dem rechner den du erreichen willst... und upgedated wird es auch regelmässig.. das beste was du machen kannst!

ansonsten zb so: ifconfig ppp0 | head -n 2 | tail -n 1 | cut -d: -f2 | cut -d" " -f 1

fleig
Beiträge: 51
Registriert: 16.02.2003 10:27:53
Wohnort: Zürich
Kontaktdaten:

Beitrag von fleig » 15.07.2004 00:08:12

hmm
da war einer schneller:

bei mir geht es so:

-----------------------script -----------
#!/bin/bash

# simple program to check ip with ifconfig

# trage hier andere mail-adressen ein wenn gew\xfcnscht
MAIL_RECEIPIENTS=ml@fleig.net

TEMPFILE=/tmp/mail.tmp

# SET DATUM
DATUM=$(date "+20%y.%m.%d")
# calc size in directory rekursivly
MYIP=`ifconfig | head -n 3 | tail -n 1 | cut -d: -f2 | cut -d" " -f2`
echo $DATUM: IP=$MYIP

# error ?
if test $? -ne 0; then
echo -e "\a"
exit 4
fi

echo "IP ist zur Zeit: $iMYIP" > $TEMPFILE
mail -s "check ip-daemon @ xxx" $MAIL_RECEIPIENTS < $TEMPFILE

exit 0
-----------------------end script-----------------------------------

und dieses mittels cron:

(crontab -e):
6 * * * * /home/marco/script >> /home/marco/script.log

so läuft das immer am 6 Minuten ab - Kannst Du ja selber einstellen

OK?

auf einem anderen Rechner muss ich auch:
ifconfig | head -n 2 | tail -n 1 | cut -d: -f2 | cut -d" " -f1
eingeben
Zuletzt geändert von fleig am 27.07.2004 14:15:29, insgesamt 1-mal geändert.

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 15.07.2004 16:34:24

Bei dyndns kommt die IP per "ddclient" "auf deren Homepage" (in deren DNS wäre richtiger).

Gibt's auch als Debian Paket.

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

losnoxos
Beiträge: 38
Registriert: 12.07.2004 15:02:03
Kontaktdaten:

Beitrag von losnoxos » 17.07.2004 09:55:45

Hi

so ich hab das jetzt mal mit ddclient versucht. geht auch ganz gut.

Das mit dem Skript wäre aber noch besser. Aber ich glaube ich warte da erstmal noch ein bischen mit, da ich eigentlich nur Bahnhof davon verstehe.


Danke!!!

ThoWaBu
Beiträge: 449
Registriert: 16.01.2003 12:48:51
Wohnort: Butzbach
Kontaktdaten:

Beitrag von ThoWaBu » 18.07.2004 14:01:08

Warum Per Cron updaten ???

Wäre doch viel besser das runparts - verzeichnis vom pppd zu benutzen !?!?!?!?

Athlux
Beiträge: 543
Registriert: 16.05.2004 22:15:56

Beitrag von Athlux » 18.07.2004 14:51:24

losnoxos hat geschrieben:Hi
Das mit dem Skript wäre aber noch besser.
Danke!!!
Wieso wäre das script besser?

per ddclient hast du nur immer den gleichen hostnamen wenn geupdatet wird und du musst nicht auf deine hp gehen und immer nach der aktuellen ip schauen wenn du dich einloggen willst.
Gruß Athlux

Nicolas
Beiträge: 28
Registriert: 12.10.2003 14:32:47

Beitrag von Nicolas » 18.07.2004 15:13:54

Also ich benutze folgendes für den dyndns service von cjb.net:

---
#!/usr/bin/perl
# Updates IP Address with cjb.net
#
# This version does not uses $HOME/.cjbrc file for configuration
# you have to config your name/pass in this perl script!
#
# $Username = 'yourUsername';
# $Password = 'yourPassword';
#
# 2000.6.23 - Created by Steven Rutter <scribe@ziplip.com>
######################################################################

use IO::Socket;

my $Server = 'www.cjb.net';
my $ServerPort = 80;
my $ServerScript = "/cgi-bin/dynip.cgi";
my $Updated = 0;
my $Silent = 0;
my $Username = '<USERNAME>';
my $Password = '<PASSWORD>';

# Open tcp connection to cjb.net webserver
my $CJB = new IO::Socket::INET (
Proto=>'tcp',
PeerAddr=>$Server,
PeerPort=>$ServerPort,
Reuse=>1 ) or die "Could not connect to $Server : $!\n";

$CJB->autoflush(1);

# Sent update url
print $CJB "GET $ServerScript?username=$Username&password=$Password HTTP/1.0\r\n\r\n";

# Parse response - did we update?
while (<$CJB>) {
if (m/has been updated to point to .*?(\d+?\.\d+?\.\d+?\.\d+?)<.*/i) {
$Updated = $1; # What IP address did we update to?
} elsif (m/(The specified password is incorrect\.)/) {
die "$1 Set in ~/.cjbrc\n";
}
}

close ($CJB);

if (!$Silent) {
if ($Updated) {
print "CJB.NET IP address updated to $Updated\n";
} else {
print "CJB.NET IP Update failed.\n";
}
}

'Havin a good time'
---

dieses rufe ich dann mit einem kleinen script in /etc/ppp/ip-up.d auf auf die art haste den Eintrag immer schön aktuell ohne alle 5 minuten deine ip neu hochzuladen

Nicolas

ThoWaBu
Beiträge: 449
Registriert: 16.01.2003 12:48:51
Wohnort: Butzbach
Kontaktdaten:

Beitrag von ThoWaBu » 18.07.2004 15:15:37

Hey,

ich benutze ddclient selber.
(es ist eideutig die bessere wahl)

Ich meinte nur ->>>> wenn er das script benutzen muß/will,
soll er es doch bitte von pppd starten lassen.

Vorteil : nur beim verbindungsaufbau bekommt man eine neue IP, die Scripte unter ip-up.d werden dann jeweils ausgeführt und die seite wird aktualisiert.....

Per Cron ist eher ungünstig (ist ein wenig wie overkill),
was hat cron mit dem verbindungsaufbau zu tun :)


Edit : Da war wohl jemand der gleichen meinug/schnell

losnoxos
Beiträge: 38
Registriert: 12.07.2004 15:02:03
Kontaktdaten:

Beitrag von losnoxos » 18.07.2004 15:53:03

hi


der ddclient ist auf jeden fall die einfachste sache. Ich meine auch nur das man bei einem Skript nicht den Service von Dyndns nutzen muss. Keine Regitrierung usw.


Es läuft so und ich schätze ich werde es auch erstmal so lassen.

Antworten