OpenBSD Implementation DNS Query ID Randomisation Constraints 16 bits Must not repeat too soon to avoid collisions Linear Congruential Generator Seeded from arc4random() 15 bits pseudo-random Rekeys after 180 seconds or ~12,000 id's Toggle most significant bit to avoid reuse