[MATCH]-ABSCHNITT-OPTIONEN¶
Eine Link-Datei wird als auf ein Gerät passend angesehen,
falls alle im Abschnitt »[Match]« festgelegten Treffer
erfüllt sind. Wenn eine Link-Datei keine gültigen
Einstellungen im Abschnitt »[Match]« enthält, dann wird
die Datei auf alle Geräte passen und systemd-udevd eine
Warnung ausgeben. Tipp: Um die Warnung zu vermeiden und klarer darzustellen,
dass auf alle Schnittstellen entsprochen werden sollen, fügen Sie
Folgendes hinzu:
Die folgenden Schlüssel werden akzeptiert:
MACAddress=
Eine Leerraum-getrennte Liste von Hardware-Adressen.
Verwendet vollständige Doppelpunkt-, Bindestrich- oder Punkt-begrenzte
hexadezimale Notation. Lesen Sie das nachfolgende Beispiel. Diese Option kann
mehr als einmal auftauchen, dann werden die Listen zusammengeführt.
Falls der Option die leere Zeichenkette zugewiesen wird, wird die vorher
definierte Liste der Hardware-Adressen zurückgesetzt.
Beispiel:
MACAddress=01:23:45:67:89:ab 00-11-22-33-44-55 AABB.CCDD.EEFF
PermanentMACAddress=
Eine Leerraum-getrennte Liste von dauerhaften Adressen
der Hardware. Während MACAddress= auf die aktuelle MAC-Adresse
des Gerätes passt, vergleicht dies die dauerhafte MAC-Adresse des
Gerätes, die sich von der aktuellen unterscheiden kann. Verwendet
vollständige Doppelpunkt-, Bindestrich- oder Punkt-begrenzte
hexadezimale Notation. Diese Option kann mehr als einmal auftauchen, dann
werden die Listen zusammengeführt. Falls der Option die leere
Zeichenkette zugewiesen wird, wird die vorher definierte Liste der
Hardware-Adressen zurückgesetzt.
Path=
Eine Leerraum-getrennte Liste von Shell-artigen Globs,
die auf dauerhafte Pfade, wie sie von der Udev-Eigenschaft ID_PATH
offengelegt wird, passen.
Driver=
Eine Leerraum-getrennte Liste von Shell-artigen Globs,
die auf den derzeit an das Gerät gebundenen Treiber passen, wie dieser
durch die Udev-Eigenschaft ID_NET_DRIVER des übergeordneten
Gerätes offengelegt wird oder, falls die nicht gesetzt ist, durch den
Treiber selbst, wie dies durch ethtool -i offengelegt wird. Wird der
Liste »!« vorangestellt, so wird der Test invertiert.
Type=
Eine Leerraum-getrennte Liste von Shell-artigen Globs,
die auf den Gerätetyp, wie er durch networkctl status
offengelegt wird, passen. Wird der Liste »!« vorangestellt, so
wird der Test invertiert.
Property=
Eine Leerraum-getrennte Liste von Udev-Eigenschaftsnamen
mit ihren Werten nach einem Gleichheitszeichen (»=«). Falls
mehrere Eigenschaften angegeben sind, werden sie mit UND verbunden. Wird der
Liste »!« vorangestellt, so wird der Test invertiert. Falls ein
Wert Leerraum enthält, dann schließen Sie das gesamte
Schlüssel-Wert-Paar bitte in englische Anführungszeichen ein.
Falls ein Wert Anführungszeichen enthält, dann maskieren Sie
bitte das Anführungszeichen mit »\«.
Beispiel: Falls eine .link-Datei
Property=ID_MODEL_ID=9999 "ID_VENDOR_FROM_DATABASE=Lieferantenname" "KEY=mit \"Zitat\""
enthält, dann passt eine .link-Datei nur, wenn eine
Schnittstelle alle drei obigen Eigenschaften enthält.
OriginalName=
Eine Leerraum-getrennte Liste von Shell-artigen Globs,
die auf den Gerätenamen, wie er durch die Udev-Eigenschaft
»INTERFACE« offengelegt wird, passen. Dies kann nicht zum
Vergleich mit Namen, die aus dem Anwendungsraum heraus bereits geändert
wurden, verwandt werden. Kernel-zugewiesene Namen können sich bei
Systemneustarts ändern, daher sollte beim Vergleich dieser Namen
Vorsicht walten gelassen werden.
Host=
Passt auf den Rechnernamen oder die Maschinenkennung des
Rechners. Siehe
ConditionHost= in
systemd.unit(5) für
Details. Wird »!« vorangestellt, so wird das Ergebnis negiert.
Wird eine leere Zeichenkette zugewiesen, dann wird der vorher zugewiesene Wert
zurückgesetzt.
Virtualization=
Prüft, ob das System in einer virtualisierten
Umgebung ausgeführt wird und testet optional, ob es eine bestimmte
Implementierung ist. Siehe
ConditionVirtualization= in
systemd.unit(5) für Details. Das Ergebnis wird negiert, wenn ein
Ausrufezeichen (»!«) vorangestellt wird. Falls eine leere
Zeichenkette zugewiesen wird, dann wird der vorher zugewiesene Wert
bereinigt.
KernelCommandLine=
Prüft, ob eine bestimmte Kernelbefehlzeilenoption
gesetzt ist. Siehe
ConditionKernelCommandLine= in
systemd.unit(5) für Details. Das Ergebnis wird negiert, wenn ein
Ausrufezeichen (»!«) vorangestellt wird. Falls eine leere
Zeichenkette zugewiesen wird, dann wird der vorher zugewiesene Wert
bereinigt.
KernelVersion=
Prüft, ob die Kernelversion (wie von
uname
-r gemeldet) auf einen bestimmten Ausdruck passt. Siehe
ConditionKernelVersion= in
systemd.unit(5) für Details.
Das Ergebnis wird negiert, wenn ein Ausrufezeichen (»!«)
vorangestellt wird. Falls eine leere Zeichenkette zugewiesen wird, dann wird
der vorher zugewiesene Wert bereinigt.
Architecture=
Prüft, ob das System auf einer bestimmten
Architektur läuft. Siehe
ConditionArchitecture= in
systemd.unit(5) für Details. Das Ergebnis wird negiert, wenn ein
Ausrufezeichen (»!«) vorangestellt wird. Falls eine leere
Zeichenkette zugewiesen wird, dann wird der vorher zugewiesene Wert
bereinigt.
[LINK]-ABSCHNITT-OPTIONEN¶
Der Abschnitt »[LINK]« akzeptiert die folgenden
Schlüssel:
Description=
Eine Beschreibung des Gerätes.
Alias=
Die Schnittstelleneigenschaft ifalias wird auf
diesen Wert gesetzt.
MACAddressPolicy=
Die Richtlinie, gemäß der die MAC-Adresse
gesetzt werden soll. Die verfügbaren Richtlinien sind:
persistent
Falls die Hardware eine dauerhafte MAC-Adresse hat, wie
das die meiste Hardware haben sollte, und diese vom Kernel verwandt wird, dann
passiert nichts. Andernfalls wird eine neue MAC-Adresse erstellt, für
die garantiert wird, dass sie nach jedem Systemstart auf der angegebenen
Maschine für das angegebene Gerät stets identisch, aber
ansonsten zufällig ist. Diese Funktionalität basiert auf der
Existenz der Eigenschaft ID_NET_NAME_* für den Link. Auf Hardware, auf
der diese Eigenschaft nicht gesetzt ist, wird die Erstellung einer dauerhaften
MAC-Adresse fehlschlagen.
random
Falls der Kernel eine zufällige MAC-Adresse
verwendet, passiert nichts. Andernfalls wird bei jedem Auftauchen des
Gerätes, typischerweise beim Systemstart, zufällig eine neue
MAC-Adresse erstellt. Auf jeden Fall wird die zufällige Adresse die
Bits »unicast« und »locally administered« gesetzt
haben.
none
Behält die vom Kernel zugewiesene MAC-Adresse.
Oder verwendet die in MACAddress= angegebene MAC-Adresse.
Die Zuweisung einer leeren Zeichenkette ist äquivalent zum
Setzen von »none«.
MACAddress=
Die zu verwendende Schnittstellen-MAC-Adresse. Damit
diese Einstellung wirksam wird, muss MACAddressPolicy= nicht gesetzt,
leer oder »none« sein.
NamePolicy=
Eine sortierte, durch Leerzeichen getrennte Liste von
Richtlinien, gemäß derer der Schnitstellenname gesetzt werden
soll.
NamePolicy= kann durch Angabe von
net.ifnames=0 auf der
Kernelbefehlszeile deaktiviert werden. Jeder dieser Richtlinien kann
fehlschlagen und die erste erfolgreiche wird verwandt. Der Name wird nicht
direkt gesetzt, sondern an Udev als Eigenschaft
ID_NET_NAME exportiert,
die standardmäßig von
udev(7) zum Setzen von
NAME
verwandt wird. Die verfügbaren Richtlinien sind:
kernel
Falls der Kernel angibt, dass der von ihm für ein
Gerät gesetzte Name vorhersagbar ist, dann erfolgt keine
Umbenennung.
database
Der Name wird basierend auf den Einträgen in der
Hardware-Datenbank von Udev mit dem Schlüssel
ID_NET_NAME_FROM_DATABASE gesetzt.
onboard
Der Name wird basierend auf dem durch die Firmware
für fest verbaute Geräte gelieferten Informationen, wie diese
durch die Udev-Eigenschaft
ID_NET_NAME_ONBOARD exportiert wird,
gesetzt. Siehe
systemd.net-naming-scheme(7).
slot
Der Name wird basierend auf dem durch die Firmware
für hotplug-fähige Geräte gelieferten Informationen, wie
diese durch die Udev-Eigenschaft
ID_NET_NAME_SLOT exportiert wird,
gesetzt. Siehe
systemd.net-naming-scheme(7).
path
Der Name wird basierend auf dem physischen Ort des
Gerätes, wie dieser durch die Udev-Eigenschaft
ID_NET_NAME_PATH
exportiert wird, gesetzt. Siehe
systemd.net-naming-scheme(7).
mac
Der Name wird basierend auf der dauerhaften MAC-Adresse
des Gerätes, wie diese durch die Udev-Eigenschaft
ID_NET_NAME_MAC exportiert wird, gesetzt. Siehe
systemd.net-naming-scheme(7).
keep
Falls das Gerät bereits im Anwendungsbereich einen
Namen erhielt (als Teil der Erstellung des Gerätes oder einer
Umbenennung), wird dieser beibehalten.
Name=
Den zu verwendenden Schnittstellennamen. Diese Option hat
eine niedrigere Priorität als
NamePolicy=. Damit also diese
Einstellung wirksam wird, muss
NamePolicy= entweder nicht gesetzt,
leer, deaktiviert sein oder alle Richtlinien, die dies konfigurieren,
müssen fehlschlagen. Schauen Sie sich auch das nachfolgende Beispiel
mit »Name=dmz0« an.
Beachten Sie, dass es gefährlich ist, einen Namen
anzugeben, den der Kernel für eine andere Schnittstelle verwendet
(beispielsweise »eth0«), da die Namenszuweisung durch Udev mit
der Zuweisung durch den Kernel in einen Wettlauf gelangen kann, und nur eine
Schnittstelle den Namen verwenden darf. Abhängig von der Reihenfolge
der Aktionen wird entweder Udev oder der Kernel gewinnen, wodurch der Name
unvorhersagbar wird. Es wird empfohlen, ein anderes Präfix zu
wählen, beispielsweise
»internal0«/»external0« oder
»lan0«/»lan1«/»lan3«.
AlternativeNamesPolicy=
Eine Leerzeichen-getrennte Liste von Richtlinien,
gemäß derer der alternative Name der Schnittstelle gesetzt
werden soll. Jede der Richtlinien kann fehlschlagen und alle erfolgreichen
Richtlinien werden verwandt. Die verfügbaren Richtlinien sind
»database«, »onboard«, »slot«,
»path« and »mac«. Falls der Kernel keine
alternativen Namen unterstützt, dann wird diese Einstellung
ignoriert.
AlternativeName=
Der zu verwendende alternative Schnittstellenname. Diese
Option kann mehrfach angegeben werden. Falls der Option die leere Zeichenkette
zugewiesen wird, wird die Liste zurückgesetzt und alle vorherigen
Zuweisungen sind wirkungslos. Falls der Kernel keine alternativen Namen
unterstützt, dann wird diese Einstellung ignoriert.
MTUBytes=
Die für das Gerät zu setzende maximale
Übertragungseinheit in Byte. Die normalen Endungen K, M, G werden als
Einheiten zur Basis 1024 verstanden.
BitsPerSecond=
Die für das Gerät zu setzende
Geschwindigkeit, der Wert wird auf die nächsten Mbit/s abgerundet. Die
normalen Endungen K, M, G werden als Einheiten zur Basis 1000
verstanden.
Duplex=
Der für das Gerät zu setzende Duplex-Modus.
Die akzeptierten Werte sind half und full.
AutoNegotiation=
Akzeptiert einen logischen Wert. Falls auf
»yes« gesetzt, wird die automatische Aushandlung von
Übertragungsparametern aktiviert. Bei der automatischen Aushandlung
entscheiden sich zwei verbundene Ethernet-Geräte über die
Übertragungsparameter, wie Geschwindigkeit, Duplex-Modus und
Flusssteuerung. Falls nicht gesetzt, wird die Vorgabe des Kernels verwandt.
Beachten Sie, dass die Geschwindigkeits- und Duplex-Einstellungen
nur lesbar sind, wenn automatische Aushandlung aktiviert ist. Falls dies
deaktiviert ist, sind die Geschwindigkeits- und Duplex-Einstellungen
schreibbar, falls der Treiber mehrere Link-Modi unterstützt.
WakeOnLan=
Die für das Gerät zu setzende
»Wake-on-LAN« (Aufwachen durch LAN-Aktivität) Richtlinie.
Die unterstützten Werte sind:
phy
Wacht bei PHY-Aktivität auf.
unicast
Wacht bei Unicast-Meldungen auf.
multicast
Wacht bei Multicast-Meldungen auf.
broadcast
Wacht bei Broadcast-Meldungen auf.
arp
Wacht bei ARP auf.
magic
Wacht bei Empfang eines magischen Pakets auf.
secureon
Aktiviert Secureon(™)-Passwort für
MagicPacket(™).
off
Wacht niemals auf.
Standardmäßig off.
Port=
Die Option »port« wird zur Auswahl des
Geräte-Ports verwandt. Die unterstützten Werte sind:
tp
Eine Ethernet-Schnittstelle mit Twisted-Pair-Kabel als
Medium.
aui
Attachment Unit Interface (AUI). Normalerweise in Hubs
verwandt.
bnc
Eine Ethernetschnittstelle, die BNC-Stecker und koaxiales
Kabel benutzt.
mii
Eine Ethernet-Schnittstelle, die Media Independent
Interface (MII) benutzt.
fibre
Eine Ethernet-Schnittstelle, die Glasfaser als Medium
benutzt.
Advertise=
Dies setzt die Ankündigungen der Geschwindigkeit
und Duplexmodi für die automatische Aushandlung. Dies impliziert
»AutoNegotiation=yes«. Die unterstützten Werte sind:
Tabelle 1. Unterstützte
Ankündigungswerte
Ankündigung |
Geschwindigkeit (Mbit/s) |
Duplexmodus |
10baset-half |
10 |
halb |
10baset-full |
10 |
voll |
100baset-half |
100 |
halb |
100baset-full |
100 |
voll |
1000baset-half |
1000 |
halb |
1000baset-full |
1000 |
voll |
10000baset-full |
10000 |
voll |
2500basex-full |
2500 |
voll |
1000basekx-full |
1000 |
voll |
10000basekx4-full |
10000 |
voll |
10000basekr-full |
10000 |
voll |
10000baser-fec |
10000 |
voll |
20000basemld2-full |
20000 |
voll |
20000basekr2-full |
20000 |
voll |
Standardmäßig ist dies nicht gesetzt, d.h. alle
möglichen Modi werden angekündigt. Diese Option kann mehr als
einmal angegeben werden, wodurch alle festgelegten Geschwindigkeiten und
Modi angekündigt werden. Wird dieser Option eine leere Zeichenkette
zugewiesen, dann wird die Liste zurückgesetzt und alle vorher
gesetzten Zuweisungen haben keine Auswirkung.
ReceiveChecksumOffload=
Akzeptiert einen logischen Wert. Falls auf wahr gesetzt,
wird die Abgabe der Prüfsummenprüfung von
Ingress-Netzwerkpaketen an die Hardware aktiviert. Falls nicht gesetzt, wird
die Vorgabe des Kernels verwandt.
TransmitChecksumOffload=
Akzeptiert einen logischen Wert. Falls auf wahr gesetzt,
wird die Abgabe der Prüfsummenprüfung von Egress-Netzwerkpaketen
an die Hardware aktiviert. Falls nicht gesetzt, wird die Vorgabe des Kernels
verwandt.
TCPSegmentationOffload=
Akzeptiert einen logischen Wert. Falls auf wahr gesetzt,
wird »TCP Segmentation Offload (TSO)« aktiviert. Falls nicht
gesetzt, wird die Vorgabe des Kernels verwandt.
TCP6SegmentationOffload=
Akzeptiert einen logischen Wert. Falls auf wahr gesetzt,
wird »TCP6 Segmentation Offload« (tx-tcp6-Segmentierung)
aktiviert. Falls nicht gesetzt, wird die Vorgabe des Kernels verwandt.
GenericSegmentationOffload=
Akzeptiert einen logischen Wert. Falls auf wahr gesetzt,
wird »Generic Segmentation Offload (GSO)« aktiviert. Falls nicht
gesetzt, wird die Vorgabe des Kernels verwandt.
GenericReceiveOffload=
Akzeptiert einen logischen Wert. Falls auf wahr gesetzt,
wird »Generic Receive Offload (GRO)« aktiviert. Falls nicht
gesetzt, wird die Vorgabe des Kernels verwandt.
LargeReceiveOffload=
Akzeptiert einen logischen Wert. Falls auf wahr gesetzt,
wird »Large Receive Offload (LRO)« aktiviert. Falls nicht
gesetzt, wird die Vorgabe des Kernels verwandt.
RxChannels=
Setzt die Anzahl an Empfangskanälen (eine Zahl
zwischen 1 und 4294967295).
TxChannels=
Setzt die Anzahl an Übertragungskanälen
(eine Zahl zwischen 1 und 4294967295).
OtherChannels=
Setzt die Anzahl der anderen Kanäle (eine Zahl
zwischen 1 und 4294967295).
CombinedChannels=
Setzt die Anzahl der kombiniert-gesetzten Kanäle
(eine Zahl zwischen 1 und 4294967295).
RxBufferSize=
Akzeptiert eine Ganzzahl. Legt die maximale Anzahl an
anhängenden Paketen in diesem NIC-Empfangspuffer fest. Falls nicht
gesetzt, wird die Vorgabe des Kernels verwandt.
RxMiniBufferSize=
Akzeptiert eine Ganzzahl. Legt die maximale Anzahl an
anhängenden Paketen in diesem NIC-Mini-Empfangspuffer fest. Falls nicht
gesetzt, wird die Vorgabe des Kernels verwandt.
RxJumboBufferSize=
Akzeptiert eine Ganzzahl. Legt die maximale Anzahl an
anhängenden Paketen in diesem NIC-Mega-Empfangspuffer fest. Falls nicht
gesetzt, wird die Vorgabe des Kernels verwandt.
TxBufferSize=
Akzeptiert eine Ganzzahl. Legt die maximale Anzahl an
anhängenden Paketen in diesem NIC-Sendepuffer fest. Falls nicht
gesetzt, wird die Vorgabe des Kernels verwandt.
RxFlowControl=
Akzeptiert einen logischen Wert. Wenn gesetzt, wird die
Empfangsflusssteuerung, auch bekannt als Ethernet-Empfangs-PAUSE-Meldung,
aktiviert (die Ethernet PAUSE-Frames erstellt und sendet). Falls nicht
gesetzt, wird die Vorgabe des Kernels verwandt.
TxFlowControl=
Akzeptiert einen logischen Wert. Wenn gesetzt, wird die
Sendeflusssteuerung, auch bekannt als Ethernet-Sende-PAUSE-Meldung, aktiviert
(die auf gesandte Ethernet PAUSE-Frames reagiert). Falls nicht gesetzt, wird
die Vorgabe des Kernels verwandt.
AutoNegotiationFlowControl=
Akzeptiert einen logischen Wert. Wenn gesetzt,
ermöglicht die automatische Aushandlung der Schnittstelle,
Zustandesankündigungen mit der verbundenen Gegenstelle auszutauschen,
so dass die zwei Geräte sich auf eine Ethernet-PAUSE-Konfiguration
einigen können. Falls nicht gesetzt, wird die Vorgabe des Kernels
verwandt.
BEISPIELE¶
Beispiel 1. /lib/systemd/network/99-default.link
Die mit Systemd ausgelieferte Link-Datei 99-default.link definiert
die Standardbenennungsrichtlinie für Links.
[Link]
NamePolicy=Pfad des eingebauten Slots in der Kernel-Datenbank
MACAddressPolicy=persistent
Beispiel 2. /etc/systemd/network/10-dmz.link
Dieses Beispiel weist den festen Namen »dmz0« der
Schnittstelle mit der MAC-Adresse 00:a0:de:63:7a:e6 zu:
[Match]
MACAddress=00:a0:de:63:7a:e6
[Link]
Name=dmz0
NamePolicy= ist nicht gesetzt, daher wird Name=
wirksam. Wir verwenden das »10-«-Präfix, um die Datei
früh in die Liste einzusortieren. Beachten Sie, dass es vor
»99-link« sein muss, d.h. sie muss ein numerisches
Präfix haben, um überhaupt Wirkung zu zeigen.
Beispiel 3. Fehlersuche in
NamePolicy=-Zuweisungen
$ sudo SYSTEMD_LOG_LEVEL=debug udevadm test-builtin net_setup_link /sys/class/net/hub0
…
Parsed configuration file /lib/systemd/network/99-default.link
Parsed configuration file /etc/systemd/network/10-eth0.link
ID_NET_DRIVER=cdc_ether
Config file /etc/systemd/network/10-eth0.link applies to device hub0
link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
hub0: Device has name_assign_type=4
Using default interface naming scheme 'v240'.
hub0: Policies didn't yield a name, using specified Name=hub0.
ID_NET_LINK_FILE=/etc/systemd/network/10-eth0.link
ID_NET_NAME=hub0
…
In diesem Fall gewinnt die explizite
Name=-Konfiguration.
sudo SYSTEMD_LOG_LEVEL=debug udevadm test-builtin net_setup_link /sys/class/net/enp0s31f6
…
Parsed configuration file /lib/systemd/network/99-default.link
Parsed configuration file /etc/systemd/network/10-eth0.link
Created link configuration context.
ID_NET_DRIVER=e1000e
Config file /lib/systemd/network/99-default.link applies to device enp0s31f6
link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
enp0s31f6: Device has name_assign_type=4
Using default interface naming scheme 'v240'.
enp0s31f6: Policy *keep*: keeping existing userspace name
enp0s31f6: Device has addr_assign_type=0
enp0s31f6: MAC on the device already matches policy *persistent*
ID_NET_LINK_FILE=/lib/systemd/network/99-default.link
…
In diesem Fall wurde die Schnittstelle bereits umbenannt, so dass
die als erste Option in 99-default.link festgelegte Richtlinie
»keep« bedeutet, dass der bestehende Name erhalten wird. Falls
keep entfernt würde oder falls es im Systemstart wäre,
bevor die Umbenennung passierte, könnten wir stattdessen Folgendes
erhalten:
enp0s31f6: Policy *path* yields "enp0s31f6".
enp0s31f6: Device has addr_assign_type=0
enp0s31f6: MAC on the device already matches policy *persistent*
ID_NET_LINK_FILE=/lib/systemd/network/99-default.link
ID_NET_NAME=enp0s31f6
…
Bitte beachten Sie, dass sich die Ausgabedetails ändern
können.
Beispiel 4. /etc/systemd/network/10-internet.link
Dieses Beispiel weist den festen Namen »internet0«
der Schnittstelle mit dem Gerätepfad
»pci-0000:00:1a.0-*« zu:
[Match]
Path=pci-0000:00:1a.0-*
[Link]
Name=internet0
Beispiel 5. /etc/systemd/network/25-wireless.link
Es folgt ein sehr komplexes Beispiel, das die Verwendung einer
großen Anzahl von [Match]- und [Link]-Einstellungen zeigt.
[Match]
MACAddress=12:34:56:78:9a:bc
Driver=brcmsmac
Path=pci-0000:02:00.0-*
Type=wlan
Virtualization=no
Host=mein_Laptop
Architecture=x86-64
[Link]
Name=wireless0
MTUBytes=1450
BitsPerSecond=10M
WakeOnLan=magic
MACAddress=cb:a9:87:65:43:21