bootptab(5) bootptab(5)
NAME
bootptab - Internet-Bootstrap-Protokoll-Server-Datenbank
BESCHREIBUNG
bootptab ist die Datei, die die Konfigurationsdatenbank für den
Internet-Bootstrap-Protokoll-Server in.bootp(8) enthält. Ihr Format
ist dem von termcap ähnlich. Zur Darstellung von Rechnerparametern
werden zweistellige Marken benutzt, bei denen Groß- und Kleinschrei-
bung zu beachten sind. Die Parameterangaben werden durch Doppelpunkt
(:) getrennt und haben im allgemeinen folgendes Format:
" hostname:tg=value. . . :tg=value. . . :tg=value. . . ."
hostname ist der eigentliche Name eines BOOTP-Client-Rechners (oder
ein Dummy-Eintrag). tg ist die zweistellige Marke. Dummy-Einträge ent-
halten ungültige Rechnernamen ("." an der ersten Stelle) und dienen
dazu, Standardwerte bereitzustellen, die von anderen Einträgen mit
Hilfe von tc=.dummyentry benutzt werden können. Die meisten Marken
werden (wie oben) mit einem Gleichheitszeichen, gefolgt von einem Wert
angegeben. Einige können auch in Booleschem Format und ohne Wert auf-
treten (z. B. :tg:). Folgende Marken sind derzeit gültig:
bf Boot-Datei
bs Größe der Boot-Datei in Blöcken von 512 Oktets
cs Tagesdatum
df Dump-Datei
dn Domänenname
ds Liste mit Adressen von Domain-Name-Servern
ef Erweiterungsdatei
gw Liste mit Adressen von Gateways
ha Host-Hardware-Adresse
hd Home-Verzeichnis der Boot-Datei
hn Rechnernamen des Client an den Client schicken
ht Hardwaretyp des Rechners (siehe Assigned Numbers RFC)
im Liste mit Adressen von Impress-Servern
ip IP-Addresse des Rechners
lg Liste mit Adressen von Log-Servern
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
bootptab(5) bootptab(5)
lp Liste mit Adressen von LPR-Servern
ns Liste mit Adressen von Namen-Servern IEN-116
ra Adresse, an die die Antwort geschickt werden soll
rl Liste mit Adressen von RLP-Servern
rp Pfadname, der als Root-Dateisystem verwendet werden soll
sa Adresse des TFTP-Servers, den der Client benutzen sollte
sm Subnetzmaske des Rechners
sw Adresse des Swap-Servers
tc Tabellenfortführung (zeigt auf ähnlichen Standard-Rechnereintrag)
td von sicheren TFTP-Servern benutztes Root-Verzeichnis
to Zeitabstand zu UTC in Sekunden
ts Liste mit Adressen von Zeit-Servern
vm Auswahlkriterium Herstellerinformation
Es gibt außerdem die generische Marke Tn. n steht für die Markennummer
im Herstellerfeld von RFC 1084. Es wird auf diese Weise möglich, von
späteren Erweiterungen von RFC 1084 Gebrauch zu machen, ohne in.bootp
gleich verändern zu müssen. Generische Daten können entweder als hexa-
dezimaler Zahlenstrom oder als Folge von ASCII-Zeichen in Anführungs-
zeichen dargestellt werden. Die Länge dieser Daten wird automatisch
bestimmt und in die entsprechenden Felder der RFC-1084-gemäßen BOOTP-
Antwort eingefügt.
Die Marken cs, ds, gw, im, lg, lp, ns, rl und ts können eine Liste
von durch Leerzeichen getrennte IP-Adressen enthalten.
Die Marken ip, ra, sa, sw und sm enthalten alle nur eine einzige IP-
Adresse. Alle IP-Adressen werden gemäß der Standardschreibweise von
Internet mit Punkten angegeben und können aus dezimalen, oktalen oder
hexadezimalen Zahlen bestehen (oktale Zahlen beginnen mit 0, hexadezi-
male mit 0x oder 0X). Alle IP-Adressen können auch alternativ als
Rechnername (hostname) angegeben werden. Damit wird in.bootp veran-
laßt, die IP-Adresse für den Rechnernamen mit Hilfe von
gethostbyname(3N) zu ermitteln. Wird die Marke ip weggelassen, benutzt
in.bootp bei der Ermittlung der IP-Adresse den Eintragsnamen als Rech-
nernamen. (Dummy-Einträge benutzen einen ungültigen Rechnernamen, um
zu verhindern, daß in.bootp versucht, die Adresse zu ermitteln.)
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
bootptab(5) bootptab(5)
Die Marke ht gibt den Hardware-Typ als Dezimalzahl oder als oktale
oder hexadezimale Zahl an. Außerdem sind folgende symbolische Namen
möglich: ethernet oder ether für 10Mb Ethernet, ethernet3 oder ether3
für experimentelles 3Mb Ethernet, ieee802, tr oder token-ring für IEEE
802-Netze, pronet für Proteon ProNET Token Ring oder chaos, arcnet und
ax.25 für Chaos, ARCNET- und AX.25 Amateur Radio-Netze. Die Marke ha
gibt eine Hardware-Adresse als Rechnernamen oder in numerischer Form
an. Bei der numerischen Angabe ist nur die hexadezimale Form erlaubt.
Aus Gründen der Lesbarkeit können beliebig Punkte oder ein vorange-
stelltes 0x mitangegeben werden. Der Marke ha muß die Marke ht voran-
gestellt werden (entweder implizit oder explizit; siehe tc unten).
Wird die Hardware-Adresse weggelassen und als Typ entweder "ethernet"
oder "ieee802" angegeben, versucht in.bootp die Hardware-Adresse mit
Hilfe von etherhton() zu ermitteln.
Rechnername, Home-Verzeichnis und Boot-Datei bestehen aus ASCII-
Zeichenfolgen, die in doppelte Anführungszeichen (") eingeschlossen
werden können. Die Anforderungen des Client-Rechners und die Werte in
den Marken hd und bf bestimmen, womit der Server das Feld für die
Boot-Datei in dem BOOTP-Antwortpaket füllt.
Gibt der Client-Rechner einen absoluten Pfadnamen an und die entspre-
chende Datei existiert auf der Server-Maschine, wird derselbe Pfadname
im Antwortpaket zurückgegeben. Wird die Datei nicht gefunden, wird die
Anforderung nicht weiter bearbeitet. Es wird keine Antwort geschickt.
Gibt der Client-Rechner einen relative Pfadnamen an, wird der volle
Pfadname gebildet, indem der Wert aus der Marke hd vorangestellt wird.
Dieser wird dann auf Existenz geprüft. Enthält die Konfigurationsdatei
nicht die Marke hd oder existiert die sich ergebende Boot-Datei nicht,
wird die Anforderung nicht weiter bearbeitet.
Client-Rechner, die null für Boot-Dateien angeben, erhalten immer eine
Antwort vom Server. Die genaue Antwort hängt von den Werten in den
Marken hd und bf ab. Wenn bf einen absoluten Pfadnamen enthält und die
entsprechende Datei existiert, wird der Pfadname im Antwortpaket
zurückgegeben. Wenn die Marken hd und bf zusammen eine zugreifbare
Datei angeben, wird dieser Dateiname zurückgegeben. Kann der vollstän-
dige Dateiname nicht festgestellt oder die Datei nicht gefunden wer-
den, enthält die Antwort 0 im Feld der Boot-Datei.
Vorhandensein einer Datei bedeutet in allen diesen Fällen, daß allge-
meiner Lesezugriff besteht, da aufgrund von tftpd(1M) der Datei-
Transfer möglich sein muß. Außerdem werden alle Dateinamen erst als
filename.hostname und dann als filename ausprobiert. Dadurch entstehen
individuelle Boot-Dateien pro Rechner.
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98
bootptab(5) bootptab(5)
Einige neue Versionen von tftpd bieten ein Sicherheitsverfahren, durch
das man das Root-Verzeichnis mit dem Systemausruf chroot(2) ändern
kann. Mit der Marke td kann man in.bootp über dieses von tftpd
benutzte Root-Verzeichnis informieren. (Alternativ kann auch die
Option -c chdir-path des Kommandos in.bootp benutzt werden.) Die
Angabe in der Marke hd ist eigentlich relativ zum Root-Verzeichnis,
das in der Marke td angegeben ist. Wenn z. B. der reale, absolute Pfad
zu Ihrer BOOTP-Client-Boot-Datei /tftpboot/bootfiles/bootimage ist und
tftpd /tftpboot als sein sicheres Verzeichnis benutzt, dann geben Sie
in bootptab folgendes an:
:td=/tftpboot:hd=/bootfiles:bf=bootimage:
Wenn sich Ihre Boot-Dateien direkt in /tftpboot befinden, geben Sie
an:
:td=/tftpboot:hd=/:bf=bootimage:
Die Marke sa können Sie benutzen, um die IP-Adresse des TFTP-Servers
anzugeben, der vom Client-Rechner benutzt werden soll. Wird die Marke
weggelassen, gibt in.bootp als Server den Rechner an, dem in.bootp
läuft.
Die Marke to steuert die Zeitverschiebung. Mit ihr kann man mittels
einer dezimalen Ganzzahl mit Vorzeichen den Abstand der Zeitzone des
Client zu UTC in Sekunden angeben. Außerdem ist das Schlüsselwort auto
möglich, wodurch automatisch die Verschiebung des Servers angenommen
wird. Wird to in einem Booleschen Format angegeben, ist die Wirkung
wie bei auto.
Die Marke bs gibt die Größe der Boot-Datei an. Sie kann entweder als
dezimale, oktale oder hexadezimale Ganzzahlen angegeben werden, die
sich auf Blockeinheiten von 512 Oktets bezieht. Außerdem kann auto
angegeben werden. Das veranlaßt den Server, für jede Anforderung auto-
matisch die Größe der Boot-Datei zu berechnen. Wie bei der Zeitver-
schiebung hat eine Angabe in Booleschem Format dieselbe Wirkung wie
auto.
Die Marke vm kann mit einem der folgenden Schlüsselwörter angegeben
werden: auto (Herstellerinformation hängt von der Anforderung des
Client ab), rfc1048 oder rfc1084 (erzwingt eine Anwort gemäß RFC 1084)
oder cmu (erzwingt eine Antwort gemäß CMU-Format).
Mit der Marke hn kann man nur eine Boolesche Operation ausführen. Ein
Gleichheitszeichen mit Wert darf hier nicht angegeben werden. Die
Marke dient dazu, den Rechnernamen an Client-Rechner von RFC 1084 zu
schicken. in.bootp versucht, den ganzen Namen, wie er in der Konfigu-
rationsdatei angegeben ist, zu schicken. Wenn der Name so nicht in das
Antwortpaket paßt, wird er auf den Host-Teil verkürzt (bis zum ersten
Punkt, wenn vorhanden) und der Versuch wiederholt. Es wird auf keinen
Fall ein bliebig abgeschnittener Rechnername geschickt. (Wenn keine
sinnvolle Abkürzung möglich ist, wird nichts geschickt.)
Seite 4 Reliant UNIX 5.44 Gedruckt 11/98
bootptab(5) bootptab(5)
Oft gibt es einige Werte, die für mehrere Rechnereinträge gleich sind
(z. B. Namen-Server). Sie brauchen nicht wiederholt angegeben zu wer-
den. Man kann sie statt dessen für einen Rechnereintrag vollständig
auflisten und sie dann mit der Marke tc (Tabellenfortführung) den
anderen zur Verfügung stellen. Dieser Standardeintrag kann auch ein
Dummy-Rechner sein, der nicht wirklich existiert und nie BOOTP-
Anforderungen schickt. Diese Funktion ist ähnlich wie die Funktion tc
bei termcap für ähnliche Terminals. Beachten Sie, daß es bei in.bootp
möglich ist, die Marke tc an beliebiger Stelle im Rechnereintrag ein-
zufügen, während es bei termcap die letzte Marke sein muß. Informa-
tion, die explizit für einen Rechner angegeben wird, wird dabei vor-
rangig vor der implizit in der Marke tc angegebenen Information behan-
delt; die Stellung innerhalb des Eintrags spielt dafür keine Rolle.
Der Wert für die Marke tc kann der Rechnername oder die IP-Adresse
jedes zuvor in der Konfigurationsdatei gemachten Rechnereintrages
sein.
Es ist manchmal notwendig, eine Marke, die durch die Marke tc mitauf-
genommen wurde, zu löschen. Dazu gibt man den Namen der Marke, gefolgt
von einem At-Zeichen (tag@) an. Wie bei termcap wird die Wirkung der
Marke unterbunden. Um z. B. die Angabe eines IEN-116-Servers völlig
auszulöschen, kann man an geeigneter Stelle im Konfigurationseintrag
":ns@:" angeben. Wenn eine Marke mit @ entfernt wurde, kann man sie
mit tc wieder setzen.
Zeilen der Konfigurationsdatei, die leer sind, werden ignoriert ebenso
wie Zeilen, die mit # anfangen. Rechnereinträge werden als neue Zeilen
vom Vorgänger abgesetzt. Ein Rechnereintrag kann sich über mehrere
Zeilen erstrecken, solange die Zeilen mit einem Gegenschrägstrich (\)
enden. Die Zeilenlänge darf sich über mehr als 80 Zeichen erstrecken.
Die Reihenfolge der Marken ist beliebig, bis auf folgende Ausnahmen:
Der Rechnername muß das erste Element in dem Eintrag sein, und der
Hardware-Typ muß vor der Hardware-Adresse angegeben werden.
Seite 5 Reliant UNIX 5.44 Gedruckt 11/98
bootptab(5) bootptab(5)
Es folgt ein Beispiel für eine /etc/bootptab-Datei:
.default:\
:hd=/usr/boot:bf=null:\
:ds=netserver, lancaster:\
:ns=pcs2, pcs1:\
:ts=pcs2, pcs1:\
:sm=255.255.255.0:\
:gw=gw.cs.cmu.edu:\
:hn:to=-18000:
carnegie:ht=6:ha=7FF8100000AF:tc=.default:
baldwin:ht=1:ha=0800200159C3:tc=.default:
wylie:ht=1:ha=00DD00CADF00:tc=.default:
arnold:ht=1:ha=0800200102AD:tc=.default:
bairdford:ht=1:ha=08002B02A2F9:tc=.default:
bakerstown:ht=1:ha=08002B0287C8:tc=.default:
# Besonderer Domänen-Namen-Server und Marken für nächsten
# Rechner
butlerjct:ha=08002001560D:ds=128.2.13.42:\
:T37=0x12345927AD3BCF:\
:T99="Special ASCII string":\
:tc=.default:
gastonville:ht=6:ha=7FFF81000A47:tc=.default:
hahntown:ht=6:ha=7FFF81000434:tc=.default:
hickman:ht=6:ha=7FFF810001BA:tc=.default:
lowber:ht=1:ha=00DD00CAF000:tc=.default:
mtoliver:ht=1:ha=00DD00FE1600:tc=.default:
DATEIEN
/etc/inet/bootptab
SIEHE AUCH
tftpd(1M), bootp(8).
DARPA Internet Request For Comments RFC951, RFC1048, RFC1084, Assigned
Numbers.
Seite 6 Reliant UNIX 5.44 Gedruckt 11/98