Oracle
 sql >> Database >  >> RDS >> Oracle

Che lunghezza può avere un nome di interfaccia di rete?

Per quanto riguarda la parte specifica di Linux, nelle recenti versioni del kernel questa è definita da IFNAMSIZ essere 16 byte, quindi 15 byte visibili dall'utente (supponendo che includa un null finale). IFNAMSIZ viene utilizzato nella definizione del campo del nome di struct net_device qui .

Per testare empiricamente, puoi usare quanto segue per vedere che 16 byte falliscono e 15 byte funzionano:

# 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

(Supponendo che tu abbia ip dal pacchetto iproute2 installato, come è probabile su qualsiasi distribuzione Linux negli ultimi dieci anni circa.)