Не уверен из вопроса, с какими частями адреса вы хотите быть случайным. Я предполагаю последние 2 байта.
Использование библиотеки python netaddr :
import random
from netaddr.ip import IPNetwork, IPAddress
random.seed()
ip_a = IPAddress('2001::cafe:0') + random.getrandbits(16)
ip_n = IPNetwork(ip_a)
ip_n.prefixlen = 64
print ip_a
print ip_n
Пример вывода:
2001::cafe:c935
2001::cafe:c935/64
Преимущество перед простым форматированием строки в том, что можно легко настроить начальный адрес, случайный бит len. Также у классов netaddr есть много полезных атрибутов, например, широковещательный адрес сети.