dynamische ip darstellen im script

Das Forum fĂĽr den Linux-Pinguin - auch andere Unix-Derivate (*BSD, (Open)Solaris, Apple's Darwin / MacOS X, ...) sind hier willkommen!
Forumsregeln
Das Forum fĂĽr den Linux-Pinguin - auch andere Unix-Derivate (*BSD, (Open)Solaris, Apple's Darwin / MacOS X, ...) sind hier willkommen!

RE: dynamische ip darstellen im script

Beitragvon Manuel Capellari » So 08 Jul, 2001 23:00

nochmal langsam ... es ist schon spät ich hab in letzter zeit wenig geschlafen ... also ... wie jetzt willst du bloss deine ip auslesen?
Manuel Capellari
 

RE: dynamische ip darstellen im script

Beitragvon Tom » So 08 Jul, 2001 23:08

in meinem scipt möchte ich meine ip als variable definieren können
aber da es sich um eine dynamische handelt hab ich keinen plan wie ich das
anstellen soll :-)

bsp fĂĽr statische ip

#---cut

STATIC_IP="xxxx.xxxx.xxxx.xxxx"
IPTABLES="/sbin/iptables"

irgend ein befehl
$IPTABLES -A INPUT -sonst was $STATIC_IP --sonst was
#---cut
Tom
 

RE: dynamische ip darstellen im script

Beitragvon Tom » So 08 Jul, 2001 23:10

ich weiss ich stell immer fragen so spät in der nacht :-)
sorry ich hoff ich hab das richtige forum getroffen *schwitz*
Tom
 

RE: dynamische ip darstellen im script

Beitragvon Manuel Capellari » So 08 Jul, 2001 23:19

hmmm, du 2 möglichkeiten

#!/bin/sh
PPPDEV="ppp0"
IPADDR=`/sbin/ifconfig ppp0 | { read; read -a A; echo ${A[1]#*:}; }`
echo $IPADDR


und dann die variable folgendermassen definieren:
IP_ADDR=`/pfad/zum/obigen/script`
^^^^^^^^^^^^^^^achtung das sind backticks!

das obige script is übrigens von http://www.gnustuff.com/index.php4?content=tipps> gute seite, ich kenn den typ der das geschrieben hat persönlich :-)

oder du saugst von selbiger seite eine datei namens xDSL.tar.gz das ist ein init-script fĂĽr redhat 7.1 indem die eine funktion zur abfrage der IP gleich miteingebaut ist ... sozusagen ein script dass die adsl-verbindung beim boot aufbaut und noch ein paar weitere features hat ... ist ĂĽbrigens von dem selben typen :-)

bye
Manuel Capellari
 

RE: dynamische ip darstellen im script

Beitragvon Tom » So 08 Jul, 2001 23:33

<HTML>danke fĂĽr deine schnelle antwort!!!!
so meine ip definieren zu können gibt mir ja mächtige möglichkeiten mittles netfilter filter-regeln zu setzten,... :-)

hmm sag mal diese zeichenfolge
(hab ich doch schon irgenwo mal im forum gesehen *g*):

>IPADDR=`/sbin/ifconfig ppp0 | { read; read -a A; echo ${A[1]#*:}; }`

was besagt die genau, bzw wie nennt sich diese script-sprache?
das man zw " und ' unterscheiden kann ist mir auch fremd.....
mit "backtricks" meinst du das abspeichern in einem separten file, oder andersrum??


thanx for the link, werd mich da mal umschauen, boot-up script hört sich interessant an obwohl ich es nicht brauchen werd :-)
werd das ganze mal morgen ausprobieren *bin scho gespannt*!!!
</HTML>
Tom
 

RE: dynamische ip darstellen im script

Beitragvon Manuel Capellari » So 08 Jul, 2001 23:53

<HTML>>>IPADDR=`/sbin/ifconfig ppp0 | { read; read -a A; echo ${A[1]#*:}; }`
>was besagt die genau
das besagt in etwa folgendes:

IPADDR=/sbin/config/ppp0
bei aufruf der variable fĂĽhre /sbin/ifconfig fĂĽr device ppp0 aus

