Wat betreft het Linux-specifieke deel hiervan, wordt dit in recente kernelversies gedefinieerd door IFNAMSIZ
16 bytes zijn, dus 15 voor de gebruiker zichtbare bytes (ervan uitgaande dat het een volgnul bevat). IFNAMSIZ
wordt gebruikt bij het definiëren van het naamveld van struct net_device hier
.
Om empirisch te testen, kunt u het volgende gebruiken om te zien dat 16 bytes niet werken en 15 bytes werken:
# CLEAN SLATE
root# ip link ls dev 123456789012345
Device "123456789012345" does not exist.
root# ip link ls dev 1234567890123456
Device "1234567890123456" does not exist.
# FAIL
root# ip link add dev 1234567890123456 type dummy
Error: argument "1234567890123456" is wrong: "name" too long
root# ip link ls dev 1234567890123456
Device "1234567890123456" does not exist.
# PASS
root# ip link add dev 123456789012345 type dummy
root# ip link ls dev 123456789012345
40: 123456789012345: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN mode DEFAULT group default
link/ether ... brd ff:ff:ff:ff:ff:ff
# CLEAN UP
root# ip link del dev 123456789012345
(Ervan uitgaande dat je ip
hebt van het geïnstalleerde iproute2-pakket, zoals waarschijnlijk op elke Linux-distributie van de afgelopen tien jaar.)