Về phần dành riêng cho Linux, trong các phiên bản hạt nhân gần đây, điều này được định nghĩa bởi IFNAMSIZ
là 16 byte, vì vậy 15 byte người dùng có thể nhìn thấy (giả sử nó bao gồm một null ở cuối). IFNAMSIZ
được sử dụng để xác định trường tên của struct net_device tại đây
.
Để kiểm tra theo kinh nghiệm, bạn có thể sử dụng như sau để thấy rằng 16 byte không thành công và 15 byte hoạt động:
# 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
(Giả sử bạn có ip
từ gói iproute2 được cài đặt, như có thể xảy ra trên bất kỳ bản phân phối Linux nào trong thập kỷ trước hoặc lâu hơn.)