| { read; read -a A; echo ${A[1]#*:}; }
ĂĽbergebe die ausgabe des vorhergehenden befehls an das kommando read suche nach dem ersten vorkommenden : und gebe den string rechts von : aus

>bzw wie nennt sich diese script-sprache?
/bin/sh oder auch shell

>das man zw " und ' unterscheiden kann ist mir auch fremd.....
naja, sind ja nun mal verschiedene zeichen, und dadurch haben sie verschiedene (wenn auch ähnliche) bedeutungen

>mit "backtricks" meinst du das abspeichern in einem separten file, oder andersrum??
nicht ganz, durch die backticks (übrigens SHIFT+DIE TASTE LINKS VON BACKSPACE) wird bewirkt dass der befehl, der sich darin befindet vor dem *eigentlichem* befehl ausgefürt wird ... is etwas blöd zu erklären

hier ein nettes beispiel :-)

finger `whoami` | tail -n1
^^^ finger ist ein normaler standardbefehl der auf jedem un*x system vorhanden sein sollte, whoami (novell lässt grüssen) ist der befehl um rauszufinden wie mein aktueller benutzername ist. whoami steht in backticks, wenn jetzt also finger `whoami` ausgeführt wird, dann wird vom system zuerst das durch die `` gekennzeichnete kommando ausgeführt und dessen ausgabe wird dann als argument für das eigentliche kommando (finger) verwendet

angenommen du bist grad als user 'pinguin' angemeldet:
finger `whoami` wäre in dem fall das selbe wie finger pinguin

das andere |tail -n1 hat mit den backticks eigentlich nix zu tun, aber fĂĽhr den befehl mal aus wie er oben steht, dann siehst du wie's mir manchmal geht :-)

ich hoffe das einigermassen verständlich erklärt zu haben falls nicht, und es dich trotzdem interssiert schick mir ne mail oder post hier oder wasauchimmer

gn8</HTML>
Manuel Capellari
 

RE: dynamische ip darstellen im script

Beitragvon Tom » Mo 09 Jul, 2001 00:03

hey es funktioniert, super!!

thanx , ich werd mir das mal morgen durch den kopf gehen lassen und
mal mĂĽtzen gehen *

mfg
tom
Tom
 

RE: dynamische ip darstellen im script

Beitragvon Tom » Mo 09 Jul, 2001 10:58

<HTML>guten morgen!!!

also das mit der dynamischen ip darstellen --> no problem, funktioniert ausgezeichnet *lol*

>das andere |tail -n1 hat mit den backticks eigentlich ....dann siehst du wie's mir manchmal geht :-)
mensch, ein syntax da wird einem richtig warm ums herz *g*

ich bin mir noch nicht so ganz sicher was du mit backtricks jetzt so genau meinst!!! bzw. bin noch zu verschlafen um das ganze zu kappieren

tja 'whoami', normal am prompt eingegeben --> wirft root aus, klar und wenn man halt als user angemeldet ist den username ..
bis jetzt alles no problem, --> nur der befehl

finger 'whoami' am prompt eingegeben ---> ergibt immer folgenden syntax
whoami: no such user

auch eingigermassen klar, da ja whoami seinen output verwendensoll um fingers argument zu erweitern. zb. wie eine option -a usw.
da kommt jetzt shift+links neben backspace ins spiel --> wie muss man das anwenden, nix kapische ???

ich hab den befehl so eingeben wie du es gesagt hast
finger 'whoami' (ohne tail halt *g*) dann die tastenkombination --> ergebniss war bis jetzt nur das mal 2x return drĂĽcken muss bis der befehl ausgefĂĽhrt wird....

mfg
tom
</HTML>
Tom
 

RE: dynamische ip darstellen im script

Beitragvon Manuel Capellari » Mo 09 Jul, 2001 11:44

das sind backticks ``
du kriegst sie indem du <SHIFT hällst> + <die Taste deren namen ich nicht weiss, die aber gleich links von backspace ist 2x drückst>

versuchs mal
Manuel Capellari
 

RE: dynamische ip darstellen im script

Beitragvon Tom » Mo 09 Jul, 2001 11:58

jaja ich denke ich hab das schon verstanden
nur das mit der tastenkombination funzt nicht ....

>du kriegst sie indem du +

????


mfg
tommy
Tom
 

RE: dynamische ip darstellen im script

Beitragvon Atahualpa » Di 10 Jul, 2001 23:18

<HTML>Tested with Debian 2.2 (Potato point release 3):



#!/bin/sh
#
# Firewall script written by me

echo "Starting firewall..."
/sbin/depmod -a
/sbin/modprobe ip_masq_ftp
/sbin/modprobe ip_masq_irc
/sbin/modprobe ip_masq_quake 26000,27000,27005,27015,27025,27030,27910,27960

# Enable IP Forwarding
echo "1" > /proc/sys/net/ipv4/ip_forward
# Because of dynamical assigned IP addresses
echo "1" > /proc/sys/net/ipv4/ip_dynaddr

# Get external interface
EXTINT=$(/sbin/ifconfig | grep 'ppp' | awk '{print $1}')
if [ "$EXTINT" == "" ]; then
echo "Error no ppp interface found"
exit 0
fi

# Extract IP address from extint
EXTIP=$(/sbin/ifconfig $EXTINT | grep 'inet addr' | awk '{print $3}' | sed -e 's/.*://')
if ["$EXTIP" == "" ]; then
echo "Error unable to determine IP address on "$EXTINT
exit 0
fi

echo "Firewall startet at "$(date) >> /var/log/connectlog
echo "External IP is: "$EXTIP >> /var/log/connectlog

echo "External Interface is: "$EXTINT
echo "External IP is: "$EXTIP

# Setting MASQ timeout
/sbin/ipchains -M -S 14400 10 160

echo " - parsing input rules"
...
echo " - parsing output rules"
...
echo " - parsing forward rules"
...
echo "done."
######## END OF FILE ########

#### /usr/local/bin/lastip ####
#!/bin/sh
# Gets last IP from /var/log/connectlog

grep IP /var/log/connectlog | awk '{print $4}' | tail --lines=1
######### END OF FILE #########


Ist ganz praktisch wenn man immer mitloggt wenn man Disconnected und wieder Connected.

Hier noch mein ADSL connect script:
########### /etc/init.d/adsl ############
#!/bin/sh
#
# blabla

test -x /usr/sbin/pptp || exit 0

case "$1" in
start)
echo "Connecting..."
echo "Connecting to Internet at "$(date) >> /var/log/connectlog
pptp alcatel logfile /var/log/pptp
sleep 10
/root/rc.firewall
;;
stop)
echo "Disconnecting..."
echo "Disconnecting from Internat at "$(date) >> /var/log/connectlog
killall pppd 1>/dev/null 2>/dev/null
sleep 3
killall pptp 1>/dev/null 2>/dev/null
killall -9 pppd
killall -9 pptp
rm /var/run/pptp/10.0.0.138
;;
restart)
$0 stop && $0 start
;;
*)
echo "Usage $0 {start|stop|restart}"
exit 1
esac
exit 0
############ END OF FILE ###########





mfg,
Ata</HTML>
Atahualpa
 

Vorherige

ZurĂĽck zu LINUX & UNIX-DERIVATE

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste