2
0
mirror of https://github.com/xcat2/confluent.git synced 2024-11-25 02:52:07 +00:00
confluent/misc/mac2lla.py

13 lines
470 B
Python
Raw Permalink Normal View History

2022-04-18 14:42:35 +00:00
def mac_to_lladdr(mac):
macpieces = []
mac = mac.replace('-', ':')
for byte in mac.split(':'):
macpieces.append(int(byte, 16))
macpieces[0] = macpieces[0] ^ 2
llapieces = [(macpieces[0] << 8) + macpieces[1], (macpieces[2] << 8) + 0xff, 0xfe00 + macpieces[3], (macpieces[4] << 8) + macpieces[5]]
return 'fe80::{:x}:{:x}:{:x}:{:x}'.format(*llapieces)
if __name__ == '__main__':
import sys
print(mac_to_lladdr(sys.argv[1]))