View Single Post
Old 08-09-2013, 10:55 AM   #394
knc1
Going Viral
knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.knc1 ought to be getting tired of karma fortunes by now.
 
knc1's Avatar
 
Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
Kindle unique MAC addresses

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.

Last edited by knc1; 08-09-2013 at 11:40 AM.
knc1 is offline   Reply With Quote