The unique USB networking MAC addresses plan.
Both ends of the cable **should** have a globally unique MAC address.
Code:
[root@kindle root]# cat /proc/usid ; echo
B0241604311703FA
Make a conservative estimate of the entropy in that:
Code:
B024 - 5 bits
1604311703 - 10 * 3 == 30 bits
FA - 2 * 4 == 8 bits
Total entropy: 43 bits, need at least 48 bits
Code:
[root@kindle root]# cat /proc/board_id ; echo
00A1607131130CYG
That is certainly another 3 bits worth.
Code:
[root@kindle root]# cat /proc/usid /proc/board_id ; echo
B0241604311703FA00A1607131130CYG
That should serve as the "Hello, I am: ...." name tag.
Now, not to disclose device private information, take a one-way hash sum:
Code:
[root@kindle root]# cat /proc/usid /proc/board_id | md5sum
af75bab85599c7cc2abb95a248da709b -
With a bit of string chopping:
af:75:ba
b85599c7cc2abb95a248
da:70:9b
Plus the prior post OUI, yields (on the Kindle):
Code:
g_ether dev_addr="cf:de:ad:af:75:ba" host_addr="cf:de:ad:da:70:9b"
And on the workstation end, stuff a rule file into the /etc/udev tree, like:
Code:
ACTION!="add", GOTO="net-end"
SUBSYSTEM!="net", GOTO="net-end"
# Kindle USB network interface name(s)
# My first paperwhite's persistent USBnetwork interface name:
ATTR{address}=="cf:de:ad:da:70:9b", KERNEL="usb*", NAME="kpw0"
# Others
LABEL="net_end"
Now, whatever network automation your workstation uses, it can configure for a specific Kindle by the interface name (kpw0) you assigned in your rules file.
Next -
Figure out how to automate that in the Kindle's firmware image.