Gentoo Archives: gentoo-user-de

From: Werner Jansen <jansenw@××××××.edu>
To: gentoo-user-de@l.g.o
Subject: Re: [gentoo-user-de] [OT] Bash-Frage: Inkrementieren von MAC-Adressen für XEN-Instanzen?
Date: Sat, 23 Dec 2006 21:26:45
Message-Id: 20061223222334.440b0adf@tinydancer.phaoust.de
In Reply to: Re: [gentoo-user-de] [OT] Bash-Frage: Inkrementieren von MAC-Adressen für XEN-Instanzen? by Werner Jansen
1 Guten Abend!
2
3 On Fri, 22 Dec 2006 21:43:46 +0100
4 Werner Jansen <jansenw@××××××.edu> wrote:
5
6 > On Fri, 22 Dec 2006 13:10:28 +0100
7 > Dirk Göttel <dgoettel@×××××××.de> wrote:
8 >
9 > > Hi
10 >
11 > Guten Abend!
12 >
13 > >
14 > > > Als nächstes möchte ich die MAC-Adresse um eins "hochzählen",
15 > > > damit sie für den nächsten Lauf wieder die nächste verfügbare
16 > > > MAC-Adresse darstellt. Wie mache ich das, unter Berücksichtigung
17 > > > der Doppelpunkte und der Tatsache, daß es sich um Hex-Zahlen
18 > > > handelt, am geschicktesten?
19 >
20 > Ich werd mich mal spielen. Vielen Dank!
21
22 Genau das habe ich auch getan und bin auf folgendes Konstrukt
23 gekommen:
24
25 OLDMAC=0x$(< $BASEDIR/nextMAC)
26 NEWMAC=$(printf "%012x" $(( ${OLDMAC//:/} + 0x1 )) | sed -e \
27 "s/\(..\)\(..\)\(..\)\(..\)\(..\)\(..\)/\1:\2:\3:\4:\5:\6/" )
28
29 Was mir noch nicht so gut gefällt, ist das "Zusammenbauen" bzw.
30 Einfügen der Doppelpunkte. Kann ich den sed-Ausdruck irgendwie
31 kürzer fassen? Oder gar etwas ganz anderes machen?
32
33 Inhaltlich soll er folgendes tun: Aus einer MAC-Adresse, die in Hex
34 vorliegt, eine "richtige" inkl. der obligatorischen Trennung der
35 Bytes durch Doppelpunkte machen.
36
37 Viele Dank!
38
39 Viele Grüße,
40
41 Werner
42
43 --
44 gentoo-user-de@g.o mailing list

Replies

Subject Author
Re: [gentoo-user-de] [OT] Bash-Frage: Inkrementieren von MAC-Adressen für XEN-Instanzen? "D. Bolliger" <info@×××××××××.ch